Hi,
I am currently a Phd student from CMU working on a XR project with Vision Pro. I found the latest released enterprise APIs can be really helpful for our project, especially the configuration of the object tracking provider.
However, I found a personal developer account can not access those APIs. And also it requires me to be a founder of the organization of the university when I try to update my account to an organization(CMU). I wonder is there any way to let the student still have a chance to try those fantastic APIs and some research based on them?
I really need those functions and I believe what I am working on is also going to be a great demo of the Vision Pro.
Thanks,
Education
RSS for tagTeach students of all ages to code in Swift using a variety of resources in your curriculum.
Posts under Education tag
14 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
AVAudioEngine and AVAudioSession
Welcome! I will start off with the terms AVAudioEngineImpl::Initialize(NSError**).
Why? I want to make those who run into this issue have to possibility to find this post through Search Engines!
This is short small breakdown based on what I observed while trying to use these two Components. It's not a guide that goes into all the details.
If you're trying to figure out how to fix a crash, you may can find a common way to fix it, in this post!
Is it possible to use AVAudioEngine and AVAudioSession together?
The answer is yes.
But you will face challenges regarding it. Mostly AVAudioEngine. Whatever you're trying to do, it will take a lot of testing. I don't know how it will be with an IDE. But with just .app and iPhone it will take some testing. Or a lot of testing.
Something that helped me fixing a crash was, this here: https://developer.apple.com/documentation/avfaudio/audio_engine/audio_units/using_voice_processing
This example Project by Apple, uses both AVAudioEngine and AVAudioSession.
How can I fix AVAudioEngineImpl::Initialize(NSError**) ?
I think this depends. If you're lucky and have a crash log, you may can find clues, but the stack trace sometimes doesn't really help either.
I will mention common cases that I encountered though.
inputNode
https://developer.apple.com/documentation/avfaudio/avaudioengine/1386063-inputnode
You need an inputNode apparently. You need to access it or else I think there won't be one. And if there isn't one, AVAudioEngine.start will most likely crash.
The audio engine creates a singleton on demand when first accessing this variable.
Doing this has prevented this common issue for me.
.prepare deallocates and can cause a crash if you restart your AudioEngine
Another issue I faced was handling .prepare wrong. You don't need .prepare. But if you use installTap or other things, I think you need it.
Here is a common thing to note.
If you had previous initialized inputNode. Those could be gone after using .prepare.
You have to ensure you're accessing AVAudioEngine.inputNode again before calling .start() or whatever node you need.
The Voice Processing Project, does this by creating a Managing Controller for AVAudioEngine with a sort of "setup" function, which ensures that everything is ready, before .prepare and .start get called.
AVAudioSession's setCategory
You have to experiment with it. The crashes can be very weird. Sometimes your App will only crash once, and then only after you install it again, or if you start it up.
You are actually able to use .setActive and .setCategory with AVAduioEngine. Just do not try to do .setActive(false) before you've stopped the AudioEngine, as it will fail.
Sometimes I'd run into an issue with .setActive(true) so you really have to experiment if leaving that part out resolves the issue or not.
try session.setCategory(.multiRoute, mode: .default, options: [.defaultToSpeaker, .mixWithOthers])
Experiment with it. But these .multiRoute and .mixWithOthers have allowed me to use AVAudioEngine to make a test recording. And I can even switch the Data Sources and Polar Patterns without any issues.
Sometimes you can get away without setting .setActive at all. Not sure if AVAudioEngine does it automatically.
Short Summary
If you use .prepare and then .stop, make sure to initialize things like .inputNode before calling .prepare and .start again. (THIS CAN BE DIFFERENT)
Only call .setActive(false) after you used .stop. Otherwise I believe it has no chance to stop it.
AVAudioSession setCategory is important. Ensure you use mixRoutes or experiment with all the modes.
If you manage to solve your crash, you'll be able to indeed change the Data Sources and Polar Patterns and more!
Use isRunning before using .start, this will save you from another crash. If you use .start while it's already running, I think try and catch won't save you here, you have to ensure you're not starting it twice.
I hope that this short breakdown will help you to resolve your crash. If you get deeper into AVAudioEngine and AVAudioSession, you'll probably face more crashes. I yet, need to figure out how to solve them. I have a lot of trouble to put my Testing App on my iPhone, so I am sorry if this guide didn't cover every detail of it.
A HUGE tip from me is to check the Documentations. As example, when I read the Documentation for inputNode I learned why my app crashed, it's because I never accessed and initialized one.
The Developer Documentation can be a little bit of a laberynth, and I strongly recommend you to read every property you try to access if you believe they cause issues. And I also recommend to find example Projects like the Voice Processing ones. As there aren't any Code Examples in the Documentation.
Is there any good framework that can be used in educational app as Learning Management System (LMS).
Should be full fledge for creating courseware for E Learning App.
Should be compatible with all Apple Platforms.
Any help or link will be greatly appreciated. As I didn't found anything that mentions designed for Xcode. All LMS belong to Web based apps.
I've been relishing Develop in Swift: Fundamentals as an introduction to Swift. It's wonderful!
Having limited time, and ultimately targeting visionOS development, I've reached a point where any UIKit content feels like a distraction from my goals. Hence I'm switching to
SwiftUI Bootcamp by Swiftful Thinking on YouTube, SwiftUI Concepts Tutorials, and SwiftUI Tutorials by Apple.
Is there any official word on updates to the Develop in Swift series? Failing that, any other recommendations on how to bridge between Fundamentals and visionOS development?
who has iPhone 15 pro Max could you tell me the diagonal length of the back panel where the cameras are inserted?
Is there any good LMS framework that can be easily integrated to develop educational apps.
It should have scoring, questionnaire, gamification , certificate generation etc.
Any framework as easy as few lines of code and good payment structure would be good idea.
how do I fix Error Code: 1290. The MySQL server is running with the --secure-file-priv
could some one please guid me how to fix this error in MYSQL
help me with this issue ,it happens when running c in vs code I have everything installed code runner ,c extensions mingw 64 ;help me out
Could you help me translate this logarithmic operation in the swift ui?
Operation:
I am just starting to learn swiftui. I saw a demo where you could drag and drop elements (label, button, slider, etc...)onto the device canvas and then the code would be inserted. I'm using the latest Xcode.
please advise
Apple SwiftUI landmarks tutorial error:
Can someone who has gone through this tutorial help me figure out why when adding the hike view folders from the project resources and its hike JSON data files, does the project appear to start crashing the previews on the canvas? I reverted back to where things were working by removing the project files I was directed to add and now the previews work again.
Hey folks!
I remember some weeks/months ago to get some lessons with updated Swift 5.9, I'm just not sure if this happened while I was using Swift Playgrounds beta from TestFlight.
Anyways, I went back to study using Swift Playgrounds and all the lessons are using Swift 5.8 here.
I don't know what happened or how can I have the lessons updated again.
Anyone else noticed this issue? Any tip on how to solve it?
Hello everyone,
first let me say a few words about myself. I am an IT student and I want to learn and develop some applications in Swift. Now I am working on one application and I need a barcode scanner to complete it. So I need help from someone who can help me with a simple barcode scanner. My idea is that the barcode will be on one screen and they have to read the code and write it to a variable. That's my idea. I will appreciate the full code or help. thank you for answer
Hi Apple IT Developer Team,
In what format should the GetToken response be returned?
The session explains "The JSON Web Token should be signed by the MDM server's private key.", but it seems vague to me.
A sample response would be appreciated.