-
Notifications
You must be signed in to change notification settings - Fork 516
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[AudioToolbox] Add support for xcode 14 beta6. #15877
[AudioToolbox] Add support for xcode 14 beta6. #15877
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Manual bindings need manual tests too :)
src/AudioUnit/AudioComponent.cs
Outdated
[MacCatalyst (16,0)] | ||
#endif | ||
public AudioComponentValidationResult Validate (NSDictionary validationParameters) { | ||
var success = AudioComponentValidate (GetCheckedHandle (), validationParameters.GetNonNullHandle (nameof (validationParameters)), out var result); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The header says validationParameters
can be null.
src/AudioUnit/AudioComponent.cs
Outdated
var block_handler= new BlockLiteral (); | ||
block_handler.SetupBlockUnsafe (static_action, onCompletion); | ||
try { | ||
AudioComponentValidateWithResults (GetCheckedHandle (), validationParameters.GetNonNullHandle (nameof (validationParameters)), ref block_handler); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same, headers say validationParameters
can be null.
var success = AudioComponentValidate (GetCheckedHandle (), validationParameters.GetNonNullHandle (nameof (validationParameters)), out var result); | ||
if (success == 0) | ||
return result; | ||
return AudioComponentValidationResult.Unknown; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Your managed bindings have one thing in common: they don't expose the returned OSStatus from the native functions. This return value can be valuable when trying to diagnose why calls to these methods fail, so we often provide another overload that users can use to get this value. In this particular case that could be something like:
public AudioComponentValidationResult Validate (NSDictionary validationParameters, out int resultCode)
{
...
}
This goes for all the new API.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Other than this, LGTM
On = 1, | ||
[NoiOS, NoTV] | ||
Auto = 2, | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm why add tv and ios support if none of the enums support it?
src/AudioUnit/AudioComponent.cs
Outdated
#endif | ||
public NSDictionary? ConfigurationInfo { | ||
get { | ||
var success = AudioComponentCopyConfigurationInfo (GetCheckedHandle (), out var dictPtr); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one is also needs an overload (or really a method, since this is a property)
|
||
var componentInfo = new AudioComponentInfo (); | ||
componentInfo.Type = AudioTypeOutput.Generic.ToString (); | ||
componentInfo.Subtype = "XMPL"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: extra space before "XMPL"
|
||
var componentInfo = new AudioComponentInfo (); | ||
componentInfo.Type = AudioTypeOutput.Generic.ToString (); | ||
componentInfo.Subtype = "XMPL"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
|
||
var componentInfo = new AudioComponentInfo (); | ||
componentInfo.Type = AudioTypeOutput.Generic.ToString (); | ||
componentInfo.Subtype = "XMPL"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
💻 [PR Build] Tests on macOS Mac Catalina (10.15) passed 💻✅ All tests on macOS Mac Catalina (10.15) passed. Pipeline on Agent |
✅ API diff for current PR / commitLegacy Xamarin (No breaking changes).NET (No breaking changes)✅ API diff vs stableLegacy Xamarin (No breaking changes).NET (No breaking changes)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
❌ [PR Build] Tests on macOS M1 - Mac Big Sur (11.5) failed ❌Failed tests are:
Pipeline on Agent |
🔥 [CI Build] Test results 🔥Test results❌ Tests failed on VSTS: simulator tests 0 tests crashed, 1 tests failed, 119 tests passed. Failures❌ introspection tests
Html Report (VSDrops) Download Successes✅ fsharp: All 7 tests passed. Html Report (VSDrops) Download Pipeline on Agent |
No description provided.