Page 1 of 1

Video Capture in iOS

Posted: Thu Jan 17, 2013 3:31 pm
by chocoanzak
Hi,

I am running OGRE 1.8 in my iOS 6 application and am investigating ways that I can record the rendered display into a video file on the device. I have checked through some material online and on these forums and found that the relevant methods may not be working correctly on iOS. I saw some work has been done on copyContentsToMemory for a RenderTarget and therefore it should work on iOS but I am experience constant errors when I try to call this method on my RenderWindow.

I have currently tried to implement a RenderTargetListener (attached to the main window) and call the writeContentsToFile method to test if I can capture the rendered content this way but everytime I run the method I get a SIGBAR error

Code: Select all

void OgreFrameRecorder::postRenderTargetUpdate (const Ogre::RenderTargetEvent &evt){
    evt.source->writeContentsToFile("/var/mobile/Applications/47C021C1-E8BC-43B4-98E9-6497438FB4E4/Documents/test1.bmp");
}
I have a feeling this may to do with timing but would be greatful if anyone could point me in the right direction to being able to record the frames when using iOS.

Thanks,
William

Re: Video Capture in iOS

Posted: Mon Jan 21, 2013 11:35 am
by Ologon
I'm pretty sure there's no easy way to do that directly from iOS. Basically, you have two choices:

1) Launch your app in the xcode simulator and use a screen capture tool to record the iPhone screen.
2) Use a HD capture card (Just google "Game Capture HD" and you'll find it) and connect your iOS device to it with Apple's AV adapter cable. (Your device must be retina)

The latter is more pricey but gives nearly perfect results, while the simulator is often much more slower and choppy but it should be fine for a quick trailer.