有没有办法知道Swift下载语音模型需要多长时间?
Try using OSSSpeechKit
. It works without a model. Here's the link: https://cocoapods.org/pods/OSSSpeechKit#speech-to-text .
Example Code:
import UIKit
import OSSSpeechKit
class ViewController: UIViewController, OSSSpeechDelegate {
let speechKit = OSSSpeech.shared
func didCompleteTranslation(withText text: String) {
textView.text = text
}
func didFailToProcessRequest(withError error: Error?) {
let alert = UIAlertController(title: "Error Processing Request", message: "We couldn't process your request.", preferredStyle: .alert)
let action = UIAlertAction(title: "OK", style: .default)
alert.addAction(action)
present(alert, animated: true) {
self.speechKit.endVoiceRecording()
self.endButton.isHidden = true
self.startButton.isHidden = false
}
}
func didFinishListening(withText text: String) {
textView.text = text
}
func authorizationToMicrophone(withAuthentication type: OSSSpeechKitAuthorizationStatus) {
}
func didFailToCommenceSpeechRecording() {
let alert = UIAlertController(title: "Error Accessing the Microphone", message: "Make sure to check that you have given the app access to your microphone.", preferredStyle: .alert)
let action = UIAlertAction(title: "OK", style: .default)
alert.addAction(action)
present(alert, animated: true) {
self.speechKit.endVoiceRecording()
self.endButton.isHidden = true
self.startButton.isHidden = false
}
}
@IBOutlet weak var textView: UITextView!
@IBOutlet weak var startButton: UIButton!
@IBOutlet weak var endButton: UIButton!
@IBAction func startButtonPressed(_ sender: UIButton) {
startButton.isHidden = true
endButton.isHidden = false
speechKit.recordVoice()
}
@IBAction func endButtonPressed(_ sender: UIButton) {
endButton.isHidden = true
startButton.isHidden = false
speechKit.endVoiceRecording()
}
override func viewDidLoad() {
super.viewDidLoad()
speechKit.delegate = self
endButton.isHidden = true
}
}
I'm pretty sure this'll work.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.