12 ms·
Show HN: A platform for remote piano lessons based on the Web MIDI API
I'm building a video conferencing app designed to facilitate better remote piano lessons. My hope is to solve a lot of the challenges piano tutors and new students deal with when taking lessons through Skype/Zoom. It leverages WebRTC's data transmission to send media, MIDI state, and (eventually) send sheet music files and other musical data.
I'm surprised with how well the MVP has worked and would love to hear any feedback or suggestions!
- The28thDuck 3y agoWebsite is a bit jumbled on mobile, just a heads up.
- keycon 3y agoAh, appreciate it. I totally spaced on cleaning up the landing page for mobile!
- The28thDuck 3y ago^is this a bad response to someone who’s showing something off?
- rafamvc 3y agothat is awesome. Thank you! I been wanting something like this to take lessons for a while.
- keycon 3y agoAppreciate it! I'd like to hear how it works out for you! I'm reachable at jeremy@keyboardconnect.com
- bapakuhilang145 3y ago[flagged]
- Donaldrich 3y ago[flagged]
- yedava 3y agoDo you have any recordings of how a digital piano sounds to the other side - like if a teacher wants to demonstrate how to play dynamics?
- keycon 3y agoI'll get to work on a video demo! The app has a sort of piano VSTI running in the browser, so what you hear will be reliably reproduced on the peer side.
- rawrawrawrr 3y agoDid you write your own VSTI, or what did you use?
- keycon 3y agoWrote it myself. It's a javascript object that loads in all the piano sounds and manages the audiocontext. When the MIDI note/velocity/pedal state updates, a method on the object is called to play the sound.
- praash 3y agoMost (if not all) digital keyboards also support receiving MIDI which will be played by the piano's own sound engine! This will probably require assigning the received MIDI to a different channel than 0 to allow simultaneous play without conflicting note offs and sustains.
- keycon 3y agoAh, great point--I'm adding that to my to-do as another setup option for users. Thank you!
- montag 3y agoThis looks pretty cool! Would love to see a quick YouTube demo of the product in action. What's the biggest benefit of the MIDI capability, in practice?
- keycon 3y agoThank you! I'll definitely put together a video demo before requiring logging in. Showing live MIDI during a call sidesteps the challenge of showing and recording both yourself playing and what notes you're playing. Also, because MIDI is represented digitally, we'll be able to do things like chord/scale detection, recording and playing back, and showing live playing on sheet music.
- Nifty3929 3y agoI'd love to give some feedback both as a teacher and a student. But I don't see a way on your website to just see what it really does and how it works, beyond just those couple of small animations. At least a YouTube demo video, or ideally direct access to a real demo interface would be more helpful. I thought Getting Started might help, but that forced me into a sign-up flow that I don't want to invest in without more information about the outcome.
- keycon 3y agoThank you for the response. You're right, it didn't sit well with me putting a required log in between the landing page and the app. So I'll work on a more comprehensive video demo and make it accessible before signing up.
- DrawTR 3y agoAre the demo videos supposed to show the MIDI piano lighting up at the same time as the video performance? Not seeing that on my side if so
- keycon 3y agoYes, it's supposed to, (as it does in the app) but I was a bit lazy hacking together that "demo" from stock footage and didn't animate the keys.
- bapakuhilang145 3y ago[flagged]
- bapakuhilang145 3y ago[flagged]
- Ferret7446 3y agoFrom what I've heard MIDI controllers are not good for learning piano. You really want weighted keys and a full 88 keys otherwise you won't learn the right habits or build finger strength. (I learned on a physical piano in person, so I can't speak personally about learning on a MIDI controller, but it sounds plausible to me.)
- brudgers 3y agoMost people don't have a place to put a Steinway, but you can put an MPK Mini MKIII and a laptop in a backpack. And what comes out of the speakers is the only thing that matters. Playing the piano means different things to different people.
- ghostpepper 3y agoPlaying the piano and playing music with a 25-key mini keyboard controller are both laudable goals but that doesn't mean they're the same thing.
- brudgers 3y agoIt doesn’t mean that people don’t mean, playing a 25 key mini keyboard when they want to learn to play the piano, either. It just demonstrates the way in which people gatekeep music.
- ghostpepper 3y agoThere's a middle ground between the MPK mini and a steinway. You can get a used Yamaha P-series keyboard with 88 full-size, fully-weighted keys for a few hundred dollars. It won't fit in a backpack but it also won't teach you bad habits _if your goal is to learn to play the acoustic piano_. If your goal is to learn music theory or produce music or anything other than learn to play piano, the mpk is fine. No gatekeeping here.
- williamcotton 3y agoYou can get MIDI keyboard with 88 weighted keys. Also, there are plenty of electric pianos, like the Wurlitzer or Rhodes, that have leas than 88 and only semi-weighted keys.
- hansonpeter 3y ago[dead]
- udtravdu 3y agoCongrats on shipping! I would suggest recording the videos from the player's point of view. It adds a layer of abstraction to have to reverse the image when reading it as a student. Unless you are also encouraging your students to learn to read a pianist from an audience's perspective.
- keycon 3y agoGood point! Thank you
- JoshTriplett 3y agoThis sounds incredible, and I'd love to try it! A few immediate thoughts: As a student, I don't care about a two-sided platform (which is what it looks like you're trying to build). I want to sign up for vetted piano lessons through your site, and purchase a USB midi adapter that you recommend. As a short-term MVP, perhaps point people to a known-working adapter on a site with an affiliate program. Long-term you might consider finding a company willing to sell one white-label and put your logo and website on it, but that's a lot less important than everything else you're building so put it off for a while. Also, for the first handful of lessons and for subsequent practice, it'd be awesome if you had automated, pre-recorded lessons available, to get the basics down, or to train things like reading sheet music at speed.
- semi-extrinsic 3y agoRegarding "USB MIDI adapter": Actually USB MIDI is the lowest common denominator for MIDI keyboards. If you pick up any used MIDI keyboard less than 10 years old, it will have USB. Something in the $40-$60 range on Craigslist is perfect. The big choice for the beginner (or anyone) is how many keys do you want, and have space for? It goes all the way from 25 keys up to 88. Then going up in price, models will start to include (in random order) old 5-pin MIDI in and out, velocity sensitive keys, (semi-)weighted keys, aftertouch, inputs for foot controllers, pads/knobs/faders for controlling a DAW, built-in sequencers, external sync in/out, CV and gate outputs for interfacing with modular gear, etc..
- jacquesm 3y agoIf you are at all serious about piano I would recommend getting an 88 key keyboard with half decent keys. Anything less you'll outgrow in the first few months and you will be learning to properly orient yourself. On a smaller keyboard you're going to mess up your 'South Sight' and your 'North Sight' because you will train yourself to orient on the edges of your smaller keyboard. As soon as you sit down behind a proper piano you'll be confused. Good keyboards aren't expensive any more, the simplest Yamaha, Casio and Roland that qualify for serious study are all around $500 if you shop around a bit and if you go for second hand can be had for half that. You'll very quickly match that in lesson costs so if you can afford the one you probably can afford the other. You don't need sequencers, aftertouch, built in DAWs or controlling an external one etc, those are not aimed at piano students. Can be fun but complete luxury.
- castles 3y agoWow, sounds like a fun/cool project. Wish you great success!
- keycon 3y agoAppreciate it castles, thank you!
- digger495 3y agoI am a student -- how do I find an instructor who uses your platform? Does it work on an iPad?
- keycon 3y agoIt's meant for laptop or desktop at this time, but I will 100% look into adapting it for an iPad. I think the challenge might be connecting a midi device to it though. Keyboard Connect is still in an early stage, so we don't support tutors advertising on the platform yet. Thank you for these suggestions!
- digger495 3y agoMIDI on the ipad is super easy, barely an inconvenience. The main issue is if mobile Safari will work with it. I'm happy to help test if you need a hand.
- weinzierl 3y agoWhen the pandemic hit we needed a quick solution for my daughter's piano lessons. I built a setup with OBS, Synthesia and an old Logitec web cam I had lying around (these were impossible to get new at the time). I transmitted a frontal video of the player from the laptop cam, a top-down view of the center section of the keyboard (the cam angle was not wide enough for the whole), and the virtual keyboard from Synthesia. I had three different layouts of these elements in OBS, that could be switched by pressing the space bar. On the audio side I sent a mix from the laptop mic for voice plus the direct audio from the e-piano. Served us well for the time. One constraint that improved solutions probably don't have now was that teachers could not decide on a video conferencing software, so my setup-up needed to be independent. This almost made OBS a no-brainer, because of the virtual cam support.
- tofflos 3y agoCould you expand a bit on the challenges with Skype/Zoom?
- keycon 3y agoPiano tutors who want to give an engaging remote lesson will want the ability to show themselves playing as well as what notes they're playing. This requires expensive equipment and technical knowledge to set up using Skype/Zoom. I give a few typical setups on the landing page and compare it to Keyboard Connect, which requires just a MIDI controller and webcam. This represents a challenge for tutors and could be discouraging for new pianists who just want to try lessons without committing to buying a digital/acoustic piano are supporting AV equipment. Also, I'll add modules to Keyboard Connect that support tasks tutors/students would normally have to organize on their own (lesson planning, file sharing, practice tools)
- phireal 3y agoThere's also https://plugandplink.com/ https://plugandplink.com/, which includes a hardware component to help the person learning (lights on the snake). The app also includes preprepared videos and lessons (scales, arpeggios etc.) which interact with the hardware component. My son's been using it with a tutor remotely and it's been working great! Not only that, but he can use the app and the snake to self-guide his practise during the rest of the week.
- sss111 3y agothis is cool and all but doesn't have a full sized piano version..? And $125?! (although probably because its 1st gen)
- phireal 3y agoYeah, I think for learning, the 4(?) octaves is probably sufficient. And cost is probably due to first gen, yeah. Plus, hardware development is pricey, I think.
- Bewelge 3y agoThis is such a cool concept, congrats on shipping! I've been developing a webMIDI app myself for the past couple of years [0] and adding a multiplayer feature is something I've been eyeing for a while. May I ask how good the latency is? Some feedback on the landing page: - As others already pointed out, a video example showing the app would be really helpful. - I think allowing visitors to try out the piano and only prompting to login when trying to access the remote features would work best - All those buttons that are clickable/selectable but don't do anything when clicked were a little confusing. On the app: - Connecting the keyboard worked flawlessly (and without any permission prompt). But I'd add some indication that a MIDI device is connected - Pressing the keys using my mouse doesn't produce any sounds - Pressing keys on my MIDI keyboard (Yamaha P120) will cause the keys to be selected indefinitely, so I can only ever press them once. Somehow the noteOff events don't seem to be getting registered. Make sure you also register noteOn events with velocity = 0 as a noteOff event (although I don't believe that that's the issue here) and I would suggest calling noteOff yourself if you register a noteOn event for a note that's already playing. That way you can prevent keys from getting stuck. - I wouldn't hide keys automatically based on screen size. It does look better but imagine someone trying to play this on a tablet/phone where they can't change the scaling Again, really cool concept and good luck with further development! Feel free to reach out if you want any help :-) [0] app.midiano.com
- jacquesm 3y agoOh nice, another HN'er that's on the same wavelength :) I'll give your app a spin and send you some feedback, meanwhile, maybe there are useful ideas in pianojacq.com that you can adopt.
- DonHopkins 3y agoYou're both on the same midi channel too, so you'll play well together, and should compare notes and velocities, and send each other your running status. (Where's my drum machine when I need a badoom psssssh?)
- jacquesm 3y ago
- RockRobotRock 3y agoLove the design.
- keycon 3y agoThank you! :D
- throwuwu 3y agoAmazing idea! I had no clue web MIDI existed.
- keycon 3y agoThanks! Oh yeah I encourage you to mess around with it, especially if you have any interest in music production/education
- qwertox 3y agoOne thing I'd change from a marketing perspective would be that in the video loop the tutor would also have a keyboard at their hands. Because usually it is like this, that if the tutor wants you to hear your mistakes, it plays the improved part which you had wrong by putting extra emphasis on the correct part while explaining it. The video loop, as it currently is, makes if feel YouTube-y or a formal, business-like Zoom call, while the really special thing of this very interesting platform is the connectedness of tutor and student. Awesome platform!
- keycon 3y agoGreat suggestion! Thank you very much. I'll definitely keep this in mind when I make a proper demo video
- jacquesm 3y agoVery cool! I will definitely try this out, thank you for making it.
- keycon 3y agoHey, thanks! I'm a big fan of pianojacq!
- jacquesm 3y agoI'm always amazed by how many people use it, parents that mail me about their kids 'pianojacq time' :) There is no tracking on the site so I quite literally have no clue how many people use it and because it also works as a download there are plenty of offline users as well.
- tanepiper 3y agoMany years back I worked on a Websocket WebMidi app (https://github.com/tanepiper/browser-band https://github.com/tanepiper/browser-band) that I would have loved to have made more concrete as a way to jam online but as usual it was a sideproject that went nowhere.
- thomasrynne 3y agoDuring covid I needed to setup remote piano lessons. I tried combining two videos to show hands on the keys as well as the face but at the time merging the two videos added too much latency. I solved this by only using the top down camera and then adding clear perspex (from a plastic picture frame) at 45 degrees in front of the raised laptop and also pointed lamps at the piano players face (the effect is called Pepper's Ghost). This meant the teacher could see the hands on the keyboard and the players face with one camera. It also meant the piano player would appear to look directly into the camera - like an auto cue. I'm posting here in case it helps someone else.
- XCSme 3y ago> but at the time merging the two videos added too much latency Because of CPU limitations, or? OBS can combine many sources at once without too much delay, or at least you can keep them in sync with the sound.
- albert_e 3y agoThis sounds very interetsing -- would be great to see a setup like this in action / with an example.
- bruce343434 3y agoThe browser (firefox) says that allowing MIDI can have security implications - what's that all about? ETA: I didn't see this on your website because I didn't create an account or anything. But I imagine it would pop up at some point during usage, and maybe you know more about this general popup. I've seen it before on other sites that want to use MIDI devices.
- yayitswei 3y agoAnyone have recommendations for a good midi software instruments? I'd pay for a good piano or electric sound, and I haven't been happy with the GarageBand sounds I'm currently using. What are some good affordable options, and what's the best that money can buy?
- Pine_Mushroom 3y agoPianoteq by Modartt seems to be well liked, it uses physical modeling rather than samples. Ivory II by Synthology is also highly regarded. Arturia makes some very nice electric piano VSTs, and some serviceable acoustic pianos as well, but they do seem a bit over priced to me personally.
- easyThrowaway 3y agoCheck the Spitfire Symphony Orchestra Grand Piano[1], which is free and honestly I find it way superior to a lot of commercial samplebanks. Can't remember if is there any piano available in the free version of NI Komplete[2] but it's still worth checking out. [1]https://www.spitfireaudio.com/bbc-symphony-orchestra-discover https://www.spitfireaudio.com/bbc-symphony-orchestra-discove... [2]https://www.native-instruments.com/en/products/komplete/bundles/komplete-start/ https://www.native-instruments.com/en/products/komplete/bund...
- Donaldbendo 3y ago[flagged]
- LuciBb 3y ago[dead]