On further investigation, I see the problem happens only when stereo format is configured on the microphone as follows. The code works perfectly on iOS 14 devices, only on iOS 15 devices it causes RemoteIO unit to emit silent audio frames. Is there any known workaround for the same? I have filed a bug FB9393169 along with reproducible sample code.
public func selectStereoFormatForBuiltinMic(_ orientation:AVAudioSession.Orientation) -> Bool {
var configuredStereo = false
if #available(iOS 14.0, *) {
let session = AVAudioSession.sharedInstance()
guard let preferredInput = session.preferredInput,
let dataSources = preferredInput.dataSources,
let newDataSource = dataSources.first(where: { $0.orientation == orientation }),
let supportedPolarPatterns = newDataSource.supportedPolarPatterns else {
return false
}
do {
supportsStereo = supportedPolarPatterns.contains(.stereo)
// If the data source supports stereo, set it as the preferred polar pattern.
if supportsStereo {
// Set the preferred polar pattern to stereo.
try newDataSource.setPreferredPolarPattern(.stereo)
configuredStereo = true
}
// Set the preferred data source and polar pattern.
try preferredInput.setPreferredDataSource(newDataSource)
// Update the input orientation to match the current user interface orientation.
try session.setPreferredInputOrientation(stereoOrientation)
} catch {
NSLog("Unable to select stereo \(error)")
configuredStereo = false
}
}
return configuredStereo
}
Post
Replies
Boosts
Views
Activity
It does not work anymore on iOS 15 beta, all Audio samples delivered by RemoteIO are silent when stereo orientation is configured in AVAudioSession. I have filed a bug FB9393169 along with reproducible sample code.
Dear Core Audio/AVFoundation engineers,
Any update on this bug? Is this a known issue for you guys? If not, is this expected to be fixed in upcoming iOS 15 betas?
Even the Stereo Audio Capture sample code by Apple fails on iOS 15 beta 3.
https://developer.apple.com/documentation/avfaudio/avaudiosession/capturing_stereo_audio_from_built-in_microphones
Still seen on iOS 15 beta 4. Stereo Audio Capture sample code is broken!
The issue is seen in iOS 15 beta 4 as well. Stereo Audio Capture sample code is completely broken.
Still not fixed in iOS 15 beta 5. Looks like iOS 15 main release is going to have broken stereo audio API
Broken in iOS 15 beta 5 as well!
Still not fixed in iOS 15 beta 6!
Broken in iOS 15 beta 6 as well!
I already filed a bug FB9393169 and the status is updated as "Resolution:Potential fix identified - In iOS 15". Not sure what this means. Because if this will be fixed in main iOS 15 release, then I don't need to do anything. But if it will not be fixed in iOS 15.0, then I will need to immediately update app and disable stereo capture else I risk lot of 1 star reviews.
Here is the sample code with which the bug can be reproduced. It works flawlessly on XCode 12 but not on XCode 13 beta
https://github.com/JoshuaSullivan/MetalKernel
Even I have this issue.
Dear Apple Engineers,
Can you please shed more light on this on why sourceFrame(byTrackId:) sometimes returns nil while seeking with AVPlayer seekTolerance set to .zero? Is it a bug? I have built my project using XCode 13 beta 5 but running it on iOS 14 device.
Looks like this bug still persists in iOS 15 as well. I see this when I have three videos with transition between first two. The returned frame on seek is incorrect, the only way to reset the player to display current frame is by firing AVPlayer.play(). I wonder how such basic bugs persist even after 10 years of AVFoundation framework release!