All Projects → alexruperez → Speechrecognizerbutton

alexruperez / Speechrecognizerbutton

Licence: mit
UIButton subclass with push to talk recording, speech recognition and Siri-style waveform view.

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Speechrecognizerbutton

Nativescript Speech Recognition
💬 Speech to text, using the awesome engines readily available on the device.
Stars: ✭ 72 (-50%)
Mutual labels:  siri, speech-recognition, speech-to-text
Vosk Api
Offline speech recognition API for Android, iOS, Raspberry Pi and servers with Python, Java, C# and Node
Stars: ✭ 1,357 (+842.36%)
Mutual labels:  speech-recognition, speech-to-text
Go Astideepspeech
Golang bindings for Mozilla's DeepSpeech speech-to-text library
Stars: ✭ 137 (-4.86%)
Mutual labels:  speech-recognition, speech-to-text
Spokestack Python
Spokestack is a library that allows a user to easily incorporate a voice interface into any Python application.
Stars: ✭ 103 (-28.47%)
Mutual labels:  speech-recognition, speech-to-text
Laibot Client
开源人工智能,基于开源软硬件构建语音对话机器人、智能音箱……人机对话、自然交互,来宝拥有无限可能。特别说明,来宝运行于Python 3!
Stars: ✭ 81 (-43.75%)
Mutual labels:  siri, speech-recognition
B.e.n.j.i.
B.E.N.J.I.- The Impossible Missions Force's digital assistant
Stars: ✭ 83 (-42.36%)
Mutual labels:  speech-recognition, speech-to-text
Speech And Text
Speech to text (PocketSphinx, Iflytex API, Baidu API) and text to speech (pyttsx3) | 语音转文字(PocketSphinx、百度 API、科大讯飞 API)和文字转语音(pyttsx3)
Stars: ✭ 102 (-29.17%)
Mutual labels:  speech-recognition, speech-to-text
Tensorflow Ctc Speech Recognition
Application of Connectionist Temporal Classification (CTC) for Speech Recognition (Tensorflow 1.0 but compatible with 2.0).
Stars: ✭ 127 (-11.81%)
Mutual labels:  speech-recognition, speech-to-text
Awesome Ai Services
An overview of the AI-as-a-service landscape
Stars: ✭ 133 (-7.64%)
Mutual labels:  speech-recognition, speech-to-text
Self Supervised Speech Recognition
speech to text with self-supervised learning based on wav2vec 2.0 framework
Stars: ✭ 106 (-26.39%)
Mutual labels:  speech-recognition, speech-to-text
Deepspeech Websocket Server
Server & client for DeepSpeech using WebSockets for real-time speech recognition in separate environments
Stars: ✭ 79 (-45.14%)
Mutual labels:  speech-recognition, speech-to-text
Kaldi
kaldi-asr/kaldi is the official location of the Kaldi project.
Stars: ✭ 11,151 (+7643.75%)
Mutual labels:  speech-recognition, speech-to-text
Deepspeech
A PaddlePaddle implementation of ASR.
Stars: ✭ 1,219 (+746.53%)
Mutual labels:  speech-recognition, speech-to-text
Mongolian Speech Recognition
Mongolian speech recognition with PyTorch
Stars: ✭ 97 (-32.64%)
Mutual labels:  speech-recognition, speech-to-text
Wav2letter
Speech Recognition model based off of FAIR research paper built using Pytorch.
Stars: ✭ 78 (-45.83%)
Mutual labels:  speech-recognition, speech-to-text
Openseq2seq
Toolkit for efficient experimentation with Speech Recognition, Text2Speech and NLP
Stars: ✭ 1,378 (+856.94%)
Mutual labels:  speech-recognition, speech-to-text
Openasr
A pytorch based end2end speech recognition system.
Stars: ✭ 69 (-52.08%)
Mutual labels:  speech-recognition, speech-to-text
Patter
speech-to-text in pytorch
Stars: ✭ 71 (-50.69%)
Mutual labels:  speech-recognition, speech-to-text
Wav2letter.pytorch
A fully convolution-network for speech-to-text, built on pytorch.
Stars: ✭ 104 (-27.78%)
Mutual labels:  speech-recognition, speech-to-text
Kalliope
Kalliope is a framework that will help you to create your own personal assistant.
Stars: ✭ 1,509 (+947.92%)
Mutual labels:  speech-recognition, speech-to-text

SpeechRecognizerButton

Twitter Version License Platform Swift Build Status Carthage compatible Swift Package Manager Compatible

UIButton subclass with push to talk recording, speech recognition and Siri-style waveform view.

SpeechRecognizerButton

📲 Installation

SpeechRecognizerButton is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'SpeechRecognizerButton'

Or you can install it with Carthage:

github "alexruperez/SpeechRecognizerButton"

Or install it with Swift Package Manager:

dependencies: [
    .package(url: "https://github.com/alexruperez/SpeechRecognizerButton.git")
]

🐒 Usage

Configuration:

Add NSMicrophoneUsageDescription and NSSpeechRecognitionUsageDescription keys to your Info.plist file containing a description of how your app will use the voice recording and speech recognition.

Handling authorization:

Automatically opening Settings when denying permission:

button.authorizationErrorHandling = .openSettings(completion: ...)

Custom handling:

button.authorizationErrorHandling = .custom(handler: { error in
  // TODO: Your code here!
})

Handling results:

button.resultHandler = { recordURL, speechRecognitionResult in
  // TODO: Your code here!
}

Handling errors:

button.errorHandler = { error in
  // TODO: Your code here!
}

Assigning waveform view:

Just set weak var waveformView: SFWaveformView? property or use the Interface Builder outlet.

Assigning activity indicator view:

Just set weak var activityIndicatorView: UIActivityIndicatorView? property or use the Interface Builder outlet.

Customizing SFButton configuration:

Just set the following properties by code or use the Interface Builder inspectables.

button.audioSession...
button.recordURL = ...
button.audioFormatSettings = [AV...Key: ...]
button.maxDuration = ...
button.locale = Locale....
button.taskHint = SFSpeechRecognitionTaskHint....
button.queue = OperationQueue....
button.contextualStrings = ["..."]
button.interactionIdentifier = "..."
button.animationDuration = ...
button.shouldVibrate = ...
button.shouldSound = ...
button.pushToTalk = ...
button.speechRecognition = ...
button.cancelOnDrag = ...
button.shouldHideWaveform = ...
button.cornerRadius = ...
button.borderColor = ...
button.borderWidth = ...
button.selectedColor = ...
button.highlightedColor = ...
button.disabledColor = ...
button.highlightedAlpha = ...

Customizing SFWaveformView configuration:

Just set the following properties by code or use the Interface Builder inspectables.

waveformView.waveColor = ...
waveformView.numberOfWaves = ...
waveformView.primaryWaveLineWidth = ...
waveformView.secondaryWaveLineWidth = ...
waveformView.idleAmplitude = ...
waveformView.frequency = ...
waveformView.density = ...
waveformView.phaseShift = ...
waveformView.amplitude = ...

❤️ Etc.

👨‍💻 Authors

alexruperez, [email protected]

👮‍♂️ License

SpeechRecognizerButton is available under the MIT license. See the LICENSE file for more info.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].