このプラグインは、デバイスのオーディオ、イメージ、およびビデオ キャプチャ機能へのアクセスを提供します。
警告: イメージ、ビデオ、またはデバイスのカメラやマイクからの音声の収集と利用を重要なプライバシーの問題を発生させます。 アプリのプライバシー ポリシーは、アプリがそのようなセンサーを使用する方法と、記録されたデータは他の当事者と共有かどうかを議論すべきです。 さらに、カメラまたはマイクのアプリの使用がない場合明らかに、ユーザー インターフェイスで、前に、アプリケーションにアクセスするカメラまたはマイクを (デバイスのオペレーティング システムしない場合そう既に) - 時間のお知らせを提供する必要があります。 その通知は、上記の (例えば、 [ok]をおかげで選択肢を提示する) によってユーザーのアクセス許可を取得するだけでなく、同じ情報を提供する必要があります。 いくつかのアプリのマーケットプ レース - 時間の通知を提供して、カメラまたはマイクにアクセスする前にユーザーからアクセス許可を取得するアプリをする必要がありますに注意してください。 詳細については、プライバシーに関するガイドを参照してください。
cordova plugin add org.apache.cordova.media-capture
supportedAudioModes: デバイスでサポートされている形式の録音。(ConfigurationData[])
supportedImageModes: 記録画像サイズとデバイスでサポートされている形式です。(ConfigurationData[])
supportedVideoModes: 記録のビデオ解像度とデバイスでサポートされている形式です。(ConfigurationData[])
オーディオ レコーダー アプリケーションを起動し、キャプチャしたオーディオ クリップ ファイルに関する情報を返します。
navigator.device.capture.captureAudio( CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureAudioOptions options] );
オーディオ録音デバイスの既定のオーディオ録音アプリケーションを使用してキャプチャする非同期操作を開始します。 操作を単一のセッションで複数の録音をキャプチャするデバイスのユーザーことができます。
キャプチャ操作が終了、ユーザー アプリケーション、または録音で指定された最大数の録音が終了すると CaptureAudioOptions.limit
に達した。 いいえの場合 limit
パラメーターの値が指定されて、既定の 1 つ (1)、キャプチャ操作終了後、ユーザーが単一のオーディオ クリップを録音します。
キャプチャ操作が完了すると、 CaptureCallback
の配列を実行 MediaFile
オーディオ クリップ ファイルをキャプチャしてそれぞれを記述するオブジェクトします。 オーディオ クリップをキャプチャする前に、ユーザーが操作を終了した場合、 CaptureErrorCallback
で実行する、 CaptureError
オブジェクト、特色、 CaptureError.CAPTURE_NO_MEDIA_FILES
のエラー コード。
// capture callback var captureSuccess = function(mediaFiles) { var i, path, len; for (i = 0, len = mediaFiles.length; i < len; i += 1) { path = mediaFiles[i].fullPath; // do something interesting with the file } }; // capture error callback var captureError = function(error) { navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error'); }; // start audio capture navigator.device.capture.captureAudio(captureSuccess, captureError, {limit:2});
オーディオ キャプチャの構成オプションをカプセル化します。
制限: デバイス ユーザーは、単一のキャプチャ操作で記録することができますオーディオ クリップの最大数。値 1 (デフォルトは 1) 以上にする必要があります。
期間: オーディオのサウンド クリップの最大継続時間を秒単位で。
// limit capture operation to 3 media files, no longer than 10 seconds each var options = { limit: 3, duration: 10 }; navigator.device.capture.captureAudio(captureSuccess, captureError, options);
duration
パラメーターはサポートされていません。長さの記録プログラムで限定することはできません。duration
パラメーターはサポートされていません。長さの記録プログラムで限定することはできません。duration
パラメーターはサポートされていません。長さの記録プログラムで限定することはできません。limit
パラメーターはサポートされていません、各呼び出しに対して、1 つだけ記録を作成できます。limit
パラメーターはサポートされていません、各呼び出しに対して、1 つだけ記録を作成できます。カメラ アプリケーションを起動し、キャプチャしたイメージ ファイルに関する情報を返します。
navigator.device.capture.captureImage( CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureImageOptions options] );
デバイスのカメラ アプリケーションを使用して画像をキャプチャする非同期操作を開始します。操作では、単一のセッションで 1 つ以上のイメージをキャプチャすることができます。
キャプチャ操作終了いずれかのユーザーが閉じると、カメラ アプリケーションまたは録音で指定された最大数 CaptureAudioOptions.limit
に達した。 場合ない limit
値が指定されて、既定の 1 つ (1)、キャプチャ操作終了後、ユーザーは単一のイメージをキャプチャします。
キャプチャ操作が完了したら、それを呼び出す、 CaptureCB
の配列がコールバック MediaFile
各キャプチャされたイメージ ファイルを記述するオブジェクト。 ユーザーは、イメージをキャプチャする前に操作が終了した場合、 CaptureErrorCB
コールバックで実行する、 CaptureError
オブジェクトの特色、 CaptureError.CAPTURE_NO_MEDIA_FILES
エラー コード。
Zune を介してお使いのデバイスが接続されているネイティブ カメラ アプリケーションを呼び出すと、動作しませんし、エラー コールバックを実行します。
// capture callback var captureSuccess = function(mediaFiles) { var i, path, len; for (i = 0, len = mediaFiles.length; i < len; i += 1) { path = mediaFiles[i].fullPath; // do something interesting with the file } }; // capture error callback var captureError = function(error) { navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error'); }; // start image capture navigator.device.capture.captureImage(captureSuccess, captureError, {limit:2});
イメージ キャプチャの構成オプションをカプセル化します。
// limit capture operation to 3 images var options = { limit: 3 }; navigator.device.capture.captureImage(captureSuccess, captureError, options);
ビデオ レコーダー アプリケーションを起動し、キャプチャしたビデオ クリップ ファイルに関する情報を返します。
navigator.device.capture.captureVideo( CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureVideoOptions options] );
デバイスのビデオ録画アプリケーションを使用してビデオ記録をキャプチャする非同期操作を開始します。操作は、単一のセッションで 1 つ以上の録音をキャプチャすることができます。
キャプチャ操作終了いずれかユーザーがビデオ録画アプリケーションまたは録音で指定された最大数を終了時 CaptureVideoOptions.limit
に達した。 いいえの場合 limit
パラメーター値が指定されて、既定の 1 つ (1)、ユーザーは 1 つのビデオ クリップを記録した後にキャプチャ操作が終了しました。
キャプチャ操作が完了したら、それは CaptureCB
の配列でコールバックを実行します MediaFile
ビデオ クリップ ファイルをキャプチャしてそれぞれを記述するオブジェクトします。 ユーザーがビデオ クリップをキャプチャする前に操作を終了した場合、 CaptureErrorCB
コールバックで実行する、 CaptureError
オブジェクトの特色を CaptureError.CAPTURE_NO_MEDIA_FILES
エラー コード。
// capture callback var captureSuccess = function(mediaFiles) { var i, path, len; for (i = 0, len = mediaFiles.length; i < len; i += 1) { path = mediaFiles[i].fullPath; // do something interesting with the file } }; // capture error callback var captureError = function(error) { navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error'); }; // start video capture navigator.device.capture.captureVideo(captureSuccess, captureError, {limit:2});
CaptureError.CAPTURE_NOT_SUPPORTED
、アプリケーションがデバイスにインストールされていない場合はエラー コード。ビデオ キャプチャの構成オプションをカプセル化します。
制限: デバイスのユーザーを単一のキャプチャ操作でキャプチャすることができますビデオ クリップの最大数。値 1 (デフォルトは 1) 以上にする必要があります。
期間: ビデオ クリップの最大継続時間を秒単位で。
// limit capture operation to 3 video clips var options = { limit: 3 }; navigator.device.capture.captureVideo(captureSuccess, captureError, options);
成功したメディア キャプチャ操作時に呼び出されます。
function captureSuccess( MediaFile[] mediaFiles ) { ... };
この関数は成功したキャプチャ操作の完了後に実行します。 いずれかのメディア ファイルをキャプチャすると、この時点で、ユーザーがメディア ・ キャプチャ ・ アプリケーションを終了またはキャプチャ制限に達しています。
各 MediaFile
オブジェクトにはキャプチャしたメディア ファイルについて説明します。
// capture callback function captureSuccess(mediaFiles) { var i, path, len; for (i = 0, len = mediaFiles.length; i < len; i += 1) { path = mediaFiles[i].fullPath; // do something interesting with the file } };
失敗したメディア キャプチャ操作からの結果のエラー コードをカプセル化します。
CaptureError.CAPTURE_INTERNAL_ERR
: カメラまたはマイクの画像やサウンドをキャプチャに失敗しました。
CaptureError.CAPTURE_APPLICATION_BUSY
: 現在カメラやオーディオのキャプチャのアプリケーション別のキャプチャ要求を提供します。
CaptureError.CAPTURE_INVALID_ARGUMENT
: 無効な API の使用 (例えば、の値 limit
が 1 未満です)。
CaptureError.CAPTURE_NO_MEDIA_FILES
: ユーザーが何かをキャプチャする前にカメラやオーディオのキャプチャ アプリケーションを終了します。
CaptureError.CAPTURE_NOT_SUPPORTED
: 要求されたキャプチャ操作はサポートされていません。
メディア キャプチャ操作中にエラーが発生した場合に呼び出されます。
function captureError( CaptureError error ) { ... };
この関数でエラーが発生を起動しようとすると、メディアのキャプチャ操作を実行します。 障害シナリオを含めますキャプチャ アプリケーションがビジー状態、キャプチャ操作は既に起こって、または、操作をキャンセルする前にメディア ファイルが自動的にキャプチャされます。
この関数で実行する、 CaptureError
、適切なエラーを格納しているオブジェクトcode
.
// capture error callback var captureError = function(error) { navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error'); };
デバイスがサポートするメディア キャプチャ パラメーターのセットをカプセル化します。
デバイスでサポートされているメディアのキャプチャのモードについて説明します。構成データには、MIME の種類、およびビデオやイメージ キャプチャのキャプチャ寸法が含まれます。
MIME の種類はRFC2046に従う必要があります。例:
video/3gpp
video/quicktime
image/jpeg
audio/amr
audio/wav
タイプ: 小文字の文字列を ASCII でエンコードされたメディアの種類を表します。(,)
高さ: イメージまたはビデオのピクセルでの高さ。値は、サウンド クリップの場合は 0 です。(数)
幅: イメージまたはピクセルのビデオの幅。値は、サウンド クリップの場合は 0 です。(数)
// retrieve supported image modes var imageModes = navigator.device.capture.supportedImageModes; // Select mode that has the highest horizontal resolution var width = 0; var selectedmode; for each (var mode in imageModes) { if (mode.width > width) { width = mode.width; selectedmode = mode; } }
任意のプラットフォームでサポートされていません。すべての構成データの配列は空です。
取得についての書式情報メディア キャプチャ ファイル。
mediaFile.getFormatData (MediaFileDataSuccessCB successCallback, [MediaFileDataErrorCB 解り]);
この関数は、非同期的にメディア ファイルの形式情報を取得しようとします。 かどうかは成功、呼び出します、 MediaFileDataSuccessCB
コールバックを MediaFileData
オブジェクト。 この関数を呼び出します、試行が失敗した場合、 MediaFileDataErrorCB
コールバック。
API 情報にアクセスするメディア ファイル形式は限られて、それで、必ずしもすべて MediaFileData
プロパティがサポートされます。
ので、すべてのメディア ファイルに関する情報の API を提供しない MediaFileData
既定値を持つオブジェクトを返します。
API 情報にアクセスするメディア ファイル形式は限られて、それで、必ずしもすべて MediaFileData
プロパティがサポートされます。
API 情報にアクセスするメディア ファイル形式は限られて、それで、必ずしもすべて MediaFileData
プロパティがサポートされます。
メディア キャプチャ ファイルのプロパティをカプセル化します。
名前: パス情報なしのファイルの名前。(,)
fullPath: 名を含むファイルの完全パス。(,)
タイプ: ファイルの mime の種類 (,)
ファイルサイズ: 日付と時刻、ファイルが最後に変更されました。(日)
サイズ: バイトで、ファイルのサイズ。(数)
メディア ファイルの形式情報をカプセル化します。
コーデック: オーディオおよびビデオ コンテンツの実際のフォーマット。(,)
ビットレート: コンテンツの平均ビットレート。値が画像の場合は 0 です。(数)
高さ: イメージまたはビデオのピクセルでの高さ。値は、オーディオ クリップの場合は 0 です。(数)
幅: イメージまたはピクセルのビデオの幅。値は、オーディオ クリップの場合は 0 です。(数)
期間: 秒のビデオまたはサウンドのクリップの長さ。値が画像の場合は 0 です。(数)
メディア ファイルの形式情報を提供する API がしないので、 MediaFileData
によって返されるオブジェクト MediaFile.getFormatData
機能次の既定値。
コーデック: ないサポートされておりを返しますnull
.
ビットレート: ないサポートされており、ゼロを返します。
高さ: ないサポートされており、ゼロを返します。
幅: ないサポートされており、ゼロを返します。
期間: ないサポートされており、ゼロを返します。
以下がサポート MediaFileData
プロパティ。
コーデック: いないサポートしを返しますnull
.
ビットレート: いないサポートし、ゼロを返します。
高さ: サポート: イメージ ファイルやビデオ ファイルのみです。
幅: サポート: イメージ ファイルやビデオ ファイルのみです。
期間: サポート: オーディオおよびビデオ ファイルのみ
以下がサポート MediaFileData
プロパティ。
コーデック: ないサポートされておりを返しますnull
.
ビットレート: ないサポートされており、ゼロを返します。
高さ: サポート: イメージ ファイルやビデオ ファイルのみです。
幅: サポート: イメージ ファイルやビデオ ファイルのみです。
期間: サポート: オーディオおよびビデオ ファイルのみです。
以下がサポート MediaFileData
プロパティ。
コーデック: ないサポートされておりを返しますnull
.
ビットレート: iOS4 オーディオのみのデバイスでサポートされています。画像や動画はゼロを返します。
高さ: サポート: イメージ ファイルやビデオ ファイルのみです。
幅: サポート: イメージ ファイルやビデオ ファイルのみです。
期間: サポート: オーディオおよびビデオ ファイルのみです。