tôi đã tìm thấy nhiều thư viện như flite có thể được sử dụng, như trong trao here, nhưng tôi muốn biết nếu có bất kỳ Built-In lớp được cung cấp bởi iOS SDK tương tự như NSSpeechRecognizer cung cấp trong OS X.iOS có cung cấp tính năng hỗ trợ văn bản thành giọng nói hoặc bất kỳ lớp nào như NSSpeechRecognizer không?
Trả lời
Có không hỗ trợ tính năng chuyển văn bản thành giọng nói được tích hợp trong iOS 5 hoặc 6 - bạn sẽ cần phải sử dụng thư viện của bên thứ ba. Nếu bạn đang sử dụng iOS 7, bạn sẽ gặp may.
Có một lớp mới trong iOS 7 được gọi là AVSpeechSynthesizer
(Apple's docs can be found here). Bạn có thể sử dụng tính năng này để thực hiện chuyển văn bản thành giọng nói. Dưới đây là ví dụ đơn giản:
AVSpeechUtterance *utterance = [AVSpeechUtterance
speechUtteranceWithString:@"Hello world"];
AVSpeechSynthesizer *synth = [[AVSpeechSynthesizer alloc] init];
[synth speakUtterance:utterance];
Các thuộc tính như tốc độ và loại giọng nói được đặt trong AVSpeechUtterance
, thay vì bộ tổng hợp.
mặc dù vẫn còn trong phiên bản beta iOS 7 được công khai và bao gồm lớp 'AVSpeechSynthesizer' có thể được sử dụng cho văn bản thành giọng nói. [Tham khảo] (https://developer.apple.com/library/prerelease/ios/documentation/AVFoundation/Reference/AVSpeechSynthesizer_Ref/Reference/Reference.html#//apple_ref/doc/uid/TP40013447). – eliocs
iOS7 được giảm xuống ngay hôm nay để bạn có thể cập nhật câu trả lời bằng mã thực tế của mình. – Topsakal
Cảm ơn, tôi đã cập nhật mẫu mã số – lxt
đây là một câu hỏi gây nhầm lẫn. câu hỏi cho biết nhận dạng giọng nói trong phần mô tả nhưng được gắn thẻ "text-to-speech" và cũng cho biết "text to speech support" trong tiêu đề. –