AAX wrapper can't handle unicode track names


I’m developing a plugin that needs to support unicode characters. It also gets the name of the track it’s placed on from the host. The VST3 version works well but if I set a unicode string as the name of the track it shows up as garbage in Pro Tools.

Attaching a debugger shows an assertion in String::String (const char* const t) saying that I’m trying to create a string from non-ASCII data. This is called from JuceAAX_Processor::NotificationReceived() (link to the code) which treats the incoming data as an ASCII string.

I’m thinking about adding some logic in the wrapper to check the encoding of the received string, is that even possible?

Has anyone encountered this? What’s your quick and dirty fix?

I’m currently on version 6.0.1.

Thanks for your help in advance!

Looks to me like

props.name = static_cast<const AAX_IString*> (data)->Get();

probably should be

props.name = String::fromUTF8 (static_cast<const AAX_IString*> (data)->Get());
1 Like

Thanks, that actually solves it