Airwave VST bridge

Discuss running non-Linux applications and plugins on Linux, for example via wine

Moderators: MattKingUSA, khz

lilakmonoke
Established Member
Posts: 59
Joined: Sun Feb 10, 2013 9:47 am

Re: Airwave VST bridge

Post by lilakmonoke »

this is great, phantom of the vsts! i was just wondering about a bridge like that that i could use in bitwig. but what i would really like to work with is a bridge that does VST_> LV2 ... i route all my music setups directly in carla.
User avatar
briandc
Established Member
Posts: 1442
Joined: Sun Apr 29, 2012 3:17 pm
Location: Italy
Has thanked: 58 times
Been thanked: 28 times
Contact:

Re: Airwave VST bridge

Post by briandc »

Having some problems with Airwave. Maybe this error log will be of help:

Code: Select all

Unhandled exception: divide by zero in 32-bit code (0x100dae1b).
Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b
 EIP:100dae1b ESP:0033fc04 EBP:0033fc2c EFLAGS:00010206(  R- --  I   - -P- )
 EAX:0000bb80 EBX:00000000 ECX:045244b0 EDX:00000000
 ESI:045244b0 EDI:00000000
Stack dump:
0x0033fc04:  00000002 045244b0 100db172 0139d280
0x0033fc14:  01219430 10036f74 00000000 03dcd714
0x0033fc24:  00000000 03dcd150 0033fc40 1008c284
0x0033fc34:  0381ec90 00493160 10075d7f 0033fc50
0x0033fc44:  100814e1 03dcd150 004930a0 0033fc74
0x0033fc54:  100748bf 004cc0d0 ffffb288 00000000
Backtrace:
=>0 0x100dae1b in ivor2 (+0xdae1b) (0x0033fc2c)
  1 0x1008c284 in ivor2 (+0x8c283) (0x0033fc40)
  2 0x100814e1 in ivor2 (+0x814e0) (0x0033fc50)
  3 0x100748bf in ivor2 (+0x748be) (0x0033fc74)
  4 0x10004943 in ivor2 (+0x4942) (0x0033fc80)
  5 0x100056a8 in ivor2 (+0x56a7) (0x0033fca8)
  6 0x100046c3 in ivor2 (+0x46c2) (0x0033fcc8)
  7 0x7effa2b5 _ZN7Airwave4Host14handleDispatchEPNS_9DataFrameE+0xc4() in airwave-host-32 (0x0033fd78)
  8 0x7effac84 _ZN7Airwave4Host14processRequestEv+0xc3() in airwave-host-32 (0x0033fda8)
  9 0x7eff7818 main+0x1b7() in airwave-host-32 (0x0033fe18)
  10 0x7effb4f0 __wine_spec_exe_entry+0x7f() in airwave-host-32 (0x0033fe58)
  11 0x7b861e8c call_process_entry+0xb() in kernel32 (0x0033fe78)
  12 0x7b862f63 in kernel32 (+0x52f62) (0x0033feb8)
  13 0x7bc83e70 call_thread_func_wrapper+0xb() in ntdll (0x0033fed8)
  14 0x7bc8703d call_thread_func+0x7c() in ntdll (0x0033ffa8)
  15 0x7bc83e4e RtlRaiseException+0x21() in ntdll (0x0033ffc8)
  16 0x7bc5619e call_dll_entry_point+0x3fd() in ntdll (0x0033ffe8)
  17 0xb75ca45d wine_call_on_stack+0x1c() in libwine.so.1 (0x00000000)
  18 0xb75ca51b wine_switch_to_stack+0x2a() in libwine.so.1 (0xbffb57a8)
  19 0x7bc5c4d9 LdrInitializeThunk+0x238() in ntdll (0xbffb57e8)
  20 0x7b869853 __wine_kernel_init+0xa12() in kernel32 (0xbffb6908)
  21 0x7bc5d403 __wine_process_init+0x192() in ntdll (0xbffb6998)
  22 0xb75c7bd0 wine_init+0x2bf() in libwine.so.1 (0xbffb69f8)
  23 0x7bf00d8c main+0x8b() in <wine-loader> (0xbffb6e48)
  24 0xb73eca83 __libc_start_main+0xf2() in libc.so.6 (0x00000000)
0x100dae1b: idivl	%edi,%eax
Modules:
Module	Address			Debug info	Name (128 modules)
PE	  890000-  8bb000	Deferred        patchmemory.sem
PE	  9d0000-  9e9000	Deferred        increment3.sem
PE	  b00000-  b42000	Deferred        converters.sem
PE	 9350000- 9368000	Deferred        ck_pitch_volt_to_khz.sep
PE	 9770000- 9787000	Deferred        ck_samplerate.sep
PE	 9b90000- afb3000	Deferred        ck_std_oscwt_2k.sep
PE	 b3c0000- b3e1000	Deferred        ck_standard_osc_2k.sep
PE	 b7f0000- b807000	Deferred        ck_analogue_drift.sep
PE	 bc10000- bc28000	Deferred        ck_glide.sep
PE	 c030000- c04f000	Deferred        ck_mod_osc.sep
PE	 c450000- c464000	Deferred        dh_array.sem
PE	 c580000- c596000	Deferred        clock2.sep
PE	 c6b0000- c6c7000	Deferred        ck_contour.sep
PE	 cad0000- caf9000	Deferred        ck_gui_envelopev2_8.sep
PE	 cf00000- cf19000	Deferred        ck_warp.sep
PE	 d320000- d337000	Deferred        ck_softlimit_drv.sep
PE	 d740000- d758000	Deferred        ck_patch_mem_random_contour.sep
PE	 db60000- db78000	Deferred        ck_pitchshifter.sep
PE	 df80000- df98000	Deferred        ck_db_to_level.sep
PE	 e3a0000- e3b7000	Deferred        ck_softlimit.sep
PE	 e7c0000- e7df000	Deferred        ck_chorus_driver4.sep
PE	 ebe0000- ebf8000	Deferred        ck_4v_chorus.sep
PE	 f000000- f00f000	Deferred        evm phaser.sem
PE	 f220000- f238000	Deferred        ck_ind_stereo_dly.sep
PE	 f640000- f658000	Deferred        ck_filename_table_x32_mid.sep
PE	 fa60000- fa7c000	Deferred        inverter.sem
PE	 fb90000- fbad000	Deferred        floatlimiter.sem
PE	 fcc0000- fcdd000	Deferred        bpmclock3.sem
PE	 fdf0000- fe13000	Deferred        enveloperadsr.sem
PE	 ff30000- ff4d000	Deferred        voicemute.sem
PE	10000000-1084e000	Export          ivor2
ELF	7b800000-7ba6a000	Dwarf           kernel32<elf>
  \-PE	7b810000-7ba6a000	\               kernel32
ELF	7bc00000-7bcf2000	Dwarf           ntdll<elf>
  \-PE	7bc10000-7bcf2000	\               ntdll
ELF	7bf00000-7bf04000	Dwarf           <wine-loader>
ELF	7d2bd000-7d34d000	Deferred        gdiplus<elf>
  \-PE	7d2d0000-7d34d000	\               gdiplus
ELF	7d43f000-7d455000	Deferred        dwmapi<elf>
  \-PE	7d440000-7d455000	\               dwmapi
ELF	7d455000-7d485000	Deferred        p11-kit-trust.so
ELF	7d585000-7d58e000	Deferred        librt.so.1
ELF	7d58e000-7d595000	Deferred        libffi.so.6
ELF	7d595000-7d59a000	Deferred        libgpg-error.so.0
ELF	7d59a000-7d5b2000	Deferred        libresolv.so.2
ELF	7d5b2000-7d5b6000	Deferred        libkeyutils.so.1
ELF	7d5b6000-7d601000	Deferred        libdbus-1.so.3
ELF	7d601000-7d63d000	Deferred        libp11-kit.so.0
ELF	7d63d000-7d651000	Deferred        libtasn1.so.6
ELF	7d651000-7d6d8000	Deferred        libgcrypt.so.11
ELF	7d6d8000-7d708000	Deferred        libk5crypto.so.3
ELF	7d708000-7d7c6000	Deferred        libkrb5.so.3
ELF	7d828000-7d834000	Deferred        libkrb5support.so.0
ELF	7d834000-7d839000	Deferred        libcom_err.so.2
ELF	7d839000-7d8ff000	Deferred        libgnutls.so.26
ELF	7d8ff000-7d945000	Deferred        libgssapi_krb5.so.2
ELF	7d945000-7d9b2000	Deferred        libcups.so.2
ELF	7d9c2000-7d9d5000	Deferred        gnome-keyring-pkcs11.so
ELF	7d9d5000-7da0e000	Deferred        uxtheme<elf>
  \-PE	7d9e0000-7da0e000	\               uxtheme
ELF	7da0e000-7da14000	Deferred        libxfixes.so.3
ELF	7da14000-7da1f000	Deferred        libxcursor.so.1
ELF	7da1f000-7da2f000	Deferred        libxi.so.6
ELF	7da2f000-7da33000	Deferred        libxcomposite.so.1
ELF	7da33000-7da3e000	Deferred        libxrandr.so.2
ELF	7da3e000-7da49000	Deferred        libxrender.so.1
ELF	7da49000-7da4f000	Deferred        libxxf86vm.so.1
ELF	7da4f000-7da53000	Deferred        libxinerama.so.1
ELF	7da53000-7da5a000	Deferred        libxdmcp.so.6
ELF	7da5a000-7da5e000	Deferred        libxau.so.6
ELF	7da5e000-7da80000	Deferred        libxcb.so.1
ELF	7da80000-7dbb4000	Deferred        libx11.so.6
ELF	7dbb4000-7dbc7000	Deferred        libxext.so.6
ELF	7dbc8000-7dbda000	Deferred        libavahi-client.so.3
ELF	7dbda000-7dbe8000	Deferred        libavahi-common.so.3
ELF	7dbea000-7dc7e000	Deferred        winex11<elf>
  \-PE	7dbf0000-7dc7e000	\               winex11
ELF	7dc7e000-7ddc4000	Deferred        oleaut32<elf>
  \-PE	7dc90000-7ddc4000	\               oleaut32
ELF	7ddc4000-7de07000	Deferred        winspool<elf>
  \-PE	7ddd0000-7de07000	\               winspool
ELF	7de07000-7df13000	Deferred        comctl32<elf>
  \-PE	7de10000-7df13000	\               comctl32
ELF	7df13000-7df8e000	Deferred        shlwapi<elf>
  \-PE	7df20000-7df8e000	\               shlwapi
ELF	7df8e000-7e1dc000	Deferred        shell32<elf>
  \-PE	7dfa0000-7e1dc000	\               shell32
ELF	7e1dc000-7e2cc000	Deferred        comdlg32<elf>
  \-PE	7e1e0000-7e2cc000	\               comdlg32
ELF	7e2cc000-7e2e0000	Deferred        msimg32<elf>
  \-PE	7e2d0000-7e2e0000	\               msimg32
ELF	7e2e0000-7e30b000	Deferred        msacm32<elf>
  \-PE	7e2f0000-7e30b000	\               msacm32
ELF	7e30b000-7e38f000	Deferred        rpcrt4<elf>
  \-PE	7e320000-7e38f000	\               rpcrt4
ELF	7e38f000-7e4d4000	Deferred        ole32<elf>
  \-PE	7e3b0000-7e4d4000	\               ole32
ELF	7e4d4000-7e58f000	Deferred        winmm<elf>
  \-PE	7e4e0000-7e58f000	\               winmm
ELF	7e58f000-7e5b4000	Deferred        imm32<elf>
  \-PE	7e5a0000-7e5b4000	\               imm32
ELF	7e7da000-7e803000	Deferred        libexpat.so.1
ELF	7e803000-7e83e000	Deferred        libfontconfig.so.1
ELF	7e83e000-7e866000	Deferred        libpng12.so.0
ELF	7e866000-7e880000	Deferred        libz.so.1
ELF	7e880000-7e920000	Deferred        libfreetype.so.6
ELF	7e943000-7e9bf000	Deferred        advapi32<elf>
  \-PE	7e950000-7e9bf000	\               advapi32
ELF	7e9bf000-7eae0000	Deferred        gdi32<elf>
  \-PE	7e9d0000-7eae0000	\               gdi32
ELF	7eae0000-7ec3d000	Deferred        user32<elf>
  \-PE	7eaf0000-7ec3d000	\               user32
ELF	7ec3d000-7ec5a000	Deferred        libgcc_s.so.1
ELF	7ed4b000-7ed65000	Deferred        version<elf>
  \-PE	7ed50000-7ed65000	\               version
ELF	7ef65000-7ef72000	Deferred        libnss_files.so.2
ELF	7ef72000-7ef7e000	Deferred        libnss_nis.so.2
ELF	7ef7e000-7ef97000	Deferred        libnsl.so.1
ELF	7ef97000-7efdd000	Deferred        libm.so.6
ELF	7efe4000-7f000000	Dwarf           airwave-host-32<elf>
  \-PE	7eff0000-7f000000	\               airwave-host-32
ELF	b73c4000-b73cd000	Deferred        libnss_compat.so.2
ELF	b73ce000-b73d3000	Deferred        libdl.so.2
ELF	b73d3000-b7581000	Dwarf           libc.so.6
ELF	b7582000-b759e000	Deferred        libpthread.so.0
ELF	b75c1000-b7777000	Dwarf           libwine.so.1
ELF	b7779000-b779b000	Deferred        ld-linux.so.2
ELF	b779d000-b779e000	Deferred        [vdso].so
Threads:
process  tid      prio (all id:s are in hex)
00000008 (D) Z:\opt\airwave\bin\airwave-host-32.exe
	00000026    0
	00000009    0 <==
0000000e services.exe
	0000001e    0
	0000001d    0
	00000014    0
	00000010    0
	0000000f    0
00000012 winedevice.exe
	0000001c    0
	00000019    0
	00000018    0
	00000013    0
0000001a plugplay.exe
	00000020    0
	0000001f    0
	0000001b    0
00000021 explorer.exe
	00000025    0
	00000024    0
	00000023    0
	00000022    0
System information:
    Wine build: wine-1.8
    Platform: i386
    Version: Windows XP
    Host system: Linux
    Host version: 3.19.0-59-lowlatency

brian
Have your PC your way: use linux!
My sound synthesis biome: http://www.linuxsynths.com
User avatar
phant0m
Established Member
Posts: 49
Joined: Tue Apr 14, 2015 11:03 am
Contact:

Re: Airwave VST bridge

Post by phant0m »

Sadly, it looks like a wine or ivor2 issue for me. As you can see, the stack pointer is deep inside of ivor2 calls. Thus, the division by zero caused by the ivor2 code. But there is a chance, that it got wrong data from airwave, of course.
User avatar
davephillips
Established Member
Posts: 592
Joined: Sat Aug 15, 2015 1:05 pm
Has thanked: 35 times
Been thanked: 23 times

Re: Airwave VST bridge

Post by davephillips »

phant0m wrote:Sadly, it looks like a wine or ivor2 issue for me. As you can see, the stack pointer is deep inside of ivor2 calls. Thus, the division by zero caused by the ivor2 code. But there is a chance, that it got wrong data from airwave, of course.
FWIW, I just tested the Airwave'd IVOR2 in Bitwig 1.3.9 where it worked fine during my short tests.

Best,

dp
User avatar
briandc
Established Member
Posts: 1442
Joined: Sun Apr 29, 2012 3:17 pm
Location: Italy
Has thanked: 58 times
Been thanked: 28 times
Contact:

Re: Airwave VST bridge

Post by briandc »

[strikethrough]Maybe I need to try Bitwig.[/strikethrough] Forgot, only 64-bit..

Anyway, the errors I posted were while trying IVOR2 in Carla. I'm trying to get it working using Qtractor but can't for some reason..


brian
Have your PC your way: use linux!
My sound synthesis biome: http://www.linuxsynths.com
Luc
Established Member
Posts: 741
Joined: Fri Mar 27, 2015 1:04 pm
Been thanked: 1 time

Re: Airwave VST bridge

Post by Luc »

Feature request:

I have been using Airwave and added many plugins to it.

The procedure is quite tedious: click new, click the file browser, browse to the plugin file, click click click click click... then correct the link location field because I don't like the default, then change the name of the link a little bit to improve identification by name, and finally OK.

Now I just downloaded a somewhat ridiculous number of free guitar amp and pedal plugins. I have added a few, but not even 20% of the entire bunch. The prospect of repeating that procedure about 50 times is quite discouraging.

So I was wondering if maybe something could be done to improve that situation. For example, if Airwave could remember the last directory from which I selected a plugin, it would help. If we could establish our own default link location, that would also help. Perhaps Airwave could even scan a directory and add all plugins that haven't been added yet. Or maybe all of this could be done in some easily editable text file that Airwave would parse and act upon.

Please consider.
User avatar
phant0m
Established Member
Posts: 49
Joined: Tue Apr 14, 2015 11:03 am
Contact:

Re: Airwave VST bridge

Post by phant0m »

Good suggestions! I'll try to implement it, thank you.
Luc
Established Member
Posts: 741
Joined: Fri Mar 27, 2015 1:04 pm
Been thanked: 1 time

Re: Airwave VST bridge

Post by Luc »

I've taken the matter into my own hands and...
comment continues here: viewtopic.php?f=48&t=16043
Deadwing
Posts: 2
Joined: Sat Aug 20, 2016 9:03 am

Re: Airwave VST bridge

Post by Deadwing »

Hello,
i'm new to music production using Linux.
I discovered Tracktion 5 some while ago and it worked instantly. So i thought i give it another try.

To get my VSTs working, i installed airwave today (using wine 1.8, for some dependency reasons i was unable to install 1.7).
The installation worked fine from what i can tell.

I used EpicVerb from Variety of Sound to for testing purposes.
However, the DAW and the plugin will eventually freeze while turning the virtual knobs of the plugins.
Has anyone else experienced problems like that? :(

P.S.: Big thank you for your work, phant0m!
Luc
Established Member
Posts: 741
Joined: Fri Mar 27, 2015 1:04 pm
Been thanked: 1 time

Re: Airwave VST bridge

Post by Luc »

I have that kind of problem all the time with Tracktion 6. It is very unstable with plugins. Tracktion is excellent in recording sessions and simple editing, but causes trouble in MIDI editing with plugins.

Some plugins are more stable than others. You may want to use another reverb plugin which might be more stable. Or you can run some/most/all plugins inside Carla, which is not as nice, but improves stability.
Deadwing
Posts: 2
Joined: Sat Aug 20, 2016 9:03 am

Re: Airwave VST bridge

Post by Deadwing »

Oh, that's bad news then...
What a shame, since Tracktion 5 itself is running pretty stable so far.

Some of the Variety of Sound plugins are just too nice to let them go. The EpicVerb was just the one i tried first, but it's not the one i use the most.
I'm just beginning to dive into the world of open source plugins, maybe i will find some proper replacements.

Anyway, thanks for your reply!
tavasti
Established Member
Posts: 2047
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Has thanked: 369 times
Been thanked: 208 times
Contact:

Re: Airwave VST bridge

Post by tavasti »

I'm trying to compile airwave with winehq wine-stable. What would be proper way to add include & library search path for correct location?

Now it fails like this:
[ 28%] Building CXX object src/host/CMakeFiles/airwave-host-32.dir/host.cpp.o
In file included from /home/tavasti/git/airwave/src/host/host.cpp:1:0:
/home/tavasti/git/airwave/src/host/host.h:7:10: fatal error: wine/windows/windows.h: No such file or directory
#include <wine/windows/windows.h>
^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
winegcc: g++ failed

Linux veteran & Novice musician

Latest track: https://www.youtube.com/watch?v=ycVrgGtrBmM

rghvdberg
Established Member
Posts: 1067
Joined: Mon May 12, 2014 7:11 am
Has thanked: 15 times
Been thanked: 36 times

Re: Airwave VST bridge

Post by rghvdberg »

IIRC there's a package called wine compat, something like that.
It sets everything up so the winehq 'behaves' like the normal wine packages
You'll also need the dev packages from winehq ofc.
tavasti
Established Member
Posts: 2047
Joined: Tue Feb 16, 2016 6:56 am
Location: Kangasala, Finland
Has thanked: 369 times
Been thanked: 208 times
Contact:

Re: Airwave VST bridge

Post by tavasti »

rghvdberg wrote:IIRC there's a package called wine compat, something like that.
It sets everything up so the winehq 'behaves' like the normal wine packages
You'll also need the dev packages from winehq ofc.
There is wine-staging-compat, which is transitional dummy package. Package winhq-stable provides symlinks for binaries, but for devel there is no such. And I have installed wine-stable-dev, I have the libraries and includes. I'm pretty sure my question was correct, it is about setting include & library paths.

Linux veteran & Novice musician

Latest track: https://www.youtube.com/watch?v=ycVrgGtrBmM

User avatar
Linuxmusician01
Established Member
Posts: 1524
Joined: Mon Feb 23, 2015 2:38 pm
Location: Holland
Has thanked: 756 times
Been thanked: 135 times

Re: Airwave VST bridge

Post by Linuxmusician01 »

What is winehq (other than Wine's homepage)? I do not have such an executable on my computer...
Post Reply