The Media Kit Table of Contents     The Media Kit Index

BParameter

Derived from: BFlattenable

Declared in: be/media/ParameterWeb.h

Library: libmedia.so

Allocation: Constructor only

Summary

 BParameterクラスは、BControllable node内の設定可能なパラメータを表す全てのcontrolが派生するスーパークラスです。

 
「パラメータ(parameter)」という語は、Media Kitの用語としては、BControllable nodeによって処理されるデータの取り扱いが設定される場所(point)を参照しますが、実際のユーザインターフェイスオブジェクトを参照しません。BControllable nodeに対してユーザインターフェイスを生成する方法に関する情報については、BMediaThemeクラスをご覧下さい。

BParameterクラスは抽象クラスです。実際にパラメータを生成し、それをBParameterWebに追加するには、一般的にBParameterGroupクラスのMakeNullParameter()MakeDiscreteParameter()及びMakeContinuousParameter()を使用します。


Hook Function


Constructor and Destructor

 BParameterオブジェクトは、BParameterGroupクラスの適切な関数を用いてのみ生成されます。


Member Functions


AddInput() , AddOutput()

                                                         
  

status_t AddInput(BParameter *input)

status_t AddOutput(BParameter *output)

 AddInput()は、inputによって指定されたBParameterを、データをBParameterに渡すためのBParameterのセットに追加します。指定されたinputパラメータのAddOutput()関数によって、このパラメータにデータを送っていることを知らせるために呼び出されます。

 AddOutput()は、outputによって指定されるBParameterを、BParameterがデータを出力するBParameterのセットに追加します。指定されたoutputパラメータのAddInput()関数は、 このパラメータからデータを受け取っていることを知らせるために呼び出されます。

RETURN CODES

B_OK. アイテムは、問題なくリストに追加された。

  • B_ERROR. アイテムは、リストに追加できなかった。


CountChannels() , SetChannelCount()

                                                         
  

int32 CountChannels(void)

void SetChannelCount(int32 numChannels)

 いくつかのBParameterは、同じ型のチャンネルを一つ以上持っています。例えば、左右のゲインが独立しているステレオ音量のパラメータは、二つのチャンネルを持っています。一方、左右両方に同じレベルで影響する単独のパラメータ値は、ただ一つのチャンネルのみ持っています。CountChannels()は、BParameterによって操作されるチャンネルの数を返します。

 デフォルトのチャンネル数は1です。もしあなたのnodeが更に多くのチャンネルを提供したいなら、BParameterを生成した後にSetChannelCount()を呼び出して下さい。SetChannelCount()は、パラメータが操作するチャンネルの数を指定します。


CountInputs() , CountOutputs()

                                                         
  

int32 CountInputs(void)

int32 CountOutputs(void)

 これら二つの関数は、現在BParameterに接続されている入力または出力の数を返します。入力または出力の数は、チャンネル数とは異っているでしょう(例えば単独のステレオ音声入力または出力は、左のチャンネルと右のチャンネルから成り立っています)。


GetValue() , SetValue()

                                                         
  

status_t GetValue(void *buffer, size_t *ioSize, bigtime_t *lastChange)

status_t SetValue(const void *buffer, size_t size, bigtime_t changeWhen)

 GetValue()は、BParameterの現在の値を返します。関数の呼び出し時、bufferは、現在BParameterの値が保存されている場所を示すメモリのioSizeバイトを指し示します。関数が返る際には、ioSizeはバッファに実際に返されるバイト数を示し、lastChangeはBParameterの値が最後に変更された時間を示します。

 SetValue()は、BParameterの値を変更します。sizeバイトの長さの新しい値は、指定されたbufferから得られます。変更は、changeWhenによって指定されたperformance timeに有効になります。

 もしパラメータが複数のチャンネルを持っているなら、bufferは、全てのチャンネルの値を内包するのに十分な大きさとなるべきであり、ioSizeまたはsizeは、バッファ全体のサイズを示すべきです。

 これらの呼び出しは、単純にBControllable::GetControlValue()及びBControllable::SetControlValue()関数をディスパッチしています。

RETURN CODES

B_OK. エラーなし。

  • B_NO_MEMORY. bufferが小さすぎる(GetValue())。

  • B_BAD_VALUE. パラメータが値を持っていない(GetValue())。

  • ポートエラー. <<<Kernel Kitへの参照をここに挿入する>>>
    (訳注 : これはBeBook編集時のコメントと思われます)


Group()

                                                         
  

BParameterGroup *Group(void) const

 直接BParameterを内包するBParameterGroupを返します。


ID()

                                                         
  

int32 ID(void) const

 BParameterのID番号を返します。このIDは、値を変更する要求を適切な場所に発送するため、nodeによって使用されます。この値はBParameterを内包するBParameterWebの内部でのみユニークとなります。


InputAt() , OutputAt()

                                                         
  

BParameter *InputAt(int32 index)

BParameter *OutputAt(int32 index)

 InputAt()は、indexで指定された入力番号にデータを送り込むBParameterを返します。indexは、0からCountInputs() - 1 の範囲です。

 OutputAt()は、indexで指定された出力番号からデータを受け取るBParameterを返します。indexは、0からCountOutputs() - 1 の範囲です。

 両方の関数とも、もし不正なindexが指定されたら、NULLを返します。


Kind()

                                                         
  

const char *Kind(void) const

 BParameterのkind(種類)を返します。kindは可読である必要はありません。また、kindはBParameterによって供給される設定オプションを視覚的に表現するために生成するBControlの種類を判別するために使用することができます。

 使用できるkindに関するより詳細な情報は、BParameterGroup::MakeNullParameter()BParameterGroup::MakeDiscreteParameter()及びBParameterGroup::MakeContinuousParameter()関数をご覧下さい。


MediaType() , SetMediaType()

                                                         
  

media_type MediaType(void)

void SetMediaType(media_type type)

 MediaType()は、BParameterを通して流れるメディアデータのタイプを返します。

 SetMediaType()は、メディアデータの記録形式を変更します。でフォルトでは、もし変更されていなければ、B_MEDIA_NO_TYPEとなります。

 BParameterのmedia_typeは、データのフォーマットを利害関係のある仲間に対して通知するために使用されます。それは情報の設定することであり、どんな形であれBParameterを流れるデータに変更を加えることはありません。


Name()

                                                         
  

const char *Name(void) const

 ユーザに対して表示するのに適切なBParameterの名前を返します(例えば、それはユーザインターフェイスオブジェクトに於てラベルとして使用される可能性があります)。


OutputAt() see InputAt()


Channels()


SetMediaType() see MediaType()


SetValue() see GetValue()


Type()

                                                         
  

media_parameter_type Type(void) const

 オブジェクトが表現するパラメータのkindを返します。

Constant Description
B_NULL_PARAMETER BParameterはBNullParameterである。
B_DISCRETE_PARAMETER BParameterは、BDiscreteParameterである。
B_CONTINUOUS_PARAMETER BParameterは、BContinuousParameterである。


Unit()

                                                         
  

const char *Unit(void) const

 BParameterに使用される計測の単位を返します。例えば、これは「dB」「kHz」または「fps」となるでしょう。これはユーザインターフェイスに表示されるため、人間に読むことができなければなりません。


ValueType()

                                                         
  

virtual type_code ValueType(void) = 0

 BParameterの値のデータ型の型を示す type codeを返します。これは普通、セレクタのためにB_INT32_TYPEであるか、またはスライダのためにB_FLOAT_TYPEであるかです。


Web()

                                                         
  

BParameterWeb *Web(void) const

 このBParameterを内包するBParameterWebを返します。


Constants


Parameter Kinds

Declared in: <be/media/ParameterWeb.h>

Constant Description
B_MASTER_GAIN このパラメータは、メイン音量のcontrolを表現する。
B_GAIN このパラメータは、ゲインのcontrolを表現する。
B_BALANCE このパラメータは、バランスのcontrolを表現する。
B_FREQUENCY このパラメータは、ラジオのチューナーの様に周波数(frequency)を表現する。
B_LEVEL このパラメータは、EQ(イコライザ)やエフェクタの様にレベルを表現する。
B_SHUTTLE_SPEED このパラメータは、再生速度を表現する。1.0の値は、ノーマルな速度を示す。1.0より小さければより遅く、1.0より大きければより速く再生する。
B_CROSSFADE このパラメータは、ミキシングされる音声及びビデオに対してクロスフェードを示す。0はストリームの最初のペアが存在すべきであることを示し、100は、それ以外が存在すべきであることを示す。中間の値は、行われるミキシングの程度を示す。
B_COMPRESSION このパラメータは、圧縮比を示す。0の値は非圧縮を、99は100:1の圧縮を示す。
B_QUALITY このパラメータは、品質のレベルを示す。値が0であれば最大の圧縮を、100は非圧縮を示します。
B_BITRATE このパラメータは、1秒あたりのビット数、ビットレートを示す。
B_GOP_SIZE このパラメータは、キーフレームから分離されたフレームがいくつビデオストリームに挿入されるかといった「画像のグループ(group of pictures)」を示す。
B_MUTE このパラメータは、ミュート(消音)のcontrolを表現する。値が0であればデータは変更なしに渡され、一方値が1であればデータはミュートされる。
B_ENABLE このパラメータは、使用可能・不可能のトグルを表現する。値が0であればその機能を使用不能とし、一方値が1であれば使用可能にする。
B_INPUT_MUX このパラメータは、入力のMUXを表現する。値は、入力が受け渡されるMUXを指定する。
B_OUTPUT_MUX このパラメータは、出力のMUXを表現する。値は、入ってきたデータを出力が受け取るMUXを指定する。
B_TUNER_CHANNEL このパラメータは、(テレビのチャンネルのような)チャンネルチューナーを表現する。値はチャンネルの番号を示す。
B_TRACK このパラメータの値は、トラック番号を示す。
B_RECSTATE このパラメータは、nodeが停止中(0)、演奏中(1)または録音中(2)であることを示す。
B_SHUTTLE_MODE このパラメータは、演奏モードを示します。-1は逆行演奏を、0は停止を、1は演奏を、2は一旦停止(pause)を表す。
B_RESOLUTION このパラメータは、ビデオまたは音声の解像度(resolution)を示す。
B_COLOR_SPACE このパラメータは、ビデオの色空間(color space)を示す。
B_FRAME_RATE このパラメータは、フレームレートを拾い出すセレクタを表現する。
B_VIDEO_FORMAT このパラメータは、ビデオフォーマットを選択するセレクタを表現する。
B_WEB_PHYSICAL_INPUT このパラメータは、(マイクのジャックやライン入力ジャックといった)物理入力を表現する。
B_WEB_PHYSICAL_OUTPUT このパラメータは、(ライン出力のジャックやヘッドホンジャックといった)物理出力を表現する。
B_WEB_LOGICAL_INPUT このパラメータは、コンピュータとA/V入力機器の間でデータのビットが伝送されるポイントを表現する。
B_WEB_LOGICAL_OUTPUT このパラメータは、コンピュータとA/V出力機器の間でデータのビットが伝送されるポイントを表現する。
B_WEB_ADC_CONVERTER このパラメータは、アナログからデジタルへのコンバータを表現する。
B_WEB_DAC_CONVERTER このパラメータは、デジタルからアナログへのコンバータを表現する。
B_WEB_BUFFER_INPUT このパラメータは、media_inputを表現する。
B_WEB_BUFFER_OUTPUT このパラメータは、media_outputを表現する。
B_GENERIC このパラメータのkindは、以上に挙げられたものではない。
B_SIMPLE_TRANSPORT 5つの状態を示す個々のパラメータ。それぞれが、巻き戻し(rewinding)、停止(stopped)、演奏(playing)、一旦停止(paused)及び早送り(fast-forwarding)を表す。

 BParameterオブジェクトによって表現されるパラメータのkindを示します。

 B_VIDEO_FORMAT kindは、それに関連した特定の値を持ちます :

Value Video Format
1 NTSC-M
2 NTSC-J
3 PAL-BDGHI
4 PAL-M
5 PAL-N
6 SECAM
7 MPEG-1
8 MPEG-2


media_parameter_type

Declared in: <be/media/ParameterWeb.h>

Constant Description
B_NULL_PARAMETER このBParameterは、BNullParameterである。
B_DISCRETE_PARAMETER このBParameterは、BDiscreteParameterである。
B_CONTINUOUS_PARAMETER このBParameterは、BContinuousParameterである。

 Type()関数によって返されうるパラメータのタイプです。これは、そのオブジェクトがどのBParameterのサブクラスであるかを示します。

 
もしBParameterの外部から参照する必要があるなら、これらの定数がBParameterのメンバであることから、BParameter::B_NULL_PARAMETERのように「BParameter::」の前置きが必要であるということを心に留めておいて下さい。


The Media Kit Table of Contents     The Media Kit Index


The Be Book,
...in lovely HTML...
for BeOS Release 5.

Copyright © 2000 Be, Inc. All rights reserved..