MapboxSpeech 2.1.1

MapboxSpeech 2.1.1

Victor KononovMapboxAliaksandr Bialiauski 维护。



Mapbox Speech

CircleCI codecov Carthage compatible CocoaPods SPM compatible

Mapbox Speech 可将您的 iOS、macOS、tvOS 或 watchOS 应用程序连接到 Mapbox Voice API。从 Mapbox Directions API 获取转向指令并以多种语言自然地读出。此库专门设计为与 mapbox-directions-swift 配合使用,作为 Mapbox Navigation SDK for iOS 的一部分。

此库与用 Swift编写的应用程序兼容。版本 2.0 是此库支持用 Objective-C 或 AppleScript 编写的应用程序的最后一个版本。

入门

在您的 Carthage Cartfile 中指定以下依赖

github "mapbox/mapbox-speech-swift" ~> 2.1

或者在您的 CocoaPods Podfile 中

pod 'MapboxSpeech', '~> 2.1'

或者在您的 Swift Package Manager Package.swift 中

.package(url: "https://github.com/mapbox/mapbox-speech-swift.git", from: "2.1.1")

然后 import MapboxSpeech@import MapboxSpeech;

使用方法

要使用 API,您需要一个 Mapbox 访问令牌。如果您已经使用 Mapbox Maps SDK for iOSmacOS SDK,只要将访问令牌置于应用程序 Info.plist 文件的 MBXAccessToken 密钥中,Mapbox Speech 就会自动识别您的访问令牌。

基本内容

主要的语音合成类是SpeechSynthesizer。使用您的访问令牌创建语音合成对象

import MapboxSpeech

let speechSynthesizer = SpeechSynthesizer(accessToken: "<#your access token#>")

或者,您可以将访问令牌放置在应用程序的Info.plist文件中的MBXAccessToken键,然后使用共享的语音合成对象

// main.swift
let speechSynthesizer = SpeechSynthesizer.shared

手头有了方向对象后,构建一个SpeechOptions或MBSpeechOptions对象,将其传递到SpeechSynthesizer.audioData(with:completionHandler:)方法中。

// 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!
}