Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report on
Developer Community or GitHub with
your current version information, steps to reproduce, and relevant error
messages or log files if you are hitting an issue that looks similar to
this resolved bug and you do not yet see a matching new report.
There should be an overload for SetSampleBufferDelegatequeue (sic) that takes an IAVAudioRecorderDelegate instead of an AVAudioRecorderDelegate so you can use the weak delegate mechanism instead of making a private class for just one method. Also, there's a capitalization typo in the name of the method.
The interface option should likewise be supported by other similar classes (ex: AVCaptureVideoDataOutput).
Correction: IAVCaptureAudioDataOutputSampleBufferDelegate/AVCaptureAudioDataOutputSampleBufferDelegate (not IAVAudioRecorderDelegate/AVAudioRecorderDelegate).
I've added another overload that takes the I* version (and with the correct case for the method name).
I have checked this issue on following builds:
Xamarin Studio : 4.2.4 (build 32)
Xamarin.iOS : 22.214.171.124 (Trial Edition)
Release ID: 402040032
Git revision: a160c35dac9ab9fd32eeadaa171216316d5a5133
Build date: 2014-03-12 13:55:08-04
Xamarin addins: a779416ceabd54981ce812771a4061c942e8b872
I observer that now we have two overload for "SetSampleBufferDelegatequeue", one takes an "AVCaptureAudioDataOutputSampleBufferDelegate" and second one "IAVCaptureAudioDataOutputSampleBufferDelegate" as an argument. I have also checked that the second overload i.e. "SetSampleBufferDelegatequeue" which takes "IAVCaptureAudioDataOutputSampleBufferDelegate" as an argument has correct case for the method name but the first one does not have correct case for that method name . The signature of both method is as following:
1.public virtual void SetSampleBufferDelegatequeue (AVCaptureAudioDataOutputSampleBufferDelegate sampleBufferDelegate, DispatchQueue sampleBufferCallbackDispatchQueue)
2.public void SetSampleBufferDelegateQueue (IAVCaptureAudioDataOutputSampleBufferDelegate sampleBufferDelegate, DispatchQueue sampleBufferCallbackDispatchQueue)
This issue is working fine. Hence, I am closing this issue.