출처 : http://bluexmas.tistory.com/277
ffmpeg 라이브러리를 이용해서 wowza서버를 사용하는 rtsp 플레이어를 제작해보았습니다. 설치한 ffmpeg 라이브러리가 ios용으로 컴파일 되어 있어서 iFrameExtractor 프로젝트는 ffmpeg 라이브러리만 사용했기 때문에 플레이는 되지만, 출처 http://stackoverflow.com/questions/10518082/how-can-you-pass-yuv-frames-from-ffmpeg-to-opengl-es 소스 다운로드 ffmpeg 라이브러리 경로 설정
오류 수정 CODEC_TYPE_VIDEO undefined 발생 한다면, rtsp 주소 설정 YUV 데이터 -> RGB 데이터 소스 실행
소스는 iFrameExtractor 프로젝트에서 파일 오픈하는 부분을 rtsp 주소를 사용했고,
ffmpeg 라이브러리 경로를 따로 설정해서 컴파일 했습니다.
시뮬레이터에서는 테스트 할 수가 없네요.
속도는 나오지 않습니다. OpenGL ES / SDL 라이브러리 이용해야 될 것 같네요.
Tech Tutorial – How to setup a SDL-Ready XCode4 Project
CODEC_TYPE_VIDEO undefined
ffmpeg을 이용한 iOS 동영상 플레이어
https://developer.apple.com/
http://code.google.com/p/
AVMEDIA_TYPE_VIDEO 로 수정
iFrameExtractorAppDelegate.m- (
void
)applicationDidFinishLaunching:(UIApplication *)application {
//self.video = [[VideoFrameExtractor alloc] initWithVideo:[Utilities bundlePath:@"sophie.mov"]];
//self.video = [[VideoFrameExtractor alloc] initWithVideo:[Utilities bundlePath:@"oh.mp4"]];
[video release];
// set output image size
video.outputWidth = 426;
video.outputHeight = 320;
// print some info about the video
NSLog(@
"video duration: %f"
,video.duration);
NSLog(@
"video size: %d x %d"
, video.sourceWidth, video.sourceHeight);
// video images are landscape, so rotate image view 90 degrees
[imageView setTransform:CGAffineTransformMakeRotation(M_PI/2)];
[window makeKeyAndVisible];
}
VideoFrameExtractor.m-(
void
)convertFrameToRGB {
sws_scale (img_convert_ctx, pFrame->data, pFrame->linesize,
0, pCodecCtx->height,
picture.data, picture.linesize);
}
'프로그래밍 > iOS' 카테고리의 다른 글
MFMessageComposeViewController를 이용한 sms(문자) 보내기 (0) | 2012.09.13 |
---|---|
How to cross compile ffmpeg for iOS (iPhone and iPad) (0) | 2012.09.05 |
Objective-C에서 NSFileManger와 NSFileHandle을 이용하여 문자열을 파일로 저장하는 방법 (0) | 2012.09.04 |
페북 Single Sign On 을 iOS앱에 적용하기 (0) | 2012.08.08 |
아이폰에서 통신 사업자 및 국가코드 알아 오기. (0) | 2012.08.04 |