IQAudioRecorderController alternatives and similar libraries
Based on the "Audio" category.
Alternatively, view IQAudioRecorderController alternatives based on common mentions on social networks and blogs.
-
AudioKit
Audio synthesis, processing, & analysis platform for iOS, macOS and tvOS -
EZAudio
An iOS and macOS audio visualization framework built upon Core Audio useful for anyone doing real-time, low-latency audio processing and visualizations. -
StreamingKit
A fast and extensible gapless AudioPlayer/AudioStreamer for OSX and iOS (iPhone, iPad) -
novocaine
Painless high-performance audio on iOS and Mac OS X -
FDWaveformView
Reads an audio file and displays the waveform -
PandoraPlayer
🅿️ PandoraPlayer is a lightweight music player for iOS, based on AudioKit and completely written in Swift. -
SubtleVolume
Replace the system volume popup with a more subtle indicator. -
SwiftySound
SwiftySound is a simple library that lets you play sounds with a single line of code. -
AudioPlayer
AudioPlayer is syntax and feature sugar over AVPlayer. It plays your audio files (local & remote). -
Jukebox
Player for streaming local and remote audio files. Written in Swift. -
TheAmazingAudioEngine2
The Amazing Audio Engine is a sophisticated framework for iOS audio applications, built so you don't have to. -
MusicKit
A framework for composing and transforming music in Swift -
ESTMusicIndicator
Cool Animated music indicator view written in Swift -
QuietModemKit
iOS framework for the Quiet Modem (data over sound) -
TuningFork
:musical_keyboard: Simple Tuner for iOS -
FDSoundActivatedRecorder
Start recording when the user speaks -
AudioPlayerSwift
AudioPlayer is a simple class for playing audio in iOS, macOS and tvOS apps. -
ModernAVPlayer
ModernAVPlayer is a persistence AVPlayer wrapper -
Chirp
The easiest way to prepare, play, and remove sounds in your Swift app! -
SRGMediaPlayer-iOS
An advanced media player library, simple and reliable -
sound-fader-ios
A sound fader for AVAudioPlayer written in Swift for iOS, tvOS and macOS. -
BPMAnalyser
Fast and simple instrument to get the BPM rate from your audio-files. -
QHSpeechSynthesizerQueue
Queue management system for AVSpeechSynthesizer
Appwrite - The open-source backend cloud platform
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of IQAudioRecorderController or a related project?
README
IQAudioRecorderController
IQAudioRecorderController
is a drop-in universal library allows to record and crop audio within the app with a nice User Interface. There are also optional callback delegate methods to return recorded file path.
[Idle](./Screenshot/Screenshot_Idle.jpeg) [Recording](./Screenshot/Screenshot_Recording.jpg) [Playing](./Screenshot/Screenshot_Playing.jpeg) [No Access](./Screenshot/Screenshot_Cropping.jpg)
Installation
CocoaPods
You can use CocoaPods to install IQAudioRecorderController
by adding it to your Podfile
:
platform :ios, '8.0'
use_frameworks!
pod 'IQAudioRecorderController'
To get the full benefits import IQAudioRecorderController
wherever you import UIKit
import UIKit
import IQAudioRecorderController
Manually
- Download and drop
/IQAudioRecorderController
folder in your project. - Congratulations!
Supported format
Currently IQAudioRecorderController
library only support .m4a file format.
Customization
There are optional properties to customize the appearance according to your app theme.
barStyle: UIBarStyle: Library support light and dark style UI for user interface. If you would like to present light style UI then you need to set barStyle to UIBarStyleDefault, otherwise dark style UI is the default.
normalTintColor: UIColor: This tintColor is used for showing wave tintColor while not recording, it is also used for top navigationBar and bottom toolbar tintColor.
highlightedTintColor: UIColor: Highlighted tintColor is used when playing recorded audio file or when recording audio file.
How to use
There are two seprate classes to Record and Crop Audio files.
To Record audio file, try something like this:-
#import "IQAudioRecorderViewController.h"
@interface ViewController ()<IQAudioRecorderViewControllerDelegate>
@end
@implementation ViewController
- (void)recordAction:(id)sender {
IQAudioRecorderViewController *controller = [[IQAudioRecorderViewController alloc] init];
controller.delegate = self;
controller.title = "Recorder";
controller.maximumRecordDuration = 10;
controller.allowCropping = YES;
// controller.barStyle = UIBarStyleDefault;
// controller.normalTintColor = [UIColor magentaColor];
// controller.highlightedTintColor = [UIColor orangeColor];
[self presentBlurredAudioRecorderViewControllerAnimated:controller];
}
-(void)audioRecorderController:(IQAudioRecorderViewController *)controller didFinishWithAudioAtPath:(NSString *)filePath {
//Do your custom work with file at filePath.
[controller dismissViewControllerAnimated:YES completion:nil];
}
-(void)audioRecorderControllerDidCancel:(IQAudioRecorderViewController *)controller {
//Notifying that user has clicked cancel.
[controller dismissViewControllerAnimated:YES completion:nil];
}
@end
To Crop audio file, try something like this:-
#import "IQAudioCropperViewController.h"
@interface ViewController ()<IQAudioCropperViewControllerDelegate>
@end
@implementation ViewController
-(void)cropAction:(id)item {
IQAudioCropperViewController *controller = [[IQAudioCropperViewController alloc] initWithFilePath:filePath];
controller.delegate = self;
controller.title = "Edit";
// controller.barStyle = UIBarStyleDefault;
// controller.normalTintColor = [UIColor magentaColor];
// controller.highlightedTintColor = [UIColor orangeColor];
[self presentBlurredAudioCropperViewControllerAnimated:controller];
}
-(void)audioCropperController:(IQAudioCropperViewController *)controller didFinishWithAudioAtPath:(NSString *)filePath {
//Do your custom work with file at filePath.
[controller dismissViewControllerAnimated:YES completion:nil];
}
-(void)audioCropperControllerDidCancel:(IQAudioCropperViewController *)controller {
//Notifying that user has clicked cancel.
[controller dismissViewControllerAnimated:YES completion:nil];
}
@end
Attributions
Thanks to Stefan Ceriu for his brilliant SCSiriWaveformView library.
Thanks to William Entriken for his FDWaveformView library.
LICENSE
Distributed under the MIT license. See LICENSE
for more information.
Contributions
Any contribution is more than welcome! You can contribute through pull requests and issues on GitHub.
Author
If you wish to contact me, email at: [email protected]
*Note that all licence references and agreements mentioned in the IQAudioRecorderController README section above
are relevant to that project's source code only.