first of all, a disclaimer. I'm a WebRTC developer myself: specifically, I'm the main author of Janus, an open source WebRTC server that has gained some popularity these past few years. That said, I love making music and I love open source, which is the main reason why I've been hanging out around here for more than a year now (mostly sharing my "creations" with folks). As such, I wanted to figure out whether or not you think there's anything WebRTC could do to help musicians in the FOSS world.
If you're not familiar with WebRTC, in a nutshell it's a technology that allows you to create peer-to-peer real time media channels in a browser, with no need for custom plugins like Flash or Java applets. It was originally born to allow you to make video calls from a browser in JavaScript, but it soon ended up becoming so much more, involving many more different devices as well. Thanks to the help of dedicated applications and servers (that do break the peer-to-peer paradigm, but mostly with good reason), it's currently being used in a whole variety of vastly heterogeneous use cases. If you'd like to know more about it in general, please don't hesitate to ask: I have plenty of material to point you to.
That said, I've often wondered what WebRTC can do for arts, and music in particular. While my WebRTC project is labelled as "general purpose", since it tries to be as generic as possible and allow for different things, quite obviously most people use it for traditional and, if you will, "boring" applications like conferencing, e-learning, webinars, and stuff like that. I'm always looking forward to more "artistic" usages of the project, being a hobbyist musician myself, but that has unfortunately rarely happened. I do know a few have used it to stream their concerts live: WebRTC is real-time, and there's no requirement for sessions to be bidirectional, meaning it's a quite effective tool to stream live content with very low latency (especially compared, e.g., to HLS). Others have used it more simply as a tool for music lessons, e.g., to learn an intrument: while a more interesting use case than the boring business Skype call, it's still quite traditional though. An interesting exception has been a theater company, that recently wrote me to tell me they used the software to implement an online interactive play. But apart from that, there hasn't been much music-related.
I did try to experiment a bit in the past, just for fun. For instance, if you watch this video, you'll see a very short demo (~3 minutes) I made at a conference a few months ago, using open source tools. This demo had a piano keyboard in a web application; the web application would create a WebRTC datachannel to send notes being hit by the player to a Lua script in Janus; the Lua script would then use ALSA to translate those notes to MIDI signals and pass them to Jack; I'd then hook that up to something that could play the notes (e.g., QSynth or Yoshimi), and via Jack I would pass the output of that application to a gstreamer pipeline; finally, the gstreamer pipeline would be configured to encode the received audio in real-time to Opus (the default audio codec supported in WebRTC) and send it via RTP back to Janus; Janus would finally broadcast the encoded stream in real-time back to the user via WebRTC. The "fun" part in the demo was that I allowed multiple people to open the same web application at the same time: if I played something, and you had the page open too, you could see the notes being played on your keyboard (different people had different colors) and everyone could listen to what everyone was playing. Of course, it soon turned into a mess (10 people trying to play the same keyboard would be a mess in real-life too

Anyway, I'm honestly interested to understand if you think there's actually anything that such a technology could do to help with music. Jam sessions come to mind, of course, even though I fear the latency involved (although very low most of the times) may be too high. Possibly integrations in DAWs for some use case?
Looking forward to your thoughts!