com.nttdocomo.opt.ui
クラス Camera

Object
  |
  +--com.nttdocomo.opt.ui.Camera

推奨されていません。 カメラ機能を使用する場合は com.nttdocomo.device.Camera クラスを使用してください。

public class Camera
extends Object

ネイティブアプリケーションのカメラ機能を呼び出して、静止画/動画を撮 影する機能を持つオブジェクトを定義します。

静止画を撮影するためには、takePictureメソッドを呼び出します。呼び出 し前に指定した画像サイズ、連写モードを反映して、静止画を撮影するモー ドでカメラ機能を立ち上げます。カメラ機能の動作中は、Javaアプリケー ションはサスペンドします。

動画を撮影するためには、takeMovieメソッドを呼び出します。呼び出し前 に指定した画像サイズ、画質、マイク音量を反映して、動画を撮影するモー ドでカメラ機能を立ち上げます。カメラ機能の動作中は、Javaアプリケー ションはサスペンドします。

撮影時に、ユーザの操作で静止画と動画の撮影モードを切り替えることは できないものとします。また、カメラ機能を立ち上げる前に指定した画像 サイズ、連写モード、画質、マイク音量の設定についても、ユーザ操作に より変更することはできないものとします。

ユーザの操作によりカメラ機能が終了すると、Javaアプリケーションがレ ジュームし、takePicture/takeMovieメソッドから復帰します。ユーザがカ メラ機能で撮影を行い、撮影画像を保存した場合は、カメラオブジェクト 内にその撮影画像が保持されます。ユーザが撮影を行わなかったり、或い は撮影画像を保存しなかった場合は、カメラオブジェクト内に撮影画像は 保持されません。

静止画撮影において連写モードを無効にして撮影した場合、または動画撮 影の場合は、カメラオブジェクト内に保持される撮影画像は1つのみです。 静止画撮影において連写モードを有効にして撮影した場合は、複数の撮影 画像が保持されます。撮影画像は、撮影順に順序付けられてカメラオブジェ クト内に保持されます。保持されている撮影画像は、インデックス(位置指 定)によって取得することができます。インデックスはJava配列と同様に0 から始まります。

撮影は何回でも行うことができますが、takePicture/takeMovieメソッドを 呼び出す前に保持されているすべての撮影画像は、takePicture/takeMovie メソッドを呼び出した時点で破棄されます。

導入されたバージョン:
DoJa-2.0

フィールドの概要
static int ATTR_CONTINUOUS_SHOT_OFF
          推奨されていません。 連写モード属性の一つで連写モードが無効であることを表します(=0)。
static int ATTR_CONTINUOUS_SHOT_ON
          推奨されていません。 連写モードの属性の一つで連写モードが有効であることを表します(=1)。
static int ATTR_QUALITY_HIGH
          推奨されていません。 画質属性の一つで品質優先を表します(=0)。
static int ATTR_QUALITY_LOW
          推奨されていません。 画質属性の一つで録画時間優先を表します(=2)。
static int ATTR_QUALITY_STANDARD
          推奨されていません。 画質属性の一つで標準を表します(=1)。
static int ATTR_VOLUME_MAX
          推奨されていません。 マイク入力の音量調整の属性の一つで最大音量を表します(=127)。
static int ATTR_VOLUME_MIN
          推奨されていません。 マイク入力の音量調整の属性の一つで最小音量(ミュート状態)を表します(=0)。
static int DEV_CONTINUOUS_SHOT
          推奨されていません。 連写モードを表します(=0)。
static int DEV_QUALITY
          推奨されていません。 画質を表します(=1)。
static int DEV_SOUND
          推奨されていません。 マイク入力の音量調整を表します(=2)。
 
コンストラクタの概要
protected Camera()
          推奨されていません。 アプリケーションが直接このコンストラクタを呼び出してオブジェク トを生成することはできません。
 
メソッドの概要
 void disposeImages()
          推奨されていません。 カメラオブジェクト内のすべての撮影画像を破棄します。
 int getAttribute(int attr)
          推奨されていません。 カメラの属性値を取得します。
static Camera getCamera(int id)
          推奨されていません。 カメラオブジェクトを生成して返却します。
 com.nttdocomo.ui.MediaImage getImage(int index)
          推奨されていません。 カメラオブジェクト内の、指定されたインデックスにある撮影画像を メディアイメージオブジェクトとして返します。
 long getImageLength(int index)
          推奨されていません。 カメラオブジェクト内の、指定されたインデックスにある撮影画像の データサイズを返します。
 java.io.InputStream getInputStream(int index)
          推奨されていません。 カメラオブジェクト内の、指定されたインデックスにある撮影画像を 入力ストリームとして返します。
 long getMaxImageLength()
          推奨されていません。 カメラ機能にて動画撮影する場合に、撮影可能な最大データサイズを 返します。
 int getNumberOfImages()
          推奨されていません。 カメラオブジェクト内に保持されている撮影画像数を返します。
 boolean isAvailable(int attr)
          推奨されていません。 カメラの属性が設定可能かどうかを調べます。
 void setAttribute(int attr, int value)
          推奨されていません。 カメラの属性を設定します。
 void setImageSize(int width, int height)
          推奨されていません。 撮影画像の画像サイズを設定します。
 void takeMovie()
          推奨されていません。 カメラ機能を動画撮影モードで呼び出します。
 void takePicture()
          推奨されていません。 カメラ機能を静止画撮影モードで呼び出します。
 
クラス Object から継承したメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

DEV_CONTINUOUS_SHOT

public static final int DEV_CONTINUOUS_SHOT
推奨されていません。 
連写モードを表します(=0)。 連写モードの連写可能コマ数は機種依存です。

関連項目:
定数フィールド値

DEV_QUALITY

public static final int DEV_QUALITY
推奨されていません。 
画質を表します(=1)。

関連項目:
定数フィールド値

DEV_SOUND

public static final int DEV_SOUND
推奨されていません。 
マイク入力の音量調整を表します(=2)。

属性値にはATTR_VOLUME_MIN(=0)〜ATTR_VOLUME_MAX(=127)を指定 します。デフォルト値は100です。

関連項目:
定数フィールド値

ATTR_CONTINUOUS_SHOT_OFF

public static final int ATTR_CONTINUOUS_SHOT_OFF
推奨されていません。 
連写モード属性の一つで連写モードが無効であることを表します(=0)。 連写モード属性のデフォルト値です。

関連項目:
定数フィールド値

ATTR_CONTINUOUS_SHOT_ON

public static final int ATTR_CONTINUOUS_SHOT_ON
推奨されていません。 
連写モードの属性の一つで連写モードが有効であることを表します(=1)。

関連項目:
定数フィールド値

ATTR_QUALITY_HIGH

public static final int ATTR_QUALITY_HIGH
推奨されていません。 
画質属性の一つで品質優先を表します(=0)。

関連項目:
定数フィールド値

ATTR_QUALITY_STANDARD

public static final int ATTR_QUALITY_STANDARD
推奨されていません。 
画質属性の一つで標準を表します(=1)。 画質属性のデフォルト値です。

関連項目:
定数フィールド値

ATTR_QUALITY_LOW

public static final int ATTR_QUALITY_LOW
推奨されていません。 
画質属性の一つで録画時間優先を表します(=2)。

関連項目:
定数フィールド値

ATTR_VOLUME_MIN

public static final int ATTR_VOLUME_MIN
推奨されていません。 
マイク入力の音量調整の属性の一つで最小音量(ミュート状態)を表します(=0)。

関連項目:
定数フィールド値

ATTR_VOLUME_MAX

public static final int ATTR_VOLUME_MAX
推奨されていません。 
マイク入力の音量調整の属性の一つで最大音量を表します(=127)。

関連項目:
定数フィールド値
コンストラクタの詳細

Camera

protected Camera()
推奨されていません。 
アプリケーションが直接このコンストラクタを呼び出してオブジェク トを生成することはできません。

メソッドの詳細

getCamera

public static Camera getCamera(int id)
推奨されていません。 
カメラオブジェクトを生成して返却します。生成直後のカメラオブジェ クトは撮影画像を保持していない状態になっています。

端末に搭載されているカメラデバイスのうち、Javaから制御可能な ものには、それぞれ固定的なカメラID が割り振られています。ユーザ はカメラIDを指定することにより、カメラデバイスを指定することが できます。カメラIDは 0, 1, 2 … の順で割り振られています。

尚、Java から制御可能なカメラデバイスの台数、及びカメラIDとカメ ラデバイスの対応関係は機種依存です。

パラメータ:
id - カメラIDを指定します。
戻り値:
カメラオブジェクトを返します。
例外:
IllegalArgumentException - 引数 id に負数が指定された 場合、またはJava から制御可能なカメラデバイスの台数以上の値が指 定された場合に発生します。
com.nttdocomo.ui.UIException - 取得済みのカメラオブジェクトと同一のIDを 指定してカメラオブジェクトを生成しようとした場合に発生します。 (BUSY_RESOURCE)
com.nttdocomo.ui.UIException - カメラデバイスを確保できない場合に発生し ます。(NO_RESOURCES)

takePicture

public void takePicture()
                 throws java.io.InterruptedIOException
推奨されていません。 
カメラ機能を静止画撮影モードで呼び出します。このメソッドが呼び 出されると、Javaアプリケーションはサスペンドし、ネイティブアプ リケーションのカメラ機能が起動します。カメラ機能が終了すると Javaアプリケーションはレジュームします。

ユーザの操作によりカメラ機能が終了すると、Javaアプリケーション がレジュームした時点でこのメソッドから復帰します。ユーザがカメ ラ機能で撮影を行い、撮影画像を保存した場合は、カメラオブジェク ト内にその撮影画像が保持されます。ユーザが撮影を行わなかったり、 或いは撮影画像を保存しなかった場合は、カメラオブジェクト内に撮 影画像は保持されません。

カメラオブジェクト内に保持される撮影画像数は、連写モードを無効 にして撮影した場合は1つです。連写モードを有効にして撮影した場 合は複数保持されますが、ユーザ操作やメモリ使用状況などにより連 写可能コマ数よりも少ないコマ数しか保持されない可能性があります。 尚、本メソッドを呼び出す前に保持していた撮影画像は、本メソッド を呼び出した時点ですべて破棄されます。

カメラ機能が競合などで中断した場合には、Javaアプリケーションが レジューム復帰した時点で例外が発生します。この場合、静止画撮影 中にカメラ機能が中断した場合には、連写モードが無効の場合は撮影 画像は保持されませんが、連写モードが有効の場合は中断前までの撮 影画像が保持されます。静止画撮影前にカメラ機能が中断した場合に は、撮影画像は保持されません。

例外:
com.nttdocomo.lang.IllegalStateException - 待ち受け実行の非活性化状態で呼 び出された場合に発生します。
com.nttdocomo.device.DeviceException - [DoJa-3.5] バックグラウンドで動作しているネイティブ機能が未保存のデータを保持している場合に、 ユーザが当該データの破棄を拒否すると発生します(BUSY_RESOURCE)。
java.io.InterruptedIOException - カメラ機能が中断した場合に発 生します。

takeMovie

public void takeMovie()
               throws java.io.InterruptedIOException
推奨されていません。 
カメラ機能を動画撮影モードで呼び出します。このメソッドが呼び 出されると、Javaアプリケーションはサスペンドし、ネイティブアプリケーションのカ メラ機能が起動します。カメラ機能が終了するとJavaアプリケーションはレジュームし ます。

ユーザの操作によりカメラ機能が終了すると、Javaアプリケーションがレジュームした 時点でこのメソッドから復帰します。ユーザがカメラ機能で撮影を行 い、撮影画像を保存した場合は、カメラオブジェクト内にその撮影画 像が保持されます。ユーザが撮影を行わなかったり、或いは撮影画像 を保存しなかった場合は、カメラオブジェクト内に撮影画像は保持さ れません。

カメラオブジェクト内に保持される撮影画像数は1つのみです。尚、 本メソッドを呼び出す前に保持していた撮影画像は、本メソッドを呼 び出した時点ですべて破棄されます。

カメラ機能が競合などで中断した場合には、Javaアプリケーションが レジューム復帰した時点で例外が発生します。この場合、動画撮影中 にカメラ機能が中断した場合には、中断前までの撮影画像がカメラオ ブジェクト内に保持されます。動画撮影前にカメラ機能が中断した場 合には、撮影画像は保持されません。

例外:
com.nttdocomo.lang.IllegalStateException - 待ち受け実行の非活性化状態で呼 び出された場合に発生します。
com.nttdocomo.device.DeviceException - [DoJa-3.5] バックグラウンドで動作しているネイティブ機能が未保存のデータを保持している場合に、 ユーザが当該データの破棄を拒否すると発生します(BUSY_RESOURCE)。
java.io.InterruptedIOException - カメラ機能が中断した場合に発 生します。

getNumberOfImages

public int getNumberOfImages()
推奨されていません。 
カメラオブジェクト内に保持されている撮影画像数を返します。

戻り値:
保持されている撮影画像数を返します。

getImageLength

public long getImageLength(int index)
推奨されていません。 
カメラオブジェクト内の、指定されたインデックスにある撮影画像の データサイズを返します。

パラメータ:
index - 撮影画像のインデックス
戻り値:
指定されたインデックスにある撮影画像のデータサイズをバ イト単位で返します。
例外:
ArrayIndexOutOfBoundsException - index に負数が指定さ れた場合、またはカメラオブジェクトが保持している撮影画像数以上 の値が指定された場合に発生します。

getMaxImageLength

public long getMaxImageLength()
推奨されていません。 
カメラ機能にて動画撮影する場合に、撮影可能な最大データサイズを 返します。撮影可能な最大データサイズは、その時点のメモリ使用状 況によって変動する可能性があります。

戻り値:
撮影可能な最大データサイズをバイト単位で返します。

getImage

public com.nttdocomo.ui.MediaImage getImage(int index)
推奨されていません。 
カメラオブジェクト内の、指定されたインデックスにある撮影画像を メディアイメージオブジェクトとして返します。

パラメータ:
index - 撮影画像のインデックス
戻り値:
指定されたインデックスにある撮影画像を返します。
例外:
ArrayIndexOutOfBoundsException - index に負数が指定さ れた場合、またはカメラオブジェクトが保持している撮影画像数以上 の値が指定された場合に発生します。

getInputStream

public java.io.InputStream getInputStream(int index)
推奨されていません。 
カメラオブジェクト内の、指定されたインデックスにある撮影画像を 入力ストリームとして返します。

パラメータ:
index - 撮影画像のインデックス
戻り値:
指定されたインデックスにある撮影画像を返します。
例外:
ArrayIndexOutOfBoundsException - index に負数が指定さ れた場合、またはカメラオブジェクトが保持している撮影画像数以上 の値が指定された場合に発生します。

disposeImages

public void disposeImages()
推奨されていません。 
カメラオブジェクト内のすべての撮影画像を破棄します。カメラオブ ジェクトは撮影画像を保持していない状態になります。カメラオブジェ クトが撮影画像を保持していない状態で、このメソッドを呼び出した 場合は何もしません。

カメラオブジェクト内の撮影画像が破棄された場合でも、カメラオブ ジェクトから取得したメディアイメージオブジェクト/入力ストリーム は有効のままとなります。

尚、カメラオブジェクトがGCにより回収された場合、システムはカメ ラオブジェクト内の撮影画像についても自動的に解放を行います。


setImageSize

public void setImageSize(int width,
                         int height)
推奨されていません。 
撮影画像の画像サイズを設定します。画像サイズは矩形領域の幅と 高さを指定します。

指定した画像サイズのまま撮影されるかどうかは機種依存です。指定 した画像サイズのまま撮影されない場合は、指定した画像サイズが収 まる最も小さな画像サイズで撮影されます。画像サイズの種類と段階 は機種依存です。ただし、設定した画像サイズが、撮影可能な最大サ イズを超えた場合は、撮影可能な最大サイズで撮影されます。

QCIFサイズは 176×144 、SubQCIFサイズは 128×96 をそれぞれ指定 してください。

画像サイズは撮影前に設定してください。撮影後に設定した画像サイ ズは、次回の撮影画像に反映されます。

パラメータ:
width - 画像サイズの幅
height - 画像サイズの高さ
例外:
IllegalArgumentException - 引数 width, height のどちら かまたは両方に 0 以下の値が指定された場合に発生します。

isAvailable

public boolean isAvailable(int attr)
推奨されていません。 
カメラの属性が設定可能かどうかを調べます。このメソッドが true を返した場合は、その属性を setAttribute メソッドで制御すること が可能です。 端末がその属性の制御をサポートしていない場合や、 端末の設定によってその属性の制御が制限されている場合は false を 返します。

パラメータ:
attr - カメラ属性の種類を指定します。
戻り値:
属性が制御可能な場合は true を、 そうでなければ false を返します。

setAttribute

public void setAttribute(int attr,
                         int value)
推奨されていません。 
カメラの属性を設定します。存在しない属性の種類が指定された場合 は何も行わずに無視されます。

パラメータ:
attr - 設定する属性を指定します。
value - 設定する属性の値を指定します。
例外:
IllegalArgumentException - 引数 attr で指定された有効な 属性に対して、引数 value に不正な値が指定された場合に発生します。

getAttribute

public int getAttribute(int attr)
推奨されていません。 
カメラの属性値を取得します。存在しない属性の種類が指定された場 合は -1 を返します。

パラメータ:
attr - カメラ属性の種類を指定します。
戻り値:
指定された属性の値を返します。


NTT DoCoMo,Inc.

本製品または文書は著作権法により保護されており、その使用、複製、再頒布および逆コンパイルを制限するライセンスのもとにおいて頒布されます。NTTドコモ(その他に許諾者がある場合は当該許諾者も含めて)の書面による事前の許可なく、本製品および関連する文書のいかなる部分も、いかなる方法によっても複製することが禁じられます。フォントを含む第三者のソフトウェアは、著作権法により保護されており、その提供者からライセンスを受けているものです。

Sun、Sun Microsystems、Java、J2MEおよびJ2SEは、米国およびその他の国における米国 Sun Microsystems,Inc.の商標または登録商標です。サンのロゴマークは、米国 Sun Microsystems, Inc.の登録商標です。

「iモード」、「iアプリ/アイアプリ」、「i-αppli」ロゴ、「DoJa」はNTTドコモの商標または登録商標です。