AVCam is just an example of how you can use AVFoundation to create your own capture functions.
AVCam demonstrates how to use the AV Foundation capture APIs to record movies and take still images. There is a record button for recording videos, a camera button for switching between the front and rear cameras (on supported devices) and a Still button for taking images. Further
so the difference between AVFoundation and ImagePicker:
Image Picker is like a custom black box, you really don't need to do anything except implement its delegate to get captured images from the camera or camera roll. Therefore, it is very easy to use, if you are looking for basic behavior, then go for it. Please note that you can change the βSkinβ of how it looks, there are tutorials about this on the Internet.
AVFoundation is the actual access to the iPhone camera, if you take this approach, you need to implement everything yourself (or copy the example and modify it accordingly). You will need to carefully read the documentation, but the result will be much more freedom in what you can do, it is usually used for image processing, a camera with special functions, etc.
So, you really want to ask yourself what level of customization you will need and choose accordingly.
(If you're new to ios in general, go with the image picker)
source share