转载自:http://blog.csdn.net/syansky1988/article/details/16939655
1, Using Assets [自己理解为:数据的来源]
这个资源可以来自自己的ipod媒体库或图片也可以时文件
creating>
AVURLAsset *ansset = [[AVURLSset alloc] initwithURL:url options:nil];
2.获得一个视频的图像
使用AVASsetImageGenerator类来实现
用来生成图像序列
3.Playback
我们在播放视频时可以使用AVPlayer和AVQueuePlayer播放AVPlayer是AVQueuePlayer的父类
a先创建一个路径
b可以使用AVPlayerItem加载路径
c使用AVPlayer播放文件
当然我们还可以控制它的播放速度
使用rate属性它是一个介于0.0--1.0之间的数
我们也可以播放多个项目
NSArray *items = // 设置一个播放的组合
AVQueuePlayer *queueplayer = [[AVQueuePlayer>
if([session canSetSessionPreset:AVCaptureSessionPrese 1280x720]){
session.sessionPreset = AVCaptureSessionPreset 1280x720;
}else{
// Handle>
fo(AVCaptureDevice *device in device){
NSLogO("Device>
nslog(@"Device postion :back");
}else{
NSLog(@"Device>
NsMutableArray *torchDevices = [[NSMutableArray alloc]init];
for(AVCaptureDevice *device>
[session beginConfiguration];
[session>
AVCaptureDeviceInput *captureDeviceInput = <#Get a capture device input#>;
// 检查是否适用
if ([captureSession>
AVCaptureMovieFileOutput *movieInput = <#Create and configure a movie output#>;
if ([captureSession>
CMTime maxDuration = <#Create a CMTime to represent the maximum duration#>; aMovieFileOutput.maxRecordedDuration = maxDuration;
aMovieFileOutput.minFreeDiskSpaceLimit = <#An>
NSDictionary *outputSettings = [[NSDictionary alloc] initWithObjectsAndKeys:AVVideoCodecJPEG,AVVideoCodecKey, nil]; [stillImageOutput setOutputSettings:outputSettings];
13 重力模式
The>
for ( AVCaptureDevice *device in devices )
>
return device;
>
for ( AVCaptureDeviceInput *input in inputs ) {
AVCaptureDevice *device =>
AVCaptureDevice *newCamera = nil;
AVCaptureDeviceInput *newInput =>
newCamera = [self cameraWithPosition:AVCaptureDevicePositionBack];
>
newInput = [AVCaptureDeviceInput deviceInputWithDevice:newCamera error:nil];
// beginConfiguration ensures that pending changes are not applied immediately
[self.session beginConfiguration];
[self.session removeInput:input];
[self.session addInput:newInput];
// Changes take effect once the outermost commitConfiguration is invoked.
[self.session commitConfiguration];
break;
}
}
}