velolala / touchosc2midi

a (linux compatible) TouchOSC Midi Bridge written in python
MIT License
106 stars 22 forks source link

USB connectivity #10

Open jasalt opened 7 years ago

jasalt commented 7 years ago

I'd like to see libimobiledevice USB-connectivity that Win/Mac versions got a few months ago http://hexler.net/blog/post/uncut-the-wire.

velolala commented 7 years ago

Hey @jasalt - thanks for raising this! At this point in time I don't have neither an iOS device for testing nor any understanding what the mode of communication is with libimobildevice (OSC over USB networking I would assume?). Do you anything to add here?

jasalt commented 7 years ago

Yeah it's network connection via USB. I do have a devices for testing, but don't have time for developing currently as I'm working on music projects with Bitwig on MacOS.

If someone implements this, I could possibly help testing.

h3xl3r commented 7 years ago

Yup, TouchOSC is listening on 8888, TCP for TouchOSC Bridge connections.

Hi! I am the developer of TouchOSC! I am kind of interested in helping with supporting this project with reaching full feature compatibility with the official TouchOSC Bridge, but neither do I have much time, nor do I program Python a lot. Were this a C++ project, you'd already be seeing my PR's :) ... but I digress...

If there's anything I can help with, please ask. I've been recommending your project to people seeking support on Linux platforms (which the editor runs fine on btw), so I'd like to help to develop it further!

I am also going to be adding actually tunneling the OSC connections over USB (atm it's only MIDI messages getting relayed) soon, so there's more USB communication coming.

h3xl3r commented 7 years ago

BTW, the OSC over TCP simply follows the recommendation here: http://opensoundcontrol.org/spec-1_0

"In a stream-based protocol such as TCP, the stream should begin with an int32 giving the size of the first packet, followed by the contents of the first packet, followed by the size of the second packet, etc."

h3xl3r commented 7 years ago

I forgot, the support on both macOS and Windows is of course based on http://www.libimobiledevice.org/ which I understand originates on Linux so should be possible to integrate?