Skip to content

edison9888/SHSoundPlay

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SHSoundPlay

Goal of the project

Create a singleton class to make playing audio extremely within an iOS app simpler.

License

This code is available under the MIT license.

Installation

  1. Drag files from the Classes folder to your project;
  2. Add AudioToolbox and AVFoundation frameworks;
  3. #import "SHSoundPlay.h" wherever you want to use it.

Usage

Here's how you initialize and play a "short sound" (30s or shorter .caf, .air or .wav snippets):

	[SHSoundPlay addSoundAtPath:[[NSBundle mainBundle] pathForResource:@"ding.wav" ofType:nil] forKey:@"ding"];

	[SHSoundPlay playSoundForKey:@"ding"];

For longer AAC, MP3 and ALAC (Apple Lossless) audio, use:

    [SHSoundPlay addAudioAtPath:[[NSBundle mainBundle] pathForResource:@"play.mp3" ofType:nil] forKey:@"play"];
    
    [SHSoundPlay playAudioForKey:@"play"];

For a nice fede in effect, you can use

	[SHSoundPlay playAudioForKey:@"play" fadeInInterval:2.0];

Similar metods are available for stopping and pausing the audio:

	+ (void)stopAudioForKey:(id)key fadeOutInterval:(NSTimeInterval)fadeOutInterval;
	+ (void)stopAudioForKey:(id)key;
	
	+ (void)pauseAudioForKey:(id)key fadeOutInterval:(NSTimeInterval)fadeOutInterval;
	+ (void)pauseAudioForKey:(id)key;

For longer audio, this class uses AVAudioPlayer and, if you need to set volume, number of loops and so on, you can get access to the underlying player by calling:

    AVAudioPlayer *player = [SHSoundPlay audioPlayerForKey:@"play"];
    player.numberOfLoops = -1;  // Endless looping

About

一个摘自MCSoundBoard的音频管理类

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Objective-C 100.0%