Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

github.com/alexruperez/speechrecognizerbutton

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/alexruperez/speechrecognizerbutton

  • v0.0.0-20190815144236-4c8cc80be372
  • Source
  • Go
  • Socket score

Version published
Created
Source

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, contact@alexruperez.com

👮‍♂️ License

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

FAQs

Package last updated on 15 Aug 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc