Audio opnemen
Leg microfoongeluid vast in een bestand.
Audio opnemen is een gratis Swift Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Swift Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Swift Academy bevat in totaal 4 lessen.
Opnemen met AVAudioRecorder
AVAudioRecorder legt met minimale configuratie audio van de microfoon vast in een bestand—ideaal voor gesproken memo's en eenvoudige recorders.
import AVFoundationMicrofoonmachtiging
Voor opnemen is toestemming van de gebruiker nodig. Voeg NSMicrophoneUsageDescription toe aan Info.plist en vraag toegang aan voordat je begint met opnemen.
AVAudioApplication.requestRecordPermission { granted in
if granted { /* start recording */ }
}De audiosessie configureren
Stel de sessiecategorie in op .record of .playAndRecord en activeer de sessie, zodat het systeem de microfooningang naar je app stuurt.
let session = AVAudioSession.sharedInstance()
try session.setCategory(.playAndRecord)
try session.setActive(true)Een bestands-URL kiezen
Opnamen worden naar een bestand geschreven. Maak een URL in de documentenmap met een geschikte extensie, zoals .m4a.
let dir = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)[0]
let url = dir.appendingPathComponent("memo.m4a")Recorderinstellingen
Instellingen bepalen het formaat, de samplefrequentie, het aantal kanalen en de kwaliteit via een woordenboek met AVAudioRecorder-sleutels.
let settings: [String: Any] = [
AVFormatIDKey: Int(kAudioFormatMPEG4AAC),
AVSampleRateKey: 44100,
AVNumberOfChannelsKey: 1,
AVEncoderAudioQualityKey: AVAudioQuality.high.rawValue
]De recorder maken
Initialiseer AVAudioRecorder met de URL en instellingen en roep daarna prepareToRecord() aan om bronnen toe te wijzen.
let recorder = try AVAudioRecorder(url: url, settings: settings)
recorder.prepareToRecord()Starten en stoppen
Roep record() aan om te beginnen en stop() om af te ronden. Stoppen voltooit en sluit het audiobestand.
recorder.record()
// later
recorder.stop()Opnemen met tijdslimiet en pauzeren
Je kunt gedurende een vaste tijd opnemen met record(forDuration:). Met pause() en record() hervat je de opname in hetzelfde bestand.
recorder.record(forDuration: 30) // stop after 30sNiveaus meten
Schakel isMeteringEnabled in, roep daarna updateMeters() aan en lees averagePower(forChannel:) uit om een live niveaumeter aan te sturen.
recorder.isMeteringEnabled = true
recorder.updateMeters()
let power = recorder.averagePower(forChannel: 0) // in dBDe gedelegeerde
Laat je type voldoen aan AVAudioRecorderDelegate om te weten wanneer de opname succesvol is voltooid of wanneer er een codeerfout optreedt.
func audioRecorderDidFinishRecording(_ recorder: AVAudioRecorder,
successfully flag: Bool) {
print("finished: \(flag)")
}Het resultaat afspelen
Speel het bestand na het opnemen af met AVAudioPlayer, gericht op dezelfde URL—een snelle manier om de opname te controleren.
let player = try AVAudioPlayer(contentsOf: url)
player.play()Korte controle: opnemen
Test je begrip van audio opnemen.
Samenvatting: audio opnemen
AVAudioRecorder legt microfoonaudio vast in een bestand nadat je toestemming hebt gevraagd en een opname-AVAudioSession hebt geactiveerd. Geef een URL en een instellingenwoordenboek op (formaat, samplefrequentie, kanalen, kwaliteit), roep prepareToRecord() aan en daarna record()/stop().
Schakel meten in voor live niveaus, gebruik de gedelegeerde voor voltooiingsmeldingen en speel de opname af met AVAudioPlayer om deze te controleren.
Leer Swift met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 122
- Lessen
- 409
Veelgestelde vragen
Is de les “Audio opnemen” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Swift Academy, waaronder “Audio opnemen”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Swift Academy bevat in totaal 4 lessen.
Wat leer ik in “Audio opnemen”?
Leg microfoongeluid vast in een bestand. Je oefent met Swift Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Swift Academy te beginnen?
Ervaring vooraf is niet nodig. Swift Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “Audio opnemen”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Swift Academy?
Ja. Elke les over Swift Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.