Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh berikut menggunakan SDK iOS untuk Amazon Polly untuk membaca teks yang ditentukan menggunakan suara yang dipilih dari daftar suara.
Kode yang ditampilkan di sini mencakup tugas-tugas utama tetapi tidak menangani kesalahan. Untuk kode lengkapnya, lihat demo AWS Mobile SDK for iOS Amazon Polly
Inisialisasi
// Region of Amazon Polly. let AwsRegion = AWSRegionType.usEast1 // Cognito pool ID. Pool needs to be unauthenticated pool with // Amazon Polly permissions. let CognitoIdentityPoolId = "
YourCognitoIdentityPoolId
" // Initialize the Amazon Cognito credentials provider. let credentialProvider = AWSCognitoCredentialsProvider(regionType: AwsRegion, identityPoolId: CognitoIdentityPoolId) // Create an audio player var audioPlayer = AVPlayer()
Dapatkan Daftar Suara yang Tersedia
// Use the configuration as default
AWSServiceManager.default().defaultServiceConfiguration = configuration
// Get all the voices (no parameters specified in input) from Amazon Polly
// This creates an async task.
let task = AWSPolly.default().describeVoices(AWSPollyDescribeVoicesInput())
// When the request is done, asynchronously do the following block
// (we ignore all the errors, but in a real-world scenario they need
// to be handled)
task.continue(successBlock: { (awsTask: AWSTask) -> Any? in
// awsTask.result is an instance of AWSPollyDescribeVoicesOutput in
// case of the "describeVoices" method
let voices = (awsTask.result! as AWSPollyDescribeVoicesOutput).voices
return nil
})
Sintesis Pidato
// First, Amazon Polly requires an input, which we need to prepare.
// Again, we ignore the errors, however this should be handled in
// real applications. Here we are using the URL Builder Request,
// since in order to make the synthesis quicker we will pass the
// presigned URL to the system audio player.
let input = AWSPollySynthesizeSpeechURLBuilderRequest()
// Text to synthesize
input.text = "Sample text"
// We expect the output in MP3 format
input.outputFormat = AWSPollyOutputFormat.mp3
// Choose the voice ID
input.voiceId = AWSPollyVoiceId.joanna
// Create an task to synthesize speech using the given synthesis input
let builder = AWSPollySynthesizeSpeechURLBuilder.default().getPreSignedURL(input)
// Request the URL for synthesis result
builder.continueOnSuccessWith(block: { (awsTask: AWSTask<NSURL>) -> Any? in
// The result of getPresignedURL task is NSURL.
// Again, we ignore the errors in the example.
let url = awsTask.result!
// Try playing the data using the system AVAudioPlayer
self.audioPlayer.replaceCurrentItem(with: AVPlayerItem(url: url as URL))
self.audioPlayer.play()
return nil
})