ここでは、SMAF の表示機能と SCAS の概要について記述します。
はじめに
SMAFは携帯端末(携帯電話)用マルチメディアコンテンツのデータ表現形式を定義することを主な目的に設計したデータフォーマット仕様です。SMAFは正式には Synthetic Music Mobile Application Format といいます。SMAFはその略称です。
SMAF仕様のデータは出力デバイス毎に独立したシーケンスデータを複数束ねた形式で表現しています。それぞれのシーケンスは全て同時に再生を開始するものと定義し、結果的に全てのシーケンスが同期して再生されることを表現したデータ形式です。
SMAFの基本部分は弊社携帯端末用音源 LSI向けの演奏データ表現として設計したものです。拡張仕様としてテキスト、グラフィックスの表示シーケンスが定義してあります。これらを組み合わせることで演奏に同期した表示シーケンスが表現でき、SMAFはカラオケを含むマルチメディアコンテンツのデータ表現として利用することができます。
ファイル構造
SMAF仕様で定義している出力デバイスとして、MIDI相当の制御データで発音を行う音源デバイス、PCMデータの再生を行うPCM音源デバイス、テキストや画像の表示を行う表示デバイスがあります。それぞれのトラック内には対応するデバイスに対するシーケンスデータが格納されています。
シーケンスデータとは、出力デバイスに対する制御データを時間を追って定義したデータ表現です。1つのSMAFファイルに含まれる全てのシーケンスデータは時刻0で同時に再生を開始するものと定義し、結果的に全てのシーケンスデータが同期して再生されることが表現されています。
SCASはこのLCDデバイスに対するシーケンスデータを作成するオーサリングツールです。正式名称は SMAF Syncronus Contents Authoring System といいます。
SCASの編集概念
SMAF 表示用の シーケンスデータは時系列に時間経過情報とLCD制御データが並んでいますが、そのLCDの制御データを表示イベントと呼びます。表示イベントとは、表示オブジェクト(表示される画像やテキスト)とその表示位置と期間などの情報を合わせたものです。
SCASはシーケンスデータの編集の単位としてブロックという概念を持っています。この編集単位は複数の表示イベントをまとめて取り扱うことができます。ブロックは、コンテンツ再生中の画面をある時間の範囲で切り取った固まりのように考えることができます。表示イベントは、ブロックの中ではブロックの先頭からの相対時間で管理されます。実際に表示オブジェクトが表示されるまでの時間はブロックがシーケンスで持つスタートからの時間とブロック内の表示時間を加えた時間となります。ブロックはブロック内の状態を保持したままトラックを相対移動できます。SCASではブロックや表示イベントのコピー&ペーストが可能ですから、類似のデータを楽に制作することが出来ます。
SCASは制作対象であるグラフィックストラックに対してまずブロックを作成し、ブロックの中にイベントを作成していきます。編集機能として画面レイアウト機能と時間編集機能があります。つまりシーケンスデータを平面配置情報と表示時間情報に分けて編集します。
プレーンという概念
|
|
SMAFは図のように3枚のプレーンという概念を持っています。これはLCDに描画されるときの上下関係を決定する情報になります。
画像やテキストなどの表示オブジェクトは、個々に、どのプレーン上に描画されるかという定義情報を保持します。(この情報は、オーサリング時に製作者が指定します。)
プレーン0は、もっとも下層に位置するプレーンです。主に背景色の定義に利用され、表示オブジェクトは定義されません。
プレーン2は、もっとも上層に位置するプレーンです。プレーン2に描画される表示オブジェクトはプレーン1に描画される表示オブジェクトよりも必ず上に表示されることが保証されます。つまり背景に近い概念の表示オブジェクトはプレーン2ではなくプレーン1に表示すべきであるということになります。
同じプレーン上に配置される複数の表示オブジェクトは重なる場合には後から表示される方が原則として上に描画されます。
|
SMAFに出力されたあとはブロックの概念はなくなります。表示オブジェクトの表示の上下関係は単純にプレーンの上下関係と、および表示時間の前後によって決まります。ブロックが多数重なる場合には、上下関係をコントロールするのが難しい場合があります。できるだけシンプルなプレーン構成とブロック構成を心がけてください。
以上のことを考慮して、表示オブジェクトの重なり方や見え方をコントロールする必要があります。
3つの座標指定の方法
SMAFでは 携帯端末 LCD を想定して上図のように、3種類の座標指定方法があります。表示オブジェクトの配置のために最適な方法をそれぞれオブジェクト固有に選択することができます。また、1つの座標指定においてX座標の指定とY座標の指定を異なる座標系指定にすることもできます。
(例) X座標はレイアウト座標系によるセンタリングとし、Y座標は標準座標系による座標指定をする。
LCDの大きさをフルに使用したいオブジェクトにはレイアウト座標系の指定が簡単です。
これら座標の原点は移動させることもできます。端末情報ダイアログで原点指定を行なうことによって、標準座標系と対称座標系における原点の位置を変えることができます。
※座標指定の詳細と原点指定に関しては座標指定の補足を参照してください。
イベントの構成
SMAFで定義する表示イベントのデータは上のようなイメージで構成されています。イベントは、表示オブジェクトとしてのデータと座標と表示期間を持ちます。その表示イベントは0x40〜0x7Fまでのパラメータを選択することができます。その番号に応じて定義された(グラフィックストラック情報で編集)パラメータにより表示される色のセットがイベントの解釈に使用されます。また、イベントに対して表示効果が設定され解釈時にその効果を付加しながら表示することになります。
パラメータの使用方法
表示イベントは (選択可能なパラメータ = 0x40...0x7f) 仕様としてはパラメータ番号に意味付けを行いません。
例えば、各パラメータの運用上の意味付けを行います。
(例) 歌詞、男声パート歌詞、女声パート歌詞、混声パート歌詞、曲タイトル、作詞者名、作曲者名、歌手名、セリフ、合いの手、コメント,etc...
それらの設定をトラック情報ダイアログで編集し、そのパラメータセットを保存して再利用することができます。
設定について理解しにくいバナー、フェード、点滅について説明します。
バナー効果
バナー効果の定義です。それぞれのプロパティを変更して動作を確認してください。
フェード効果
フェードの効果のタイプ一覧です。タイプを切り替えて確認してください。
点滅およびカラー点滅効果
|