iOS - Audio and Video


Advertisements


Audio and video is quite common in the latest devices. It is supported in iOS with the help of AVFoundation.framework and MediaPlayer.framework respectively.

Steps Involved

Step 1 − Create a simple View based application.

Step 2 − Select your project file, select targets, and then we should add AVFoundation.framework and MediaPlayer.framework.

Step 3 − Add two buttons in ViewController.xib and create an action for playing audio and video respectively.

Step 4 − Update ViewController.h as follows −

#import <UIKit/UIKit.h>
#import <AVFoundation/AVFoundation.h>
#import <MediaPlayer/MediaPlayer.h>

@interface ViewController : UIViewController {
   AVAudioPlayer *audioPlayer;
   MPMoviePlayerViewController *moviePlayer;
}
-(IBAction)playAudio:(id)sender;
-(IBAction)playVideo:(id)sender;
@end

Step 5 − Update ViewController.m as follows −

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
   [super viewDidLoad];
}

- (void)didReceiveMemoryWarning {
   [super didReceiveMemoryWarning];
   // Dispose of any resources that can be recreated.
}

-(IBAction)playAudio:(id)sender {
   NSString *path = [[NSBundle mainBundle]
   pathForResource:@"audioTest" ofType:@"mp3"];
   audioPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:
   [NSURL fileURLWithPath:path] error:NULL];
   [audioPlayer play];
}

-(IBAction)playVideo:(id)sender {
   NSString *path = [[NSBundle mainBundle]pathForResource:
   @"videoTest" ofType:@"mov"];
   moviePlayer = [[MPMoviePlayerViewController 
   alloc]initWithContentURL:[NSURL fileURLWithPath:path]];
   [self presentModalViewController:moviePlayer animated:NO];
}
@end

Note

We need to add audio and video files for ensuring that we get the expected output.

Output

When we run the application, we'll get the following output −

iOS Tutorial

When we click on play video, we will get an output as shown below −

iOS Tutorial

When we click play audio, you will hear the audio.



Advertisements