Pidato Mapbox Menghubungkan aplikasi iOS, macOS, TVOS, atau WatchOS Anda ke API Voice Mapbox. Ambil instruksi dari API Arah Mapbox dan bacalah dengan keras secara alami dalam berbagai bahasa. Perpustakaan ini secara khusus dirancang untuk bekerja dengan mapbox-direction-swift sebagai bagian dari SDK navigasi Mapbox untuk iOS.
Perpustakaan ini kompatibel dengan aplikasi yang ditulis dalam Swift. Versi 2.0 adalah versi terakhir dari perpustakaan ini untuk mendukung aplikasi yang ditulis dalam Objective-C atau Applescript.
Tentukan ketergantungan berikut di cartfile carthage Anda:
github "mapbox/mapbox-speech-swift" ~> 2.1
Atau di podfile cocoapods Anda:
pod 'MapboxSpeech' , '~> 2.1'Atau dalam paket paket manajer swift Anda.swift:
. package ( url : " https://github.com/mapbox/mapbox-speech-swift.git " , from : " 2.1.1 " ) Kemudian import MapboxSpeech atau @import MapboxSpeech; .
Anda akan memerlukan token akses mapbox untuk menggunakan API. Jika Anda sudah menggunakan SDK MapBox Maps untuk iOS atau MacOS SDK, pidato MapBox secara otomatis mengenali token akses Anda, selama Anda meletakkannya di kunci MBXAccessToken dari file info.plist aplikasi Anda.
Kelas sintesis ucapan utama adalah SpeechSynthesizer . Buat Objek Synthesizer Pidato Menggunakan Token Akses Anda:
import MapboxSpeech
let speechSynthesizer = SpeechSynthesizer ( accessToken : " <#your access token#> " ) Atau, Anda dapat menempatkan token akses Anda di kunci MBXAccessToken dari file info.plist aplikasi Anda, kemudian gunakan objek Synthesizer Pidato Bersama:
// main.swift
let speechSynthesizer = SpeechSynthesizer . shared Dengan objek Arah di tangan, buat objek Pidato atau MBSPEECHOPTIONS dan masukkan ke dalam SpeechSynthesizer.audioData(with:completionHandler:) Metode.
// main.swift
let options = SpeechOptions ( text : " hello, my name is Bobby " )
speechSynthesizer . audioData ( with : options ) { ( data : Data ? , error : NSError ? ) in
guard error == nil else {
print ( " Error calculating directions: ( error! ) " )
return
}
// Do something with the audio!
}