Hello Team.
I may have found an upper boundary when encoding data associated with a custom FxPlug parameter (I'm testing with Motion 2).
My custom param has the NSCoding protocol (and nothing else, really).
In my -encodeWithEncoder, I convert my data to a data buffer and then store it with:
[coder encodeBytes: (const void *) buff
length:buffSize];
This seems to work ok, but it's difficult to tell when looking at the saved .motn file since the data is encoded.
However, when I load the file and -initWithCoder is called, I invoke:
buff = (unsigned char *) [coder decodeBytesWithReturnedLength:&buffSize] ;
"buff" comes back non-null, and buffSize seems to be correct, but the second I try to access any data in buff, I get an access exemption, as if buff is corrupt.
This seems to only happen when the data I write is more than 15,000 bytes. If I save less than 15K, the data seems to come back ok.
Is this a known issue? Is there another way to encode the data that may work better?