교육용 앱이 있습니다. 사용자가 recordVideo 버튼 카메라를 클릭하여 동영상을 녹화해야 할 때 ipad 앱에서이를 수행 할 수있는 방법이 있습니까? 이미 오디오 녹음을했는데 비디오 녹음을해야합니다.ipad 앱에 동영상 클립을 녹화하고 문서 폴더에 저장하는 방법
1
A
답변
1
//for video..
#import <MobileCoreServices/MobileCoreServices.h>
#import <AVFoundation/AVFoundation.h>
#import <MediaPlayer/Mediaplayer.h>
#import <CoreMedia/CoreMedia.h>
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
NSArray *mediaTypes = [NSArray arrayWithObject:(NSString*)kUTTypeMovie];
picker.mediaTypes = mediaTypes ;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo ;
[self presentModalViewController:picker animated:NO];
[picker release];
}
else
{
UIAlertView *alt=[[UIAlertView alloc]initWithTitle:@"Error" message:@" Camera Facility is not available with this Device" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[alt show];
[alt release];
}
을 문서 폴더에 저장하는 & 또한 사진 라이브러리에서이 작동
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* documentsDirectory = [paths objectAtIndex:0];
//for video
NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
NSLog(@"video url-%@",videoURL);
NSData *videoData = [NSData dataWithContentsOfURL:videoURL];
NSString * videoName = [NSString stringWithFormat:@"student_%d_%d.mp4",stud_id,imgVidID];
videoPath = [documentsDirectory stringByAppendingPathComponent:videoName];
NSLog(@"video path-%@",videoPath);
[videoData writeToFile:videoPath atomically:YES];
NSString *sourcePath = [[info objectForKey:@"UIImagePickerControllerMediaURL"]relativePath];
UISaveVideoAtPathToSavedPhotosAlbum(sourcePath,nil,nil,nil);
}
1
이 시도 ::
-(void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary*)info
{
[self dismissViewControllerAnimated:NO completion:nil];
NSString *type = [info objectForKey:UIImagePickerControllerMediaType];
if ([type isEqualToString:(NSString *)kUTTypeVideo] || [type isEqualToString:(NSString *)kUTTypeMovie])
{
videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
NSLog(@"found a video");
// Code To give Name to video and store to DocumentDirectory //
videoData = [[NSData dataWithContentsOfURL:videoURL] retain];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSDateFormatter *dateFormat = [[[NSDateFormatter alloc] init] autorelease];
[dateFormat setDateFormat:@"dd-MM-yyyy||HH:mm:SS"];
NSDate *now = [[[NSDate alloc] init] autorelease];
theDate = [dateFormat stringFromDate:now];
NSString *dataPath = [documentsDirectory stringByAppendingPathComponent:@"Default Album"];
if (![[NSFileManager defaultManager] fileExistsAtPath:dataPath])
[[NSFileManager defaultManager] createDirectoryAtPath:dataPath withIntermediateDirectories:NO attributes:nil error:nil];
NSString *videopath= [[[NSString alloc] initWithString:[NSString stringWithFormat:@"%@/%@.mov",documentsDirectory,theDate]] autorelease];
BOOL success = [videoData writeToFile:videopath atomically:NO];
NSLog(@"Successs:::: %@", success ? @"YES" : @"NO");
NSLog(@"video path --> %@",videopath);
}
}
희망, 그것은 당신을 도울 것입니다.
감사합니다.
0
그냥 시도 :
-(void) imagePickerController: (UIImagePickerController *) picker didFinishPickingMediaWithInfo: (NSDictionary *) info
{
NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];
[self dismissModalViewControllerAnimated:NO];
NSString *moviePath = [[info objectForKey: UIImagePickerControllerMediaURL] path];
if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)){
UISaveVideoAtPathToSavedPhotosAlbum (moviePath,self, @selector(video:didFinishSavingWithError:contextInfo:), nil);
}
}
-(void)video:(NSString*)videoPath didFinishSavingWithError:(NSError*)error contextInfo:(void*)contextInfo {
if (error) {
[AJNotificationView showNoticeInView:self.view type:AJNotificationTypeRed title:@"Video Saving Failed" linedBackground:AJLinedBackgroundTypeAnimated hideAfter:1.0];
}
else{
NSURL *videoURl = [NSURL fileURLWithPath:videoPath];
AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURl options:nil];
AVAssetImageGenerator *generate = [[AVAssetImageGenerator alloc] initWithAsset:asset];
generate.appliesPreferredTrackTransform = YES;
NSError *err = NULL;
CMTime time = CMTimeMake(1, 60);
CGImageRef imgRef = [generate copyCGImageAtTime:time actualTime:NULL error:&err];
self.strUploadVideoURL = videoPath;
[imgPhoto setImage:[[[UIImage alloc] initWithCGImage:imgRef] autorelease]];
intWhenPushView = 2;
btnShare.enabled = YES;
btnFacebookShare.enabled = YES;
CGImageRelease(imgRef);
[generate release];
[asset release];
}
}
관련 문제
- 1. ipad 앱에 동영상 추가하기
- 2. AFNetworking으로 파일을 다운로드하고 문서 폴더에 저장하는 방법
- 3. URL에서 파일을 다운로드하고 문서 폴더에 저장하는 방법
- 4. 플래시의 동영상 클립을 어둡게합니다.
- 5. 동영상 클립을 복제하려면 어떻게합니까?
- 6. 동영상 클립을 색인에 추가
- 7. AS3 : 클래스를 사용하여 동영상 클립을 중지하는 방법?
- 8. Android에서 동영상 URL에서 클립을 캡처하고 녹화하는 방법
- 9. 문서 폴더에 액세스하는 방법
- 10. 문서 폴더에 파일을 저장하는 방법은 무엇입니까?
- 11. 동영상 클립을 재생할 충돌 테스트
- 12. 이미지를 폴더에 저장하는 방법
- 13. 폴더에 모델을 저장하는 방법
- 14. ios의 문서 폴더에 대해 alasset에서 hd 이미지를 저장하는 방법
- 15. iPad 용 inApp 동영상 스트리밍
- 16. 화면을 녹화하고 GIF 애니메이션으로 저장하는 방법은 무엇입니까?
- 17. iPad 앱에 FaceTime 기능 통합
- 18. H264 코덱을 사용하여 플래시 비디오를 녹화하고 저장하는 방법
- 19. iOS 앱에 큰 내장 데이터를 저장하는 방법
- 20. 이미지를 캡처하고 폴더에 저장하는 방법
- 21. 폴더에 이벤트 로그를 저장하는 방법
- 22. ipad 시뮬레이터에서 비디오를 저장하는 방법
- 23. 다른 동영상 클립을 누르고 회전하여 동영상 클립 회전
- 24. As3 동영상 방향을 바꾸려면 동영상 클립을 뒤집는 방법은 무엇입니까?
- 25. 다른 동영상 클립이 포함 된 동영상 클립을 as3으로 이동
- 26. 플래시에서 동영상 클립 뒤에있는 동영상 클립을 이동하려면 어떻게합니까?
- 27. 데이터를 iPhone 앱에 저장하는 방법
- 28. 레일스 앱에 연말을 저장하는 방법
- 29. 앱에 이미지/콘텐츠를 저장하는 방법
- 30. 여러 UIImage를 파일로 저장하는 방법 iPad
감사를 저장하지만, 내가 어떻게이 비디오를 얻어야한다 내 코드를 사용하여 서버에 업로드 –