メディアイメージを定義します。 このメディアイメージ インタフェースは、 メディアリソースを画像として扱う場合に使用します。
メディアイメージは MediaManager クラスのメソッドを使用して取得します。 実際にどのようなクラスのオブジェクトが返されるかは機種依存です。 メディアイメージは VisualPresenter コンポーネントで表示するか、 Image オブジェクトを取り出して使用します。
MediaManager,
VisualPresenter| フィールドの概要 | |
static String |
MP4_AUDIOTRACK [iアプリオプションAPI]
動画データに含まれる、 再生可能な Audio トラックの数を表すプロパティのキーです(= "mp4.audiotrack")。 |
static String |
MP4_TEXTTRACK [iアプリオプションAPI]
動画データに含まれる、 再生可能な Text トラックの数を表すプロパティのキーです(= "mp4.texttrack")。 |
static String |
MP4_VIDEOTRACK [iアプリオプションAPI]
動画データに含まれる、 再生可能な Video トラックの数を表すプロパティのキーです(= "mp4.videotrack")。 |
| メソッドの概要 | |
ExifData |
getExifData() [iアプリオプションAPI]
このメディアイメージに関連付けられている EXIF 情報を取得します。 |
int |
getHeight()
イメージの高さを取得します。 |
Image |
getImage()
メディアイメージからイメージオブジェクトを取得します。 |
int |
getWidth()
イメージの幅を取得します。 |
void |
setExifData(ExifData exif) [iアプリオプションAPI]
このメディアイメージに、指定された EXIF 情報を関連付けます。 |
void |
use(MediaResource overwritten,
boolean useOnce)
指定されたメディアイメージのメモリ領域を再利用して、 かつ、一度きりの利用であるかどうかを指定して、 このメディアイメージの使用開始を宣言します。 |
| インタフェース com.nttdocomo.ui.MediaResource から継承したメソッド |
dispose, getProperty, isRedistributable, setProperty, setRedistributable, unuse, use |
| フィールドの詳細 |
public static final String MP4_VIDEOTRACK [iアプリオプションAPI]
動画データに含まれる、
再生可能な Video トラックの数を表すプロパティのキーです(= "mp4.videotrack")。
MediaResource.getProperty(String)
メソッドの引数として使用します。
動画データに再生可能な Video トラックが含まれていた場合、
含まれている Video トラックの数を表す文字列
(Integer.parseInt(String) にて変換できる文字列)
が返されます。
再生可能な Video トラックが含まれていなかった場合、
"0" が返されます。
このメディアイメージが動画データでない場合にはこのキーは無効です。
public static final String MP4_AUDIOTRACK [iアプリオプションAPI]
動画データに含まれる、
再生可能な Audio トラックの数を表すプロパティのキーです(= "mp4.audiotrack")。
MediaResource.getProperty(String)
メソッドの引数として使用します。
動画データに再生可能な Audio トラックが含まれていた場合、
含まれている Audio トラックの数を表す文字列
(Integer.parseInt(String) にて変換できる文字列)
が返されます。
再生可能な Audio トラックが含まれていなかった場合、
"0" が返されます。
このメディアイメージが動画データでない場合にはこのキーは無効です。
public static final String MP4_TEXTTRACK [iアプリオプションAPI]
動画データに含まれる、
再生可能な Text トラックの数を表すプロパティのキーです(= "mp4.texttrack")。
MediaResource.getProperty(String)
メソッドの引数として使用します。
動画データに再生可能な Text トラックが含まれていた場合、
含まれている Text トラックの数を表す文字列
(Integer.parseInt(String) にて変換できる文字列)
が返されます。
再生可能な Text トラックが含まれていなかった場合、
"0" が返されます。
このメディアイメージが動画データでない場合にはこのキーは無効です。
| メソッドの詳細 |
public int getWidth()
[DoJa-4.1 (902i) 以降]
このメディアイメージがベクターグラフィックスである場合は 0 が返ります。
[DoJa-5.0 (903i) 以降]
利用可能状態でない場合には 0 が返ります。
UIException - 既に dispose されているメディアイメージに対して呼び出された場合に発生します(ILLEGAL_STATE)。
public int getHeight()
[DoJa-4.1 (902i) 以降]
このメディアイメージがベクターグラフィックスである場合は 0 が返ります。
[DoJa-5.0 (903i) 以降]
利用可能状態でない場合には 0 が返ります。
UIException - 既に dispose されているメディアイメージに対して呼び出された場合に発生します(ILLEGAL_STATE)。
public Image getImage()
メディアイメージからイメージオブジェクトを取得します。 メディアイメージをイメージオブジェクトに変換できない場合は null を返します。
このメソッドを呼び出すことにより得られたイメージオブジェクトを
Image.dispose() しない限り、
複数回このメソッドを呼び出しても、
同一の有効なイメージオブジェクトへの参照が返されます。
得られたイメージオブジェクトを dispose()
してからこのメソッドを呼び出すと、
新しく有効なイメージオブジェクトが生成されて返されます。
このメディアイメージがunuse() や
dispose()
された場合は、メディアイメージから取得したイメージオブジェクトは、
そのオブジェクトを参照しているオブジェクトが存在しているか否かに関係なく
無効(Image.dispose()
が呼ばれた状態)となります。
[DoJa-4.1 (902i) 以降]
このメディアイメージがベクターグラフィックスである場合は null が返ります。
再配布可能かどうかの設定は引き継がれません。
MediaResource.setProperty(String, String)
で設定されたプロパティ値は引き継がれません。
public void use(MediaResource overwritten,
boolean useOnce)
throws ConnectionException
指定されたメディアイメージのメモリ領域を再利用して、
かつ、一度きりの利用であるかどうかを指定して、
このメディアイメージの使用開始を宣言します。
このメソッドの基本的な動作については、
スーパーインタフェースの説明を参照して下さい。
なお、メディアイメージにおいては、加えて下記のように振る舞います。
幅・高さは、引数 overwritten が保持している「内部データ領域」
が初めて、無引数の MediaResource.use() (あるいは第1引数に null
を指定した use(MediaResource, boolean))
によって確保された時点における、
メディアイメージの幅・高さ以下でなければなりません。
getImage()
によって取得された(破棄されていない)イメージは、
全て破棄されます。
setExifData(ExifData) や getExifData()
を呼び出すと例外が発生します。
MediaResource 内の useoverwritten - 領域を再利用したいメディアイメージを指定します。
null を指定すると、このメディアイメージの
「内部データ領域」は新規に確保されます。useOnce - このメディアイメージの利用が「一度きり」の場合には
true を、そうでない場合には false を指定します。
IllegalArgumentException - 引数 overwritten に
このオブジェクト自身が設定された場合に発生します。
ClassCastException - 引数 overwritten の実行時の型と、
このオブジェクトの実行時の型が異なる場合に発生します。
UIException - 引数 overwritten で指定されたメディアイメージが、
「内部データ領域」
の再利用対象外のデータフォーマットであった場合に発生します
(UNSUPPORTED_FORMAT)。
UIException - このメディアイメージが
「内部データ領域」
の再利用対象外のデータフォーマットであり、
引数 overwritten に非 null が設定された場合に発生します
(UNSUPPORTED_FORMAT)。
UIException - 引数 overwritten が利用可能状態でない場合に発生します
(ILLEGAL_STATE)。
UIException - このオブジェクトが、「一度きり」と指定して use され、その後
unuse されていた場合に発生します(ILLEGAL_STATE)。
UIException - このメディアイメージを利用可能状態にするのに必要な領域が、
引数 overwritten
が確保している領域よりも大きい場合に発生します(NO_RESOURCES)。
SecurityException - セキュリティ上の制約に触れた場合に発生します。
ConnectionException - ネットワーク通信などで例外が発生した場合に発生します。
ネットワークサービスがないか圏外の場合、
ステータスには OUT_OF_SERVICE が設定されています。
タイムアウトの場合には、TIMEOUTが設定されています。
定額制ユーザのデータ通信規制中の場合にも、
ステータスには OUT_OF_SERVICE が設定されています。
UIException - 端末で再生できないようなデータフォーマットの場合に発生します
(UNSUPPORTED_FORMAT)。
データの長さが0の場合など、
フォーマットが不正と見なされる場合を含みます。
UIException - 必要なリソースが確保できなかった場合に発生します(NO_RESOURCES)。public ExifData getExifData() [iアプリオプションAPI]
このメディアイメージに関連付けられている EXIF 情報を取得します。 このメディアイメージが JPEG-EXIF フォーマットでない場合には null が返されます。
GPS info IFD に記録されているタグの取得のみがサポートされています。 その他のタグについては、存在している場合でも参照することはできません。
このメソッドによって返されるオブジェクトは、 内部で保持しているオブジェクトのコピーです。
UIException - このメディアイメージが use
状態でない場合に発生します(ILLEGAL_STATE)。
UIException - このメディアイメージが「一度きり」と指定して use
されていた場合に発生します(ILLEGAL_STATE)。
public void setExifData(ExifData exif) [iアプリオプションAPI]
このメディアイメージに、指定された EXIF 情報を関連付けます。
既に、このメディアイメージに EXIF 情報に関連付けられている場合には、 引数で指定した新しい EXIF 情報に上書きされます。 このメディアイメージが、(EXIF 拡張が無い) JFIF フォーマットである場合には、 このメソッドで指定された EXIF 情報を持つ JPEG-EXIF フォーマットのデータに修正されます。
このメディアイメージが JPEG フォーマットではない場合、 このメソッドを呼び出すと例外が発生します。
GPS info IFD に記録されるタグのうち、 以下の情報が設定されていない場合には例外が発生します。
JFIF フォーマットから JPEG-EXIF フォーマットのデータに修正される際には、 EXIF 仕様にて規定されている必須のタグが自動的に補完されます。 その際に、どのような内容で補完されるかは機種依存です。
このメソッドは、引数で指定されたオブジェクトをコピーして保持します。
exif - このメディアイメージに関連付ける EXIF 情報を指定します。
このメディアイメージから EXIF 情報を取り除く場合には
null を指定します。
UIException - このメディアイメージが use
状態でない場合に発生します(ILLEGAL_STATE)。
UIException - このメディアイメージが「一度きり」と指定して use
されていた場合に発生します(ILLEGAL_STATE)。
IllegalArgumentException - 引数 exif に必須の情報が欠けている場合に発生します。
UIException - このメディアイメージが JPEG
フォーマットでない場合に発生します(UNSUPPORTED_FORMAT)。