The Media Kit Table of Contents     The Media Kit Index

BTimeCode

Derived from: none

Declared in: be/media/TimeCode.h

Library: libmedia.so

Summary

 タイプやその他に関する情報があります。


Constructor and Destructor


BTimeCode()

                                                         
  

BTimeCode()

BTimeCode(bigtime_t us,
      timecode_type type = B_TIMECODE_DEFAULT)


      

 コンストラクタは、使用するためのBTimeCodeオブジェクトを用意します。もしコンストラクタの最初の形式(引数のないもの)を使用するなら、変換の目的でそれを使用する前に、BTimeCodeの時間情報を設定するために適切な関数を呼び出さなければならないでしょう。これは、SetData()SetType()SetMicroseconds()またはSetLinearFrames()の中から一つ以上を呼び出すことで行うことができます。

 コンストラクタの2つ目の形式は、入力としてマイクロ秒単位のusと、timecodeであるtypeを受け取ります。

 コンストラクタの3つ目の形式は、すでに存在するBTimeCodeオブジェクトを複製します。

 コンストラクタの4つ目の形式は、timecodeのtypeと同様に、入力としてhoursminutesseconds及びframesで時間を受け取ります。


~BTimeCode()

                                                         
  

~BTimeCode()

 典型的なデストラクタ。


Member Functions


Frames() see Hours()


GetData() , SetData()

                                                         
  

void GetData(int *outHours, int *outMinutes, int *outSeconds,
      
int *outFrames, timecode_type *outType = NULL)

void SetData(int hours, int minutes, int seconds, int frames)

 GetData()は、outTypeに有効なポインタが指定されれば、timecodeの値をhours、minutes、seconds及びframesで返し、同様にtimecodeのタイプを返します。SetData()によって、timecodeの値を設定します。


GetString()

                                                         
  

void GetString(char *str) const

 現在の時間をhours、minutes、seconds及びframesで示す文字列を、少なくとも24バイト長のstrに収めます。この文字列は、timecodeのタイプに適切な方法でもってフォーマットされます。典型的な例は、1時間24分9秒と18フレームであれば"01:24:09.18"となります。


Hours() , Minutes() , Seconds() , Frames()

                                                         
  

int Hours(void) const

int Minutes(void) const

int Seconds(void) const

int Frames(void) const

 これらの関数は、時間のhours、minutes、seconds及びframesの部分を返します。


LinearFrames() , SetLinearFrames()

                                                         
  

int32 LinearFrames(void) const

void SetLinearFrames(int32 linearFrames)

 LinearFrames()は、linear frameでBTimeCodeオブジェクトの時間を返します。SetLinearFrames()は、linear frame単位で新しい時間を指定することで、時間を変更することができます。


Microseconds() , SetMicroseconds()

                                                         
  

bigtime_t Microseconds(void) const

void SetMicroseconds(bigtime_t us)

 Microseconds()は、マイクロ秒でBTimeCodeオブジェクトの時間を返します。SetMicroseconds()は、新しい時間をマイクロ秒単位で指定することで、時間を変更することができます。


Minutes() see Hours()


Seconds() see Hours()


SetData() see GetData()


SetLinearFrames() see LinearFrames()


SetMicroseconds() see Microseconds()


SetType() see Type()


Type() , SetType()

                                                         
  

timecode_type Type(void) const

status_t SetType(timecode_type type)

 Type()は、BTimeCodeオブジェクトのtimecodeのタイプを返します。SetType()は、timecodeのタイプを変更します。

RETURN CODES


Operators


= (assignment)

                                                         
  

BTimeCode &operator =(const BTimeCode &clone)

 現在のBTimeCodeを、指定されたBTimeCodeオブジェクトと同じものにします。


== (equality)

                                                         
  

BTimeCode &operator ==(const BTimeCode &other)

 2つのBTimeCodeオブジェクトが等しいかどうか評価します(時間が同じであり、timecodeのタイプは無関係)。


< (less than)

                                                         
  

BTimeCode &operator <(const BTimeCode &other)

 あるBTimeCodeの時間が、もうひとつのBTimeCodeとマイクロ秒単位で比較して、小さいかどうかを示します。


+= (expression plus)

                                                         
  

BTimeCode &operator +=(const BTimeCode &other)

 現在のBTimeCodeの時間に、BTimeCodeオブジェクトであるotherの時間を付け加えます。


-= (expression minus)

                                                         
  

BTimeCode &operator -=(const BTimeCode &other)

 現在のBTimeCodeオブジェクトの時間から、BTimeCodeオブジェクトであるotherの時間を減算します。


+ (plus)

                                                         
  

BTimeCode &operator +(const BTimeCode &other)

 2つのBTimeCodeの値を足しあわせて、新しいBTimeCodeを返します。


- (minus)

                                                         
  

BTimeCode &operator -(const BTimeCode &other)

 2つのBTimeCodeの値の差を求め、新しいBTimeCodeオブジェクトを返します。


Global C Functions


count_timecodes()

                                                         
  

status_t count_timecodes(void)

 認識されるtimecodeのタイプの数を返します。


frames_to_timecode() , timecode_to_frames()

                                                         
  

status_t frames_to_timecode(int32 linearFrames,
      int * hours, int * minutes, int * seconds, int * frames,
      const timecode_info * code = NULL)

status_t timecode_to_frames(int hours, int minutes, int seconds, int frames,
      int32 * linearFrames,
      const timecode_info * code = NULL)

 frames_to_timecode()は、フレームのオフセットであるlinearFrameshoursminutesseconds及びframesに変換します。

 timecode_to_frames()は、hoursminutesseconds及びframesによって表される時間を、linear frameのオフセットに変換し、結果をlinearFramesに保存します。

 timecode_info構造体であるcodeが指定されると、それは時間をどう変換するか決定するために使用されます。指定されなければ、B_TIMECODE_DEFAULTが想定されます。

 現在のところ、これらの関数は常にB_OKを返しますが、エラーのチェックは行って下さい。あなたのアプリケーションが将来、動作中に不具合を起こすのは嫌でしょう?


get_timecode_description()

                                                         
  

status_t get_timecode_description(timecode_type type,
      timecode_info * outTimeCode)

 outTimeCodeによって指定されるtimecode_info構造体に、timecodeである指定されたtypeを記述する情報を収めて下さい。

RETURN CODES


timecode_to_frames() see frames_to_timecode()


timecode_to_us() see us_to_timecode()


us_to_timecode() , timecode_to_us()

                                                         
  

status_t us_to_timecode(bigtime_t micros,
      int * hours, int * minutes, int * seconds, int * frames,
      const timecode_info * code = NULL)

status_t timecode_to_us(int hours, int minutes, int seconds, int frames,
      bigtime_t * micros, const timecode_info * code = NULL)

 us_to_timecode()は、マイクロ秒で指定された時間のmicrosを、hoursminutesseconds及びframesに変換します。

 timecode_to_us()は、hoursminutesseconds及びframesによって指定された時間をマイクロ秒に変換して、結果をmicrosに保存します。

 timecode_info構造体であるcodeが指定されると、それは時間がどう変換されるかを決定するために使用されます。指定されなければ、B_TIMECODE_DEFAULTであると想定されます。

 現在のところ、これらの関数は常にB_OKを返しますが、エラーのチェックは行って下さい。あなたのアプリケーションが将来、動作中に不具合を起こすのは嫌でしょう?


Constants


timecode_type

Declared in: be/media/TimeCode.h

Constant Description
B_TIMECODE_DEFAULT デフォルトのtime code
B_TIMECODE_100 毎秒100フレーム
B_TIMECODE_75 CDオーディオ
B_TIMECODE_30 MIDI
B_TIMECODE_30_DROP_2 NTSC
B_TIMECODE_30_DROP_4 Brazil
B_TIMECODE_25 PAL
B_TIMECODE_24 Film
B_TIMECODE_18 Super8

 多種多様なtimecodeのタイプを識別する定数が、BTypeCodeによってサポートされます。


Structures


timecode_info

Declared in: be/media/TimeCode.h
                                                         
  

struct timecode_info {
      timecode_type type;
      int drop_frames;
      int every_nth;
      int except_nth;
      int fps_div;
      char name[32];
      char format[32];
      char _reserved_[64];
      };

 timecode_info構造体は、timecodeのタイプの属性(attribute)を記述します。あなたは多分、BTimeCodeクラスを使用するはずです。広域のC関数を使うかも知れませんけどね。これによって、コーディングが楽になるはずです。


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..