Phone to Windows Machine

Questions and Discussions about G-Stomper
Hein
Posts: 4
Joined: Wed Nov 29, 2017 9:09 pm

Phone to Windows Machine

Postby Hein » Wed Nov 29, 2017 9:31 pm

Hi! First and foremost, I want to congratulate you on creating such an amazing app!

My question is this - I have been running the app on a Nexus 5 with Android 6.0.1 and a Behringer audio interface over USB OTG. I would like to be able to hook up the phone to a computer running Windows 10 instead. I understand that in this case, the Android device would have to slave to the USB port of the computer rather than act as the USB host. When I hook up the phone with a straight USB cable, the Android device is not recognized by the ASIO driver on the PC as an audio input interface. Does this mean I still need the OTG adapter for this, do I need different drivers, or is this not possible at all with this version of the Android OS? Thanks!
User avatar
planet-h
Posts: 1545
Joined: Wed Jun 19, 2013 4:46 pm

Re: Phone to Windows Machine

Postby planet-h » Thu Nov 30, 2017 8:48 am

Welcome to the forum, Hein.

Hein wrote:Hi! First and foremost, I want to congratulate you on creating such an amazing app!

Thanks a lot, I'm glad to hear that you like it:).

Hein wrote:My question is this - I have been running the app on a Nexus 5 with Android 6.0.1 and a Behringer audio interface over USB OTG. I would like to be able to hook up the phone to a computer running Windows 10 instead. I understand that in this case, the Android device would have to slave to the USB port of the computer rather than act as the USB host. When I hook up the phone with a straight USB cable, the Android device is not recognized by the ASIO driver on the PC as an audio input interface. Does this mean I still need the OTG adapter for this, do I need different drivers, or is this not possible at all with this version of the Android OS? Thanks!

Unfortunately, you cannot hookup any Android device to the ASIO driver on a PC. Android simply does not support that.
What you can do is to hookup your Android device as MIDI peripheral to your PC. But using the ASIO driver on a PC is technically impossible.

Can you be a bit more specific about what exactly you want to achieve with the hookup?
I'm sure there are ways to achieve what you're looking for.
Hein
Posts: 4
Joined: Wed Nov 29, 2017 9:09 pm

Re: Phone to Windows Machine

Postby Hein » Sat Dec 02, 2017 6:30 pm

planet-h wrote:Can you be a bit more specific about what exactly you want to achieve with the hookup?
I'm sure there are ways to achieve what you're looking for.


Since G-Stomper is not suitable for long audio tracks running across patterns, I wanted to use it as a slave to Reaper running on a Windows Laptop. I know I could achieve this by syncing via MIDI and using the phone's audio output, but I was hoping to be able to do this without any gratuitous D/A and A/D conversion, especially since my current audio interface is a Behringer UMC204 that only has two analog inputs. Since I am able to concurrently hook up a Zoom G3X along with the Behringer to the laptop via USB and ASIO4ALL, I was hoping to be able to add G-Stomper running on the Nexus 5 in the same way. It's too bad Android cannot do that.
uouVAnon
Posts: 2
Joined: Sun Dec 03, 2017 8:32 am

Re: Phone to Windows Machine

Postby uouVAnon » Sun Dec 03, 2017 8:47 am

Hey friend . I just discovered that it plays long tracks just fine. From drum machine, all the way to the right, hit the setup key. From there youll find the setting that allows the track to continue playing and not get cut off at the end of the pattern. And fyi, i learned this the hard way - i did a remix for the song "sail" and the vocal stem was getting cut off after the 3rd pattern. Turns out it was because i dindnt have the vocal stem in the third pattern or the second for that matter. The loop is activated once in the first pattern, and then it just plays until finished - that is if you bring the track with you on following patterns, regardless of the track never being activated out side pattern 1. If you want it to keep playing dont replace the track in the following patterns, beacuse after two patterns your loop will cancel out. Hope that isnt too confusing. Cheers!
User avatar
planet-h
Posts: 1545
Joined: Wed Jun 19, 2013 4:46 pm

Re: Phone to Windows Machine

Postby planet-h » Mon Dec 04, 2017 10:25 am

Hein wrote:Since G-Stomper is not suitable for long audio tracks running across patterns, I wanted to use it as a slave to Reaper running on a Windows Laptop. I know I could achieve this by syncing via MIDI and using the phone's audio output, but I was hoping to be able to do this without any gratuitous D/A and A/D conversion, especially since my current audio interface is a Behringer UMC204 that only has two analog inputs. Since I am able to concurrently hook up a Zoom G3X along with the Behringer to the laptop via USB and ASIO4ALL, I was hoping to be able to add G-Stomper running on the Nexus 5 in the same way. It's too bad Android cannot do that.


So as I understand you right, you just want to synchronize G-Stomper on your Android with Reaper on your PC, is this correct?
I mean, if they would play in sync, then this would do the job, correct?

As both, G-Stomper and Reaper support Ableton Link, I'd recommend to use Ableton Link to synchronize both applications (that's way more stable than any MIDI connection).
http://www.planet-h.com/documentation/ableton-link/
And then just mix the audio signals together.

Btw. That you cannot use an audio interface on your Android device, if that audio interface is actually hooked up via USB to a PC, has nothing to do with Android.
An USB audio interface can always only used by one host, on any platform. If it's hooked up via USB to a pc, then it belongs to that pc and cannot be used from any other device (over USB).
The only thing you can do is to hook the audio ins/outs together (for the price of the D/A A/D conversion), or use the optical connection if both audio interfaces support that.
Hein
Posts: 4
Joined: Wed Nov 29, 2017 9:09 pm

Re: Phone to Windows Machine

Postby Hein » Mon Dec 04, 2017 8:22 pm

planet-h wrote:So as I understand you right, you just want to synchronize G-Stomper on your Android with Reaper on your PC, is this correct?
I mean, if they would play in sync, then this would do the job, correct?


Yes.

planet-h wrote:As both, G-Stomper and Reaper support Ableton Link


There is a pending feature request for Reaper https://forum.cockos.com/showthread.php?t=186133, but as of now, it does not support it.

planet-h wrote:Btw. That you cannot use an audio interface on your Android device, if that audio interface is actually hooked up via USB to a PC, has nothing to do with Android.


That last statement confuses me. I do understand that there cannot be two masters on the same bus, but what is fundamentally blocking Android from implementing USB slave mode for audio? After all, the OTG specification does provide for devices to play either role https://en.wikipedia.org/wiki/USB_On-The-Go. I'm not trying to be argumentative. It's a real question. Perhaps it will happen if enough people are asking for it.
User avatar
planet-h
Posts: 1545
Joined: Wed Jun 19, 2013 4:46 pm

Re: Phone to Windows Machine

Postby planet-h » Tue Dec 05, 2017 7:19 am

Ah, OK. I didn't know that Reaper doesn't support Ableton Link yet.

Hein wrote:
planet-h wrote:Btw. That you cannot use an audio interface on your Android device, if that audio interface is actually hooked up via USB to a PC, has nothing to do with Android.


That last statement confuses me. I do understand that there cannot be two masters on the same bus, but what is fundamentally blocking Android from implementing USB slave mode for audio? After all, the OTG specification does provide for devices to play either role https://en.wikipedia.org/wiki/USB_On-The-Go. I'm not trying to be argumentative. It's a real question. Perhaps it will happen if enough people are asking for it.


The OTG specification does allow a device to either act as USB host or as USB peripheral.
Typical peripherals are printers, keyboards, mice, audio interfaces, MIDI interfaces etc. Peripherals are used by hosts and also get the power feed by from host.
Typical hosts are PC's, Android devices, etc.

A host can use one or more peripherals, while a peripheral can always only be used by one single host at a time.
In other words, an audio interface (which is a peripheral) can never be used by a pc and an android device at the same time.

An android device can act as a peripheral, but never act as a peripheral and a host at the same time.
Typical use of an android devices as peripheral is to hook it up to a pc as MIDI (you can set that mode in the USB options once it is connected), or of course if you hook it up to a pc for data transfer.
Typical use of an android as host is to hook up an audio or midi interface to its usb port.

So when you hook your audio interface to your pc, then the audio interface belongs to the pc, and only to the pc, regardless how many people are asking for it to be used from both, pc and android device.
Such things are technically impossible, at least in the current USB protocol.

That's why Ableton invented Link. It goes around all those limitations and provides a rock solid sync between devices.
Ableton Link is the future of synchronization, and every app and host software should support it.
Hein
Posts: 4
Joined: Wed Nov 29, 2017 9:09 pm

Re: Phone to Windows Machine

Postby Hein » Tue Dec 05, 2017 4:45 pm

planet-h wrote:An android device can act as a peripheral, but never act as a peripheral and a host at the same time.
[...]
So when you hook your audio interface to your pc, then the audio interface belongs to the pc, and only to the pc, regardless how many people are asking for it to be used from both, pc and android device.


Thank you for your detailed explanations, but I don't see how my application needs the Android device to act as a host and peripheral at the same time. It would be a peripheral and the PC would be the host. All the phone would be requested to do is deliver both MIDI and audio over USB (as we know it can do in host mode), while slaving its MIDI and audio clocks to the USB host's. The PC may or may not have a USB audio interface connected to a different USB port as yet another peripheral at the same time, but that should be none of the Android phone's business. I suppose current Android versions do not support acting as an audio peripheral, perhaps because there aren't any applications for this in the consumer space, but I don't quite see how this would violate any of the USB design principles.
User avatar
planet-h
Posts: 1545
Joined: Wed Jun 19, 2013 4:46 pm

Re: Phone to Windows Machine

Postby planet-h » Tue Dec 05, 2017 5:19 pm

Hein wrote:but I don't see how my application needs the Android device to act as a host and peripheral at the same time


That was just mentioned for completion.
I was trying to explain, what a device can and what it cannot do.

Hein wrote:All the phone would be requested to do is deliver both MIDI and audio over USB (as we know it can do in host mode), while slaving its MIDI and audio clocks to the USB host's. The PC may or may not have a USB audio interface connected to a different USB port as yet another peripheral at the same time, but that should be none of the Android phone's business. I suppose current Android versions do not support acting as an audio peripheral, perhaps because there aren't any applications for this in the consumer space, but I don't quite see how this would violate any of the USB design principles. Come to think of it - if the Android phone is connected to a car stereo, doesn't it act as an audio peripheral in this case?


Thanks for clearing this up.
Now that makes more sense. I didn't understand you correctly on the previous post.
No, acting as audio peripheral would definitely not violate any principles.

Regarding the car stereo:
What exactly android is in that case is hard to say. It can also be that android is the host and the car stereo acts as audio peripheral.
I guess it depends on where you select the tracks, on the phone or on the car stereo display.
Normally always the host is the one that has the control.

What I know for sure is that there is no API for for USB Audio peripherals yet. There's only an API for USB MIDI peripherals (since Android M).
But there's surely a chance for this to get added in some future Android versions. We'll see.

Return to “General Questions and Discussions”

Who is online

Users browsing this forum: No registered users and 48 guests