An Custom UIView which draws the output of an audio asset in real time.
Switch branches/tags
Nothing to show
Clone or download
Latest commit c044aeb Feb 25, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
IHWaveformView.xcodeproj
IHWaveformView
LICENSE Create LICENSE Sep 17, 2017
README.md
bensound-sunny.mp3

README.md

IHEqualizerView

Version License Platform

A simple, intuitive audio asset visualiser for iOS.

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

HighLights

Written purely in SWIFT. Very simple and lightweight. Color Coding for differnt output range.

  • Pale red for low output
  • Light red for medium
  • Red for high output
  • Based on the output distribution pattern of Recorder App from Apple
  • Option to pre-render audio file

Getting Started

To begin using IHEqualizerView you must first make sure you have the proper build requirements.

Build Requirements

iOS

10.0+

Installation

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

pod 'IHEqualizerView'

Adding Manually To Project

You can add IHEqualizerView to your project in a few ways:

The way to use IHEqualizerView is to download the IHWaveFormView class file in your project as is and use.

ScreenShot

simulator screen shot 16-aug-2017 12 23 44 am

10 pixel width

Usage

StoryBoard

Make the UIView a subclass of IHEqualizerView, make its outlet and initialise as follows:

@IBOutlet var musicView: IHWaveFormView!
extension ViewController: IHWaveFormViewDataSource {

func urlToPlay() -> URL {
    //Getting the Path of the Audio Asset in this case this is bundled in to the main Bundle with the fileName
    var url : URL?
    let path = Bundle.main.path(forResource: "bensound-sunny.mp3", ofType:nil)!
    url = URL(fileURLWithPath: path)
    return url!
    }
    
func lineWidth() -> CGFloat {
  return 2
    }

func lineSeperation() -> CGFloat {
    return 1
    }
    
func shouldPreRender() -> Bool {
    return true
}

}

Author

Md Ibrahim Hassan, mdibrahimhassan@gmail.com

License

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