2011-11-23 2 views
13

iPhone에서 Core Animation을 사용하여 기본 애니메이션 프레임 워크를 작성했습니다. 애니메이션 일시 중지 및 다시 시작 기능이 있으며 지정된 시간에 애니메이션을 실행할 수도 있습니다. 내 기본적인 문제는 내 애니메이션을 비디오 파일 (.mov, .avi 등)로 내보내는 방법을 찾을 수 없다는 것입니다. AVAssetWriterAVComposition에 대해 읽었지 만 제 경우에는 어떻게 작동하는지 이해할 수 없습니다.CoreAnimation을 비디오 파일로 내보내기

인터넷 검색을 통해 가장 가까운 애니메이션은 내 애니메이션을 프레임별로 읽는 것입니다. 그것을 위해서조차도 나는 그것을 작동시키는 방법을 찾지 못했고, iPhone SDK가 이런 경우에 프레임 읽기를 할 수 있는지 여부를 찾지 못했습니다. 나도이 question on stackoverflow에 가까이 왔고 여전히 알아 내지 못했습니다. (미안하지만 초보자 인 것 같아요.하지만 이해가 안되요. 그냥 이해할 수 없어요.)

누구나 작동 방법을 알고 있다면 또는 심지어 비슷한 방법으로 공유하십시오. 그리고 아무런 방법이 없다면 CoreAnimation 대신 OpenGL ES를 사용하는 다른 방법을 알고 있다면 공유 할 수도 있습니다.

+0

보십시오 AVMutableVideoComposition.animationTool. AVMutableComposition을 만들고 AVAssetExportSession에서 내 보내야한다고 확신합니다. – Gabriele

+0

답장을 보내 주셔서 감사합니다. 하지만 둘 다 시도했지만 작동하지 못했습니다. 현재 이미지에서 프레임별로 애니메이션을 읽는 해결 방법을 만들고 있습니다. 그것은 나의 방법에 타이머를 계획해서 구조를 얻기에 의해 달성되는 구조 단위로 일하고 그리고 독서이다. 그것은 30fps의 독서를 위해 작동하지만 나는 훨씬 더 많은 fps로 내 애니메이션을 변환하려고하는데, 이는 NSTimer 때문에 느려집니다. 이제 저는 이런 종류의 일에 더 좋은 방법이 있는지 알고 싶습니까? – Azeem

+1

귀하의 질문과 관련이 없지만 화면에 렌더링하지 않고 애니메이션에서 UIImage *를 얻을 수 있었습니까? 방법? (renderInContext는 변환을 무시하므로 이전에 가지고 있던 한 가지 아이디어를 죽였습니다.) (이미지 배열에서 비디오 파일을 처리하는 코드가 있습니다.) –

답변

6

프리젠 테이션 확인 : http://www.slideshare.net/invalidname/advanced-media-manipulation-with-av-foundation 비디오 구성에 애니메이션을 추가하는 방법에 대해 이야기합니다. 나는 이것이 당신이 필요한 것을 얻는 데 도움이 될 것이라고 믿습니다.

편집 : 특히 동영상 합성물의 animationTool을 살펴야합니다. 이것은 출력 비디오에 핵심 애니메이션 레이어를 추가 할 수있게 해주는 AVVideoCompositionCoreAnimationTool 객체입니다. 이 질문도 참조하십시오 : Recording custom overlay on iPhone 죄송합니다. 전체 코드 스 니펫을 얻을 시간이 없지만 기본적으로 비디오 컴포지션의이 애니메이션 도구를 설정 한 다음 AVAssetExportSession을 만들고 videoComposition을 설정하십시오. 만든.

+0

답장을 보내 주셔서 감사합니다. 그것은 매우 귀중한 자원이지만 내 문제를 해결하지는 못합니다. – Azeem