Post

Replies

Boosts

Views

Activity

Swift 6 concurrency error of passing sending closure
I am getting this error in a couple of places in my code with Task closure after setting Swift 6 as Language version in XCode. Passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure Below is minimally reproducible sample code. import Foundation final class Recorder { var writer = Writer() func startRecording() { Task { await writer.startRecording() print("started recording") } } func stopRecording() { Task { await writer.stopRecording() print("stopped recording") } } } actor Writer { var isRecording = false func startRecording() { isRecording = true } func stopRecording() { isRecording = false } } While making the class Recorder as Actor would fix the problem, I fear I will have to make too many classes as Actors in the class and in my scenario, there could be performance implications where real time audio and video frames are being processed. Further, I don't see any race condition in the code above. Does the error talk about possible race conditions that could arise if I were to call other functions on the self in future, or the current code itself is not safe?
0
2
1.3k
Jan ’25
AVCaptureSession sometimes too slow to start on iOS 14
On iOS 14, when we have AVCaptureSession setup wit AVCaptureVideoDataOutput, AVCaptureAudioDataOutput and also RemoteIO unit configured, AVCaptureSession sometimes takes upto 3-4 seconds to start especially when also changing AVAudioSession category from playback to playAndRecord. Is this because iOS14 is overall slow and buggy in the initial release or something specific to AVFoundation?
1
1
1.4k
Oct ’22
iPhone with iOS 14 beta 2 doesn't autorotate when connected to XCode debugger
I have iPhone 11 Pro running iOS 14 beta 2. In one of my projects (and only that project perhaps), the view controller doesn't autorotate when connected to XCode (11 or 12) debugger. When not connected to debugger, there is no issue in autorotation. This happens for only one particular project and it's not clear what could be blocking autorotation. None of the autorotation methods are called. I wonder what could be blocking autorotation. And if I connect any iOS 13 device, autorotation works with the debugger. Is this a known issue with iOS 14/XCode?
12
0
5.5k
Dec ’21
Cinematic Extended/Cinematic stabilization AV Sync with AVAssetWriter
When using AVCaptureVideoDataOutput/AVCaptureAudioDataOutput & AVAsset writer to record video with cinematic extended video stabilization, the audio lags video upto 1-1.5 seconds and as a result in the video recording, video playback is frozen in the last 1-1.5 seconds. This does not happen when using AVCaptureMovieFileOutput. I want to know if this can be fixed or there is a workaround to synchronize audio/video frames? How does AVCaptureMovieFileOutput handle it?
1
0
1.3k
Aug ’21
Swift 6 concurrency error of passing sending closure
I am getting this error in a couple of places in my code with Task closure after setting Swift 6 as Language version in XCode. Passing closure as a 'sending' parameter risks causing data races between code in the current task and concurrent execution of the closure Below is minimally reproducible sample code. import Foundation final class Recorder { var writer = Writer() func startRecording() { Task { await writer.startRecording() print("started recording") } } func stopRecording() { Task { await writer.stopRecording() print("stopped recording") } } } actor Writer { var isRecording = false func startRecording() { isRecording = true } func stopRecording() { isRecording = false } } While making the class Recorder as Actor would fix the problem, I fear I will have to make too many classes as Actors in the class and in my scenario, there could be performance implications where real time audio and video frames are being processed. Further, I don't see any race condition in the code above. Does the error talk about possible race conditions that could arise if I were to call other functions on the self in future, or the current code itself is not safe?
Replies
0
Boosts
2
Views
1.3k
Activity
Jan ’25
AVCaptureSession sometimes too slow to start on iOS 14
On iOS 14, when we have AVCaptureSession setup wit AVCaptureVideoDataOutput, AVCaptureAudioDataOutput and also RemoteIO unit configured, AVCaptureSession sometimes takes upto 3-4 seconds to start especially when also changing AVAudioSession category from playback to playAndRecord. Is this because iOS14 is overall slow and buggy in the initial release or something specific to AVFoundation?
Replies
1
Boosts
1
Views
1.4k
Activity
Oct ’22
iPhone with iOS 14 beta 2 doesn't autorotate when connected to XCode debugger
I have iPhone 11 Pro running iOS 14 beta 2. In one of my projects (and only that project perhaps), the view controller doesn't autorotate when connected to XCode (11 or 12) debugger. When not connected to debugger, there is no issue in autorotation. This happens for only one particular project and it's not clear what could be blocking autorotation. None of the autorotation methods are called. I wonder what could be blocking autorotation. And if I connect any iOS 13 device, autorotation works with the debugger. Is this a known issue with iOS 14/XCode?
Replies
12
Boosts
0
Views
5.5k
Activity
Dec ’21
iPhone XS stereo recording
Is there a way to get stereo audio on iPhone XS using RemoteIO unit, or any of the CoreAudio APIs? Need to record audio in stereo format.
Replies
10
Boosts
0
Views
2.6k
Activity
Nov ’21
kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange to RGB
I have CVPixelBuffer's in kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange, which is 10 bit HDR. I need to convert these to RGB and display in MTKView. I need to know the correct pixel format to use, the BT2020 conversion matrix, and displaying the 10 bit RGB pixel buffer in MTKView.
Replies
1
Boosts
0
Views
1.4k
Activity
Oct ’21
Cinematic Extended/Cinematic stabilization AV Sync with AVAssetWriter
When using AVCaptureVideoDataOutput/AVCaptureAudioDataOutput & AVAsset writer to record video with cinematic extended video stabilization, the audio lags video upto 1-1.5 seconds and as a result in the video recording, video playback is frozen in the last 1-1.5 seconds. This does not happen when using AVCaptureMovieFileOutput. I want to know if this can be fixed or there is a workaround to synchronize audio/video frames? How does AVCaptureMovieFileOutput handle it?
Replies
1
Boosts
0
Views
1.3k
Activity
Aug ’21