Post

Replies

Boosts

Views

Activity

Reply to Error OSSystemExtensionErrorDomain Code=4 "(null)"
In some condition, like kill app pocess during OSSystemExtensionManager.shared.submitRequest(), CameraExtension go into unstable condition. Normal uninstall is not possible. I need to do Reboot MacBook with recovery mode run "csrutil disatble" Reboot run "systemextensionsctl uninstall [teamID] [BundleID]" Reboot with recovery mode run "csrutil enable" Reboot
Topic: App & System Services SubTopic: Drivers Tags:
Jan ’24
Reply to Error OSSystemExtensionErrorDomain Code=4 "(null)"
I made sure my camera extension is installed and activated With command "systemextensionsctl list" and my camera extension is listed with "[activated enabled]" Host app calls API OSSystemExtensionManager.shared.submitRequest with OSSystemExtensionRequest.propertiesRequest. OSSystemExtensionRequestDelegate.foundProperties is called with my extension's bundle ID.
Topic: App & System Services SubTopic: Drivers Tags:
Jan ’24
Reply to CameraExtension and Uninstaller
I delete hosting app by "Finder" -> "/Applications/MyApp.app" -> "Move to Trash". But "systemextensionsctl list" still says "[Activated and Enabled]" on MyApp's CameraExtension. I tested with "sudo rm -rf /Applications/MyApp.app". Same result, MyApp's CameraExtensions is still activated and enabled. Currently I need to implement these tasks. Uninstaller calls the hosting app with "uninst" argument. Hosting App with "uninst", open app with blank view. Deactivate the extension and quit Uninstaller delete other items like /Library/Audio/Plug-Ins/HAL/MyAudio.driver Uninstaller delete /Applications/MyApp.app
Topic: App & System Services SubTopic: General Tags:
Jan ’24
Reply to CameraExtension and Uninstaller
you don't really need an uninstaller - everything goes away when the user deletes the app. My app installed CameraExtension and audio driver under /Library/Audio/Plug-Ins/HAL/MyAudio.driver After user delete my app under /Applications, the driver files under /Library/Audio/Plug-Ins/HAL/MyAudio.driver still exists. I need to provide uninstaller for deleting audio driver. OS will take care of unloading the extension I found OS only take care of unloading camera extension. OS does not take care Audio Extension. com.my.app.unisntaller is typo. Correct ID is com.my.app.uninstaller. I like to know which Bundle ID can deactivate "com.my.app.cameraex". "com.my.app" only or "com.my.app.[anyID]"
Topic: App & System Services SubTopic: General Tags:
Jan ’24
Reply to CMIO Camera Extension and debug log
I found a way. Install Camera Extension by OSSystemExtensionManager.shared.submitRequest and OSSystemExtensionRequest.activationRequest Start FaceTime or Quick Camera app, select your camera extension as video source. Check PID of your Camera extension by ps -ae | grep com.example.YourCameraExtension Run command log show --predicate 'processID == [PID]' --info You can see NSLog output from your Camera Extension If someone has easier way, please let me know.
Topic: App & System Services SubTopic: General Tags:
Nov ’23
Reply to h264 encoder with wrong frame order
I pass setting by encoderSpec dictionary wrong way with value:false. I need to use kCFBooleanFalse. Better way is calling VTSessionSetProperty and check status. status = VTSessionSetProperty(vtCompressionSession, key: kVTCompressionPropertyKey_AllowFrameReordering, value: kCFBooleanFalse)
Topic: Media Technologies SubTopic: Video Tags:
Jan ’23