Unity Project
Built with Unity 2019.4.40f1 ยท download the source from GitHub
README
UnityOpus ๐
Note: A UPM fork of UnityOps by TyounanMOTI with some XML comments. The original project is sponsored by Cluster, Inc.
๐ฃ Concentus for Unity, a pure C# port of Opus without any native libraries is available HERE.
Installation ๐ฆ
Ensure you have the NPM registry in the packages.json file of your Unity project with com.adrenak.unityops as one of the scopes
"scopedRegistries": [
{
"name": "npmjs",
"url": "https://registry.npmjs.org",
"scopes": [
"com.npmjs",
"com.adrenak.unityopus"
]
}
}
Add "com.adrenak.unityopus" : "x.y.z" to dependencies list in packages.json file where x.y.z is the version name
Tip
The Encoder.Encode returns an int.
If it's > 0, encoding succeeded and this int represents the length of the encoded audio in the output array. You'll need to copy the encoded audio from the output.
If it's < 0, encoding has failed and the int actually represents the error code
// Assuming pcm is the float[] you want to encode
// The output array should be equal to the pcm array size in bytes, hence multuplied by 4
byte[] output = new byte[pcm.Length * 4];
int encodeResult = encoder.Encode(pcm, output);
if(encodedResult > 0) {
byte[] encodedBytes = new byte[encodeResult];
Array.Copy(encodeBuffer, encodedBytes, encodedBytes.Length);
// encodedBytes now has the encoded audio ready for your use
}
else {
// Get the error
ErrorCode errorCode = (ErrorCode)encodeResult;
}
Contact ๐ฅ
Comments
No comments yet. Be the first!
Sign in to join the conversation
Sign In