Post

Replies

Boosts

Views

Activity

Reply to Gaussian Splats, Ingestion + Mesh Interop
https://www.linkedin.com/posts/dzeitman_wwdc2026-gaussians-ar-activity-7470283907423236097-v_es?utm_source=share&utm_medium=member_ios&rcm=ACoAAAAN0PsBjQbuJ99ns7x4DOWVAjNAO9dndOo my post explains the current limitations of Reality Kit and the limitations of the demo. 200,000 splats is really tight. Apple needs to consider removing this restriction or at least optimize for a 500,000 splats. The sample app uses a non-standard PLY. In order to make it work with industry standard PLY you need to rework the parser the Sample app.
Topic: Reality Composer Pro SubTopic:
RealityKit & Reality Composer Pro Q&A
1w
Reply to How to play Music Videos with MusicKit for Swift?
We'd live to understand why it's not possible via the API. Video Previews are available. It seems to me that if an Apple Music Subscriber authenticates within your MusicKit app developers should be able to write music kit apps that also play video content. The suggested workaround is NOT a great experience, the preloading sequence brings the user to a random looking view state before loading the video. The video's audio is clipped and pops during this loading sequence. Developer wanting to re-skin the interface need full access to the applications player. MusicKit is awesome with this major oversight and omission as an exception. Calling the Apple Music API also fails to return the actual video URL Pleas explain a better work around.
Topic: Media Technologies SubTopic: General Tags:
Aug ’24
Reply to VisionFramework does not work with VisionOS2.0
Vision Framework for GenerateForegroundMask does NOT work on VisionOS 2.0 (Beta 5) See example code: func analyse() async { guard let selectedImage = selectedImage else { return } let ciImage = CIImage(image: selectedImage) let handler = VNImageRequestHandler(ciImage: ciImage!, options: [:]) let request = VNGenerateForegroundInstanceMaskRequest { request, error in DispatchQueue.main.async { self.isProcessing = false if let error = error { print("Error: \(error.localizedDescription)") return } guard let results = request.results as? [VNPixelBufferObservation], let pixelBuffer = results.first?.pixelBuffer else { print("No results found") return } let ciImage = CIImage(cvPixelBuffer: pixelBuffer) let context = CIContext() if let cgImage = context.createCGImage(ciImage, from: ciImage.extent) { self.processedImage = UIImage(cgImage: cgImage) } } } // Configure the Vision request with preferred compute device do { // Query supported devices for each compute stage (handle potential errors) let supportedDevices = try request.supportedComputeStageDevices print("Supported Devices: \(supportedDevices)") // Check the available devices for the main compute stage if let mainStageDevices = supportedDevices[.main] { print("Main Stage Devices: \(mainStageDevices)") // Try to set the Neural Engine first, then GPU, and finally CPU (if applicable) var selectedDevice: MLComputeDevice? = nil if let neuralEngineDevice = mainStageDevices.first(where: { "\($0)".contains("NeuralEngine") }) { selectedDevice = neuralEngineDevice print("Selected Neural Engine: \(neuralEngineDevice)") } else if let gpuDevice = mainStageDevices.first(where: { "\($0)".contains("GPU") }) { selectedDevice = gpuDevice print("Selected GPU: \(gpuDevice)") } else if let cpuDevice = mainStageDevices.first(where: { "\($0)".contains("CPU") }) { selectedDevice = cpuDevice print("Selected CPU: \(cpuDevice)") } else { print("No preferred device found, using default.") } // Set the selected compute device, if any if let selectedDevice = selectedDevice { try request.setComputeDevice(selectedDevice, for: .main) } } } catch { print("Failed to configure Vision request compute device: \(error)") } #if targetEnvironment(simulator) request.usesCPUOnly = true #endif if #available(iOS 14.0, *) { request.usesCPUOnly = true } do { try handler.perform([request]) } catch { DispatchQueue.main.async { self.isProcessing = false print("Failed to perform request: \(error.localizedDescription)") } } }```
Topic: Spatial Computing SubTopic: General Tags:
Aug ’24
Reply to Gaussian Splats, Ingestion + Mesh Interop
https://www.linkedin.com/posts/dzeitman_wwdc2026-gaussians-ar-activity-7470283907423236097-v_es?utm_source=share&utm_medium=member_ios&rcm=ACoAAAAN0PsBjQbuJ99ns7x4DOWVAjNAO9dndOo my post explains the current limitations of Reality Kit and the limitations of the demo. 200,000 splats is really tight. Apple needs to consider removing this restriction or at least optimize for a 500,000 splats. The sample app uses a non-standard PLY. In order to make it work with industry standard PLY you need to rework the parser the Sample app.
Topic: Reality Composer Pro SubTopic:
RealityKit & Reality Composer Pro Q&A
Replies
Boosts
Views
Activity
1w
Reply to I can’t complete assistant setup up in Reality Composer Pro 3 beta
I was able to get it to connect with ollama, however when it began a conversation, it worked once and then came back with errors when I tried to have it generate an image.
Replies
Boosts
Views
Activity
1w
Reply to How to play Music Videos with MusicKit for Swift?
We'd live to understand why it's not possible via the API. Video Previews are available. It seems to me that if an Apple Music Subscriber authenticates within your MusicKit app developers should be able to write music kit apps that also play video content. The suggested workaround is NOT a great experience, the preloading sequence brings the user to a random looking view state before loading the video. The video's audio is clipped and pops during this loading sequence. Developer wanting to re-skin the interface need full access to the applications player. MusicKit is awesome with this major oversight and omission as an exception. Calling the Apple Music API also fails to return the actual video URL Pleas explain a better work around.
Topic: Media Technologies SubTopic: General Tags:
Replies
Boosts
Views
Activity
Aug ’24
Reply to How to play Music Videos with MusicKit for Swift?
Could you provide instructions on how to use the application player vs the system player with this work around. MPMusicPlayerController.systemMusicPlayer.openToPlay(queueDescriptor)
Topic: Media Technologies SubTopic: General Tags:
Replies
Boosts
Views
Activity
Aug ’24
Reply to VisionFramework does not work with VisionOS2.0
Vision Framework for GenerateForegroundMask does NOT work on VisionOS 2.0 (Beta 5) See example code: func analyse() async { guard let selectedImage = selectedImage else { return } let ciImage = CIImage(image: selectedImage) let handler = VNImageRequestHandler(ciImage: ciImage!, options: [:]) let request = VNGenerateForegroundInstanceMaskRequest { request, error in DispatchQueue.main.async { self.isProcessing = false if let error = error { print("Error: \(error.localizedDescription)") return } guard let results = request.results as? [VNPixelBufferObservation], let pixelBuffer = results.first?.pixelBuffer else { print("No results found") return } let ciImage = CIImage(cvPixelBuffer: pixelBuffer) let context = CIContext() if let cgImage = context.createCGImage(ciImage, from: ciImage.extent) { self.processedImage = UIImage(cgImage: cgImage) } } } // Configure the Vision request with preferred compute device do { // Query supported devices for each compute stage (handle potential errors) let supportedDevices = try request.supportedComputeStageDevices print("Supported Devices: \(supportedDevices)") // Check the available devices for the main compute stage if let mainStageDevices = supportedDevices[.main] { print("Main Stage Devices: \(mainStageDevices)") // Try to set the Neural Engine first, then GPU, and finally CPU (if applicable) var selectedDevice: MLComputeDevice? = nil if let neuralEngineDevice = mainStageDevices.first(where: { "\($0)".contains("NeuralEngine") }) { selectedDevice = neuralEngineDevice print("Selected Neural Engine: \(neuralEngineDevice)") } else if let gpuDevice = mainStageDevices.first(where: { "\($0)".contains("GPU") }) { selectedDevice = gpuDevice print("Selected GPU: \(gpuDevice)") } else if let cpuDevice = mainStageDevices.first(where: { "\($0)".contains("CPU") }) { selectedDevice = cpuDevice print("Selected CPU: \(cpuDevice)") } else { print("No preferred device found, using default.") } // Set the selected compute device, if any if let selectedDevice = selectedDevice { try request.setComputeDevice(selectedDevice, for: .main) } } } catch { print("Failed to configure Vision request compute device: \(error)") } #if targetEnvironment(simulator) request.usesCPUOnly = true #endif if #available(iOS 14.0, *) { request.usesCPUOnly = true } do { try handler.perform([request]) } catch { DispatchQueue.main.async { self.isProcessing = false print("Failed to perform request: \(error.localizedDescription)") } } }```
Topic: Spatial Computing SubTopic: General Tags:
Replies
Boosts
Views
Activity
Aug ’24
Reply to How to play 3D videos in immersive mode?
Any find a solution?
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Feb ’24