I am thinking of building a camera application - with the ability to do image processing (adjust contrast, apply different image filters) while you are taking picture or after the pictures has taken.
The app will also have the ability of drag and drop icons.
At the end you are able to export the edited images either to the camera roll or app memory.
There is already many apps out there like this. (Line Camera) etc...
Just wondering what is the best way to build such app.
Can I build the app purely with Objective C ios sdk? or do i need to build it with C++/cocos2d, etc...
Thanks for your help!
Your question is very broad, so here is a broad answer...
Accessing the camera/photo library
First you'll need to access the camera using UIImagePickerController to either take a new photo or grab one from your photo library. You can read up on how to accomplish this here: Camera Programming Topics for iOS
Image Manipulation
AviarySDK has much of this already built for you. Very easy to set up and use in your apps. You can download their sample app for free in the app store if you want to see what it can do. Check it out here: http://aviary.com/
Alternatively, read up on Core Image if you'd like to avoid third-party libraries. See Core Image Programming Guide for more information.
There is absolutely no need for cocos2d which is a game engine.
You can accomplish everything you mentioned using only Objective-C.
If you want real-time effects you will need to dive into OpenGL. you can use GLKit if you target iOS 5 and above.
Is it possible to analyze the images without taking a foto on the iPhone ?
I want to analyze some matrix codes, without taking any foto. I saw this on some Nokia models and it's quite impressive: really fast!
On the iPhone, I've seen analyzing codes after taking a snapshot (or photo), and it's slower.
Also the iPhone camera is not good as some other mobile cameras.
I'm refering to iPhone 3G/3GS.
thanks,
r.
Yes.
Under iOS 4.x, you can use the new AVFoundation Framework to access camera pixel buffers on the 3G and 3GS, as well as the newer iPhone 4, without taking a photo/snapshot. The newer devices have higher resolution camera's.
I don't know if it's possible. But I think you should take a look at the AVCamDemo Apple's Code from de WWDC 2010. I think it could help you even if I didn't read a lot of code (juste compiled tje xCode project and tried it)
(Sorry but I can't find back the link)
You should be able to find the code in your emails if you are registred as an iPhone Developer. Or maybe on the developer.apple.com/iphone/ website.
By the way, don't think doing it on iPhone 3G (impossible I think). The iPhone 3GS should be fast enough for this kind of app.
Good Luck !
I want to develop an application for iPhone in xcode and integrate face recognition in the application to correspond to other application functions but I do not know how it is possible to use face recognition in my application. Any ideas?
Check out this Wikipedia page. It has a lot of references to algorithms, applications, etc.
Check out OpenCV. Here's a blog post that should help get you started:
http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en
See the Apple published iOS sample code that implements face detection called
SquareCam. --
Integrating with CoreImage's new CIFaceDetector to find faces in a real-time VideoDataOutput, as well as in a captured still image. Found faces are indicated with a red square.
I've downloaded a free application from App Store (very nice application for instance) called ReadTheQRCode and it dont asks you to take the picture to decode the QRCode, my point is, is the application using the framebuffer of the camera on iPhone 3G or it is taking several pictures at a given time, ommiting the iris animation, the edit step and decoding it? Can anyone with more experience take a look at this App and give an opinion?
Thanks in advance!
There is -[UIImagePickerController takePicture] (as of 3.1) and UIGetScreenImage(). Although the latter is undocumented, Apple allows apps using it into the store (see this thread on the Apple Dev Forums).
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 9 years ago.
Improve this question
I want to be able to capture my iPhone's screen as a video, but I'm not sure the best way to do this.
Can anyone help guide me on how to best do this without jailbreak?
Here's my solution in a nutshell:
In recent years, when needing to produce moving visual content from the interface of an iOS app, I would require the developer provide a compiling of the app designed for the Simulator, (must be separately compiled because the apps are, by default compiled to run on the iPhone's ARM processor, whereas the Simulator runs on the Mac's Intel processor). This would then be screen captured on the Mac with something like Snapz Pro, Screenflow or something similar.
Beyond that, typical solutions required jailbreaking the device and installing a screen capture application sourced from the Cydia Store.
With the introduction of the iPad 2, Apple enabled full interface mirrored video output via either an authorized dock connector to HDMI dongle, or a dock connector to VGA dongle. (Note: Apple's composite and component options do not port mirrored content.) While the typical intent for these output mechanisms are to display the interface content to an external projector or High Definition Television, it is possible to record this mirrored content with a device capable of recording or transcoding content from such an incoming source. This option was also made possible with the introduction of the iPhone 4S. Quite often, recording this video content is done with HDMI capture cards installed on the capturing computer, such as those produced by Black Magic or AJA, among others. This is, or course limited to using computers that are capable of having such a capture card installed. Other options may include some HDMI record-enabled DVR devices (though many detect and disable such options) or firewire-based transcoding devices (like the Grass Valley ADVC-HD50, which I use).
Since getting the iPad 2 earlier this year, I have been using the Grass Valley ADVC HD50 to capture iOS screen motion from dock connected HDMI to a HDV compatible video capture application on my Mac. It has thus far worked flawlessly.
Here is an example from a video I recorded showing such captured content from both the iPHone 4S and the iPad 2.
http://youtu.be/k7jlPx8NAmw
However, now that Apple has enabled wireless iOS mirroring via Airplay in iOS 5, I find it is now much more convenient to connect an Apple TV device to the Grass Vally ADVC HD50, and capture the iOS interface screen recording wirelessly.
Here is a recent short video example in which the iPhone 4S interface was captured wirelessly via Airplay mirroring.
http://youtu.be/UKsixjcCXdI
I hope this helps.
As others have suggested, AirPlay mirroring is the way to go. To mirror directly to your computer use an AirPlay server like http://www.airserverapp.com/. Then, since it's showing up directly on your computer you can capture it using the built-in Quicktime app (File > New Screen Recording). Works great!
You can use Lookback. It records your screen, face, voice and all gestures, and uploads them to your account on the web.
Here's a demo: https://lookback.io/watch/JK354d5jcEpA7CNkE
Loren Brichter the developer of Tweetie2 wrote this little app called SimFinger to make iphone screencasts top notch!
http://blog.atebits.com/2009/03/not-your-average-iphone-screencast/
Love apps that make amateurs look like pros :)
I made a plugin for the simulator that does just this. You can find it at my blog.
It actually records the screen. It does not rely on another screen capture program like iShowU.
It will install icons for the default apps and change the carrier text to look like a real device.
Short of using a video camera, no.
Many youtube videos for demonstrating iPhone applications are made with a screen grabber application (such as iShowU, ScreenFlow, or Snapz Pro) and the simulator. Be aware that the speed of response in the simulator can be dramatically different than a device - so it's possible to get effects (and miss) with the simulator you'll never see on a device. In particular, default animations can flash by in the simulator, where they just look quick on a device.
using ScreenCaptureView class we can capture the iphone screen as video.The source code is available here.The recorded video is saved in a NSUrl,outputURL.Use that NSUrl in a method like below to play the recorded video,
-(void)playvideo
{
MPMoviePlayerController *player = [[MPMoviePlayerController alloc] initWithContentURL:outputURL ];
[player.view setFrame:CGRectMake(0,0,320,480)];
[player setMovieControlMode:MPMovieControlModeHidden];
[player setScalingMode:MPMovieScalingModeAspectFit];
[player setBackgroundColor:[UIColor blackColor]];
[player setFullscreen:YES animated:YES];
[player play];
[self addSubview:player.view];
}
call this method before releasing NSUrl in completeRecordingSession method ..it will replay what you did in the iphone screen as a video.
Note: This answer is outdated
www.iphonevideorecorder.com. There's a free trial I think, but after that you'd need to buy it. And you need to jailbreak your iphone.
You could use the video-out and capture that somehow with a firewire or sumthing..
The class MPTVOutWindow can help you out! Here's a nice sample of that!
http://iphone-developers-nc.googlegroups.com/web/UIApplication_TVOut.m
I used ScreenFlow to record the Simulator, and zoomed it and added static images as necessary. I then embedded the movie in an iPhone frame on my website. Turned out okay. See the Tweeps page for the result.
i guess it is so obvious now that no one has posted this but for the noobs.... note: iPhone 4S only
just airplay to an apple tv and video mirror then output the atv to a device that can record - like tivo, dvr etc. you can also use a video out cable on the iPad [1 and 2] now
not sure if the cable works on the iPhone 4S as I havent tested that myself
its clunky but there is no other way i can see atm.
I've continued to research this item myself, and it does appear to remain beyond us at this point.
I even tried buying a Apple Composite AV Cable, but it doesn't capture screen, just video playing like YouTube, etc.
So I decided to go with the iShowU path and that has worked out well so far.
Thanks Guys!
For a nice looking screencast, have a look at SimFinger. You will still need a screen recoder such as Snapz Pro.
Just for anyone who is still looking for solutions:
The RecordMyScreen jailbreak app is opensourced and works fine even on non-jailbreak devices if we have the developer license. You can have a look at the source: https://github.com/coolstar/RecordMyScreen
I dont believe this is possible.
Your best bet is to get something like iShowU and capture from the simulator.