-
Create a seamless speech experience in your apps
Augment your app's accessibility experience with speech synthesis: Discover the best times and places to add speech APIs so that everyone who uses your app can benefit. Learn how to use AVSpeechSynthesizer to complement assistive technologies like VoiceOver, and when to implement alternative APIs. And we'll show you how to route audio to the appropriate source and create apps that integrate speech seamlessly for all who need or want it.
To get the most out of this session, you should be familiar with AVFoundation and the basics of speech synthesis. For an overview, watch “AVSpeechSynthesizer: Making iOS Talk.”Ressources
Vidéos connexes
WWDC23
WWDC19
-
Rechercher dans cette vidéo…
-
-
1:25 - Post an Announcement to the Running Assistive Technology
UIAccessibility.post(notification: .announcement, argument: "Hello World") -
2:55 - Getting Started with AVSpeechSynthesizer
self.synthesizer = AVSpeechSynthesizer() let utterance = AVSpeechUtterance(string: "Hello World") self.synthesizer.speak(utterance) -
4:08 - Respecting the Currently Running Assistive Technology's Speech Settings
self.synthesizer = AVSpeechSynthesizer() let utterance = AVSpeechUtterance(string: "Hello World") utterance.prefersAssistiveTechnologySettings = true self.synthesizer.speak(utterance) -
5:42 - Customizing Speech - Choosing a Voice
let utterance = AVSpeechUtterance(string: "Hello World") // Choose a voice using a language code utterance.voice = AVSpeechSynthesisVoice(language: "en-US") // Choose a voice using an identifier utterance.voice = AVSpeechSynthesisVoice(identifier: AVSpeechSynthesisVoiceIdentifierAlex) // Get a list of installed voices let voices = AVSpeechSynthesisVoice.speechVoices() -
6:16 - Customizing Speech - Pitch and Rate
let utterance = AVSpeechUtterance(string: "Hello World") // Choose a rate between 0 and 1, 0.5 is the default rate utterance.rate = 0.75 // Choose a pitch multiplier between 0.5 and 2, 1 is the default multiplier utterance.pitchMultiplier = 1.5 // Choose a volume between 0 and 1, 1 is the default value utterance.volume = 0.5 -
6:34 - Mix Speech With an Outgoing Call
self.synthesizer = AVSpeechSynthesizer() self.synthesizer.mixToTelephonyUplink = true -
7:02 - Opting Speech Out of Application's Audio Session
self.synthesizer = AVSpeechSynthesizer() self.synthesizer.usesApplicationAudioSession = false
-