|
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Objectcom.docomostar.device.RawImageCapture
public class RawImageCapture
端末のカメラデバイスを制御して RAW 画像を取得する機能を提供するクラスです。 カメラ機能と同じカメラデバイスを使用します。
RAW 画像取得機能では、以下のように状態を定義します。
状態 | 説明 |
---|---|
START | カメラデバイス起動中かつ RAW 画像が取得可能な状態 |
STOP | カメラデバイス停止中かつ RAW 画像が取得不可能な状態 |
カメラを立ち上げて撮影を行うには、start()
メソッドを呼び出します。
このメソッドを実行すると、ネイティブ側で必要なカメラのデバイスリソース獲得・初期化および撮影
が行われて START 状態になります。
Star アプリから RAW 画像を取得するには、getRawImage(byte[])
メソッドを呼び出します。
このメソッドは START 状態で呼び出します。STOP 状態で呼び出した場合は例外が発生します。
RAW 画像取得機能がSTART状態で、Star アプリがサスペンドした場合
stop()
メソッドが呼ばれた場合と同様の動作となります。つまり、状態は STOP 状態に遷移します。
STOP 状態のとき、画像サイズ、接写モード、色空間の設定が可能です。 START 状態で設定を行った場合は無視されます。 設定可能な画像サイズ、接写モード、色空間については機種依存です。
Star アプリでは、Camera
オブジェクトまたは CodeReader
オブジェクトと RawImageCapture オブジェクトは互いの状態に影響を与えません。
Star アプリから Camera
機能、CodeReader
機能を起動し撮影した場合、
RAW 画像取得機能の START 状態、STOP 状態に関わらず Camera オブジェクトから撮影画像を、
CodeReader オブジェクトからコード認識結果を取り出せることを保証します。
なお、RawImageCapture で設定した画像サイズ、接写モードは端末のカメラデバイスを利用するネイティブのカメラ機能およびコード認識機能、Camera オブジェクト、
CodeReader オブジェクトの設定には影響を与えません。
ネイティブのカメラ機能およびコード認識機能が起動している場合には、同時に RAW 画像取得機能を利用することはできません。
start()
を呼び出した時に例外が発生します。
また、同時に複数台のカメラを起動する事はできません。同様に例外が発生します。
ネイティブのカメラ機能およびコード認識機能が停止している場合には、 RAW 画像取得機能を利用することができます。 ネイティブのカメラ機能およびコード認識機能で取得したデータを未保存のまま Star アプリに処理が戻った場合でも、Star アプリで RAW 画像取得機能を利用可能です。 その場合、マルチタスク機能でネイティブのカメラ、コード認識機能に戻ることでデータを保存可能です。
RAW 画像取得機能と同時に利用できない Star アプリの他カメラ機能との競合については、
パッケージの説明
を参照してください。
端末によってサポートされない場合があります。未サポートの場合、getRawImageCapture(int)
メソッドが呼び出された時点で
UnsupportedOperationException を発生します。
フィールドの概要 | |
---|---|
static String |
COLORSPACE_RGB565 [iアプリオプションAPI]
色空間の1つで、RGB565 形式であることを表します(="RGB565")。 |
static String |
COLORSPACE_RGB888 [iアプリオプションAPI]
色空間の1つで、RGB888 形式であることを表します(="RGB888")。 |
static String |
COLORSPACE_YUV422_PLANAR [iアプリオプションAPI]
色空間の1つで、YUV422 Planar 形式であることを表します(="YUV422_PLANAR")。 |
static String |
COLORSPACE_YUV422_SEMIPLANAR [iアプリオプションAPI]
色空間の1つで、YUV422 SemiPlanar 形式であることを表します(="YUV422_SEMIPLANAR")。 |
static String |
COLORSPACE_YUV422_UYVY [iアプリオプションAPI]
色空間の1つで、YUV422 Packed format UYVY 形式であることを表します(="YUV422_UYVY")。 |
static String |
COLORSPACE_YUV422_YUY2 [iアプリオプションAPI]
色空間の1つで、YUV422 Packed format YUY2 形式であることを表します(="YUV422_YUY2")。 |
static String |
COLORSPACE_YUV422_YVYU [iアプリオプションAPI]
色空間の1つで、YUV422 Packed format YVYU 形式であることを表します(="YUV422_YVYU")。 |
コンストラクタの概要 | |
---|---|
protected |
RawImageCapture()
アプリケーションが直接このコンストラクタを呼び出して オブジェクトを生成することはできません。 |
メソッドの概要 | |
---|---|
String[] |
getAvailableColorSpaces()
端末で設定できる色空間のリストを取得します。 |
int[] |
getAvailableFocusModes()
端末で設定できるフォーカスの種類のリストを取得します。 |
int[][] |
getAvailableImageSizes()
撮影可能な画像サイズを取得します。 |
String |
getColorSpace()
色空間の設定状態を取得します。 |
int |
getFocusMode()
フォーカスの設定状態を取得します。 |
int[] |
getImageSize()
撮影画像のサイズの設定状態を取得します。 |
byte[] |
getRawImage(byte[] buffer)
RawImageCapture オブジェクト内の撮影画像を取得します。 |
float[] |
getRawImageAngleSize(int width,
int height)
指定したRAW画像のサイズに対する画角を取得します。 |
static RawImageCapture |
getRawImageCapture(int id)
RawImageCapture オブジェクトを取得します。 |
int |
getRawImageLength()
RAW 画像のデータサイズを取得します。 |
void |
setColorSpace(String colorSpace)
色空間を設定します。 |
void |
setFocusMode(int mode)
フォーカスを設定します。 |
void |
setImageSize(int width,
int height)
撮影画像のサイズを設定します。 |
void |
start()
カメラデバイスを起動して START 状態にします。 |
void |
stop()
カメラデバイスを停止して STOP 状態にします。 |
クラス Object から継承されたメソッド |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final String COLORSPACE_YUV422_YVYU [iアプリオプションAPI]
public static final String COLORSPACE_YUV422_YUY2 [iアプリオプションAPI]
public static final String COLORSPACE_YUV422_UYVY [iアプリオプションAPI]
public static final String COLORSPACE_RGB565 [iアプリオプションAPI]
public static final String COLORSPACE_RGB888 [iアプリオプションAPI]
public static final String COLORSPACE_YUV422_PLANAR [iアプリオプションAPI]
public static final String COLORSPACE_YUV422_SEMIPLANAR [iアプリオプションAPI]
コンストラクタの詳細 |
---|
protected RawImageCapture()
メソッドの詳細 |
---|
public static RawImageCapture getRawImageCapture(int id)
RawImageCapture オブジェクトを取得します。
カメラIDに対してこのメソッドが初めて呼ばれた場合はオブジェクトを生成して返します。
生成直後の RawImageCapture オブジェクトは撮影データを保持していない状態になっています。 以後、同じカメラIDに対しては、常に同じオブジェクトへの参照を返します。
Star アプリから制御可能なカメラデバイスの台数、及びカメラ ID とカメラデバイスの対応関係は機種依存です。
パーミッションとしてカメラからのRAW画像取得機能の利用が許可されていない場合、このメソッドを呼び出した時点でセキュリティ違反として強制終了されます。
Star アプリから制御可能なカメラデバイスのうち、RAW 画像取得機能をサポートしないカメラ ID が存在することがあります。 このカメラ ID を指定した場合、例外 UnsupportedOperationException が発生します。
id
- カメラ ID を指定します。カメラIDについては Camera.getCamera(int)
メソッドを参照してください。
UnsupportedOperationException
-
IllegalArgumentException
-
DeviceException
- public String[] getAvailableColorSpaces()
端末で設定できる色空間のリストを取得します。
リストの取得は START/STOP 状態に関わらず可能です。
public void setColorSpace(String colorSpace)
色空間を設定します。
引数 colorSpace に指定する値は、getAvailableColorSpaces()
で取得できる文字列になります。
文字列の代わりに、このクラスで定義されている色空間のフィールドを指定することができます。
この端末でサポートされていない文字列を指定した場合には例外が発生します。
colorSpace
- 設定する色空間の値を指定します。
IllegalArgumentException
-
public String getColorSpace()
色空間の設定状態を取得します。
最後に setColorSpace(java.lang.String)
で設定した値を返します。
一度も setColorSpace(java.lang.String)
を呼び出していない状態で、
このメソッドを呼び出した場合に、
どのような値が取得されるかは機種依存です。
色空間の設定状態の取得は START/STOP 状態に関わらず可能です。
public int[] getAvailableFocusModes()
端末で設定できるフォーカスの種類のリストを取得します。
リストの値は、Camera
クラスで定義されているフォーカスの種類の定数になります。
フォーカス切替が未サポートである場合には、このメソッドは Camera.FOCUS_NORMAL_MODE
を返します。
フォーカス切替がハードウェアによる機構である場合には、このメソッドは Camera.FOCUS_HARDWARE_SWITCH
を返します。この場合、Star アプリからフォーカス制御をするこ