0

ボタンを押したときに iPhone デバイスから自動的にビデオを録画したいのですが、15 秒間録画するとビデオが停止し、ビデオをディレクトリに保存したいと考えています。

imagepicker を使用してみましたが、そのためには開始ボタンを手動で押してビデオ録画を開始する必要があります。ユーザーがボタンを押すと、カメラがビデオの録画を開始する必要があります。

ありがとう。

4

2 に答える 2

3

これは、それ自体を使用して行うことができますUIImagePickerController。手動でスタートボタンを押す必要があるとおっしゃいましたが、それは正しくありません。

Apple のドキュメントを参照してください

コードでビデオをキャプチャするために使用できるインスタンス メソッドがあります。startVideoCapturestopVideoCapture

ボタンをクリックすると、imagePickerオブジェクトがインスタンス化され、次のメソッドが呼び出されます。

[yourImagePickerObject startVideoCapture];

その後、タイマーを呼び出すか、15 dec の遅延後にセレクターを実行して呼び出すことができます

[yourImagePickerObject stopVideoCapture];

このメソッドは、画像ピッカーのデリゲート メソッドを呼び出します– imagePickerController:didFinishPickingMediaWithInfo:

ここでメディアを処理し、ドキュメント ディレクトリに書き込むことができます。

アップデート

ボタンをクリックすると、画像ピッカーが表示され、startVideoCaptureメソッドが呼び出されますが、presentModalView 行の後にボタンのイベントをフォローするだけでは機能しません。

int64_t delayInSeconds = 1.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    [yourImagePickerobj startVideoCapture];
    [objImgPicker performSelector:@selector(stopVideoCapture) withObject:nil afterDelay:15];
});

delayInSeconds の値を変更して試すことができます。お役に立てれば :)

于 2013-04-15T10:17:49.570 に答える
1

15秒に設定VideoMaximumurationすると問題が解決する場合があります

[yourImagePickerObject setVideoMaximumDuration:15];

于 2016-09-21T07:05:38.433 に答える