Hotplug USB audio

I will then…

Cheers
Maarten

1 Like

how to…

1 Like

Sorry to do the noob …
I tried to change as you described, and Zynthian goes to error at boot, here is the informations when I logon ssh :
Did I took the wrong SD image ? ( Stable ZynthianOS)

##########################       ----------------------------------------
#                          #      ZynthianOS ORAM-2409
#            ##            #      Timestamp: 2024-10-02
#      ##   #  #   ##      #      Built from RaspberryPiOS Bookworm (aarch64)
#     #  #  #  #  #  #     #      ----------------------------------------
###   #  #  #  #  #  #   ###      Kit:           V5
#  #  #  #  #  #  #  #  #  #      Display:       MIPI DSI 800x480 (inverted)
#   ##   #  #  #  #   ##   #      Soundcard:     V5 ADAC
#         ##    ##         #      Wiring Layout: V5
#                          #      ----------------------------------------
 ##########################
                                  zynthian-ui: Feature/Hotplug_audio (07d866)
                                  zynthian-webconf: oram (31f3f5)
                                  zyncoder: oram (66fa47)
                                  zynthian-sys: oram (105c12)
                                  zynthian-data: oram (305b30)
                                  ---------------------------------------

EDIT :
Here is my git config for UI:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        url = https://github.com/zynthian/zynthian-ui.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[branch "oram"]
        remote = origin
        merge = refs/heads/oram
[branch "vangelis"]
        remote = origin
        merge = refs/heads/vangelis
[branch "Feature/Hotplug_audio"]
        remote = origin
        merge = refs/heads/Feature/Hotplug_audio

The rest of the repos must be on vangelis.

1 Like

That’s crazy ! =D so cool !!! I bought a Xone DB4 to be able to mix and FX my main out for my live, zynthian beat every thing !
Thank you a lot :slight_smile:

No audio cables, just usb is really cool :slight_smile:
Do you think Is it possible to transmit at the same time the midi ? (on the same track)

3 Likes

Yep. Done that…

1 Like

Hi @maartmaart,

I could probably clone @riban’s branch and merge it - there are hardly any conflicts with my changes (unless the whole code is reformatted ;)), but I suppose his changes will be merged to the upstream soon and then also into my fork. It’s just a one-click action for me.

By the way, I am now keeping the merged code up-to-date in branches with the same names as upstream: “vangelis” and “oram”, so no more need to follow the outdated “v5touch” branch! (I should probably update instructions, when things are much easier now.)

Of course, the best solution would be just to finally merge my changes into vangelis. I already tested them with (probably) all screens I could activate. I wonder what else I should or could possibly do to help with the merge.

Hi Pavel,

Thanks do much to send me your message! Very thoughtful!
Also: Your soft buttons make my life as a zynthianer so much more pleasant/easy!

That would be GREAT!!! :pray: :smiley:

And this is very desirable:

Or… what should I do to get your branch with vangelis?

Why is it not merged into the official zynthian branches? I am sure a lot of zynthians (for sure beginning ones) will make great use of it!!

Thanks again,
Cheers,
Maarten

Hi, Maarten.

The up-to-date instructions are here. If you are still on my branch “v5touch”, you should switch to “vangelis”. I am not sure if that happens automatically once you do that globally in the webconf, but you can always do git checkout vangelis in /zynthian/zynthian-ui/ if the webconf does fail for some reason.

I got finally some feedback and advice from @jofemodo, so we may be closer to a merge. It looks like I have too eagerly implemented a bit more features than meaningful in the meantime :smiley: , while playing with the platform and experimenting … so that I will have to split the code into more branches and remove the more experimental or controversial “improvements” to get at least the core functionality accepted to upstream by our careful and foresightful arbiters.

1 Like

Hi @wanthalf

Sounds all great! :slight_smile:

Cheers,
Maarten

FYI, hotplug audio is now merged in testing (vangelis) chain. I strongly recommend to back to testing (vangelis) branch all your repos. Please, don’t keep using the Hotplug_audio development branch.

BTW, i also merged the audio configuration improvements in webconf. You can now easily configure the most important parameters like:

  • sample frequency
  • buffer size
  • number of buffers

The Pi5 is awesome!!

Not tested all engines, but it’s running smoothly at 96KHz and 64 samples buffer size with latency of 1.3ms !!

Thanks @riban for these nice improvements!! :star_struck:

Regards!

5 Likes

Merged, too.

2 Likes

THANKS! @jofemodo and @wanthalf

I couldn’t get this low with USB audio. I found a limit around twice that latency, whether increasig buffer size or samplerate. Maybe it is a limitation of USB audio.

Can it depend of the interface and/or the host?

Anyway, I think I never managed to get this low either… using any device I have and playing pianoteq…

Yes, same happens on Windows/PC, USB has a bit more latency.

what is Soft x-run mode? is it the jackd option -s? What is it used for, as everything runs in root mode on the Zynthian?

BTW, smaller buffer means more polling/filling action, means more CPU, as seen on PC, so I guess it applies to Zynthian as well. Same applies to more sampling rate, means more processing (or more upsampling interpolation), means more CPU load.

This avoids jack disconnecting clients when they cause xruns. It makes the system less likely to fail but uses more resources.

Absolutely! This change allows users to more easily adjust parameters with an indication of how that affects latency. Some users demand lower latency and must contend with a reduction in the complexity of thier snapshots. Others can work with higher latencies and benefit from more complex snapshots.

I have set up zynaudio8x at 48000 fps (only runs at that rate) with buffer size of 64 to give 2.7ms latency and it works! The hotplug USB audio has higher latency due to the samplerate conversion stage. I hear phasing rather than slapback so probably under 20ms.

2 Likes

This is great.