I am trying to set the video quality for the UIImagePickerController but I see something really werid now. The effect on the video quality only happen after I reset my application. I try to change the video quality based on some user setting, by some code like this:
if ([preferences boolForKey:kVideoQuality]) {
NSLog(@"High Quality");
self.pickerController.videoQuality = UIImagePickerControllerQualityTypeHigh;
} else {
NSLog(@"Low Quality");
self.pickerController.videoQuality = UIImagePickerControllerQualityTypeMedium;
}
NSLog(@"%d", self.pickerController.videoQuality);
Everything looks good, when I change the setting to High Quality, the "High Quality" is output and vice versa. I also double check by the last NSLog and it aslo output the correct quality. But if I am in the high quality mode and I set to low quality, nothing happens. If I reset the app by quitting it and going back, the video record now is in low quality mode.
Anybody knows what can be possible causes?
It turns out to be a bug of the iOS SDK, it is fixed in the iOS 5 now.