2010-12-17 13 views
2

私はビデオ録画機能を行うためのコードを実装しています。それは3GSデバイス上で正常に動作します。私はいくつかのタイマー設定に基づいて録画を制限したい。私は20秒または35秒までの録画しかできないようにしたいと考えています。どうやってやるの?ビデオを録画中にメディアプレーヤーの上にタイマーの種類のコントロールを表示することはできますか?iPhone:タイマーに基づくビデオ録画?

お願いします。

UIImagePickerController *pickerController = 
         [[[UIImagePickerController alloc] init] autorelease]; 
    pickerController.delegate = self; 
    pickerController.sourceType = UIImagePickerControllerSourceTypeCamera; 
    pickerController.showsCameraControls = YES; 
    pickerController.mediaTypes = [NSArray arrayWithObject:(id)kUTTypeMovie]; 
    [self presentModalViewController:pickerController animated:YES]; 
+0

like-ビデオをキャプチャするためのタイマーを設定することができ、私は「UIImagePickerControllerクラスリファレンス」のパラメータ「videoMaximumDuration」を見ました。私は、これをビデオ録画に使用して時間を制限することができると思います。例えば: "pickerController.videoMaximumDuration = 15; – Getsy

+0

あなたが試したことがありますか? –

+0

2日後に物理的な3GSデバイスを取得しているので、今すぐビデオ録画をテストできません。可能であれば、私のコードを助けて今日テストしてもらえますか? – Getsy

答えて

6

videoMaximumDurationNSTimeIntervalを期待し、float値のためtpyedefです:

はここでビデオ録画のための私のコードです。したがって、浮動小数点値を渡す必要があります。このようにそれを試してみてください。

UIImagePickerController *pickerController = [[UIImagePickerController alloc] init]; 
pickerController.delegate = self; 
pickerController.sourceType = UIImagePickerControllerSourceTypeCamera; 
pickerController.showsCameraControls = YES; 
pickerController.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie]; // kUTTypeMovie is actually an NSString. 
pickerController.videoMaximumDuration = 30.0f; // limits video length to 30 seconds. 
[self presentModalViewController:pickerController animated:YES]; 
[pickerController release]; 
+0

こんにちはBjorn、ありがとうBtw、テストしましたか?ビデオ録画はこのコードで最大30秒しか使用できません。 "Retake"画面? – Getsy

+0

私はそれをテストしました、それは期待どおりに動作します。 – Getsy

0

UIImagePickerControllerクラスはNSTimeIntervalのために働く性質videoMaximumDurationを持っています。

デフォルトでは、それはだ値が10分のために設定されていますが、それはあなたの必要性に応じてfloat値を変更することができます。

あなたはvideoPickerControllerという名前UIImagePickerControllerクラスのオブジェクトを作るのであれば、あなたは

videoPickerController.videoMaximumDuration = 25.0f; 
関連する問題