onlySummaryBMediaFileクラスは、メディアデータを含んだファイルを表現します。既存のメディアファイルへのentry_refからBMediaFileのインスタンスを作成すると、それはファイルを嗅ぎまわってそのファイルにアクセスする際に使用する適切なcodecを見つけだします。既存のメディアファイルを読み込むためには、ファイルのトラックに対するBMediaTrackオブジェクトのインスタンスを作成するためにGetTrack()を呼び出します。それらはファイルからメディアデータをデコードするために、順番に使用されます。ファイルにデータを書込むことも出来ます。この場合、entry_ref及びファイルに書込もうと企図するメディアデータのフォーマットを記述するmedia_file_formatによって特定されるオブジェクトをコンストラクトします。その後、ファイルに書込もうとする個々のトラックを生成するためにCreateTrack()を呼び出します。それぞれのトラックが作成されたら(しかしそれらは中身が空ですが)、ディスクにファイルのヘッダを書込むためにCommitHeader()を呼び出し、トラックへ実際のメディアデータを書込むためにBMediaTrackを使用することが出来ます。書き込みが終了したらCloseFile()を呼び出して下さい(ファイルを読み込む時は必要ありません)。Files"をご覧下さい。一般的な規則として、BMediaFileの関数を使用する場合はどの構造体にもワイルドカードを使用してはいけません。保持しているフォーマットがなにかをBMediaFileに伝えると、BMediaFileは単にそのフォーマットをサポートしているかどうかを伝えてきます。0)コンストラクタの最初の4つの形式は、refまたはsourceによって指定されたファイルを読み込むことでBMediaFileを初期化します。これが終わると、ファイルが無事に探索されたことを確認するためにInitCheck()を必ず呼び出して下さい。探索がうまくいっていれば、BMediaFileオブジェクトはファイルのデータを読み込むために必要なBMediaTrackオブジェクトのインスタンスを生成するために使用できます。次の2つの形式は、メディアファイルへの書き込みの準備をBMediaFileオブジェクトに行わせます。ファイルはrefまたはdestinationによって指定されます。書込まれるファイルのフォーマットはfileFormatによって指定されます。flagsは、下記の値の組み合わせです。書き込みの際には、存在する全てのメディアファイルを置き換える。ファイル中では前方に向かって読み進まない。読み込み量をより少なくする。これは大きな出力バッファを満たすためのエクストラクタを待つことなしに低ビットレートのファイルをストリーミングする場合に便利である。大きなバッファを使用する。~BMediaFile(void)デストラクタ。size)ファイルにユーザが定義したデータのチャンク(塊)を(もしそれがエンコーダにサポートされていれば)書込みます。引数typeはチャンクの型を示し、dataは書込まれるデータのポインタを指し、sizeはファイルに書込むデータの大きさを示します。BMediaFileクラスは、あるファイルに対して同時に生じる複数の書き込みを防ぐために、いかなるロッキングも自動的には行いません。同じBMediaFileに書き込む複数のスレッドがあれば、重複から書き込みを守るために(セマフォなどの)ロック機構を使用しなければなりません。BMediaFileは、有効なファイルを参照していません。その他のエラーは、codecに依存します。constAddCopyright()は、ファイルの著作権情報をdataによって指定される文字列に設定します。既存の情報は全て置き換えられます。文字列はコピーされ、もとの文字列はあなたが所有します。Copyright()は、メディアファイルの著作権情報を返すか、それが一つもなければNULLを返します。この文字列はBMediaFileに属しますので、削除または変更を行わないで下さい。BMediaFileクラスは、あるファイルに対して同時に生じる複数の書き込みを防ぐために、いかなるロッキングも自動的には行いません。同じBMediaFileに書き込む複数のスレッドがあれば、重複から書き込みを守るために(セマフォなどの)ロック機構を使用しなければなりません。BMediaFileは、有効なファイルを参照していません。(AddCopyright()のみ)その他のエラーは、codecに依存します。CloseFile(void)全てのトラックに全てのメディアデータが書込まれたら、BMediaFileオブジェクトがファイルを整理し、トラックの書き込みを終了できるようにCloseFile()を呼ぶ必要があります。BMediaFileは、有効なファイルを参照していません。その他のエラーは、codecに依存します。CommitHeader(void)ファイルに新しいトラックを追加し終わったら、BMediaFileのファイルのヘッダをセットアップするためにCommitHeader()を呼び出す必要があります。これはファイルの書き込み処理を最適化する手助けとなります。メディアファイルは、有効なファイルを参照していません。その他のエラーは、codecに依存します。constメディアファイル中のトラック数を返します。返値は、初期化が失敗した場合には定義されません。*mediaFormat)ファイル中に新しいトラックを作成し、それを参照するBMediaTrackオブジェクトを返します。トラックは、mediaFormatによって指定されたメディアフォーマットを使用するように設定され、codecInfoによって記述されたcodecを使用して書込まれます。トラックへの書き込みにはBMediaTrack::WriteFrames()のみ使用できます。引数codecInfoなしに2番目の形式のコンストラクタを使用するなら、トラックは生(raw)のメディアデータで書込まれます。トラックへの書き込みにはBMediaTrack::WriteChunk()のみ使用できます。mediaFormatは書き込み関数に渡すバッファのフォーマットを示し、codecInfoはトラックへの書き込みデータをエンコードするのに使用するcodecを指定します。mediaFormatは、いかなるワイルドカードも含むことが出来ません。供給しようと考えている厳密なフォーマットを特定する必要があります。mediaFormatもまたget_net_encoder()に渡されるものと同じ構造体でなければなりません。新しいメディアファイルを書込む際には、なんらかのメディアデータを書込む前に、全てのトラックを作成しておきます。全てのトラックが作成されていれば、ディスクへのヘッダを書込むために必ずCommitHeader()を呼び出して下さい。これはヘッダの大きさがファイルに収められたトラックの数に強く依存するため、必要となります。トラックにメディアデータを書き込みはじめたら、ヘッダの大きさを変更することは困難(及び無意味)となります。新しいトラックを作成している間にエラーが生じたら、NULLが返されます。const指定されたmedia_file_format構造体をBMediaFileオブジェクトが参照しているファイルのファイルフォーマットを記述する情報で満たします。BMediaFileは、有効なファイルを参照していません。*GetParameterView(void)ファイルフォーマットのパラメータを調整するコントロールを含んだBViewを返します。constコンストラクタの結果(result)コードを返します。BMediaFileを使用する前ではなく、インスタンスを生成した後にいつもこの関数を呼び出します。必要とされた、あるいは要求されたフォーマットに対して使用できるcodecがありません。codecを動作させるのに十分なメモリがありません(書き込み)。要求されたadd-onが見つかりません(書き込み)。add-onが書き込みをサポートしていません。ReleaseAllTracks(void)ReleaseTrack()は、指定されたtrackによって使用されるリソースを開放します。することで、アプリケーションのメモリ使用量を削減できます。使用中の全てのトラックを開放したければ、ReleaseAllTracks()が使用できます。開放されると、トラックはTrackAt()が使用されるまで使用できません。BMediaFileが適切に初期化されなかったか、あるいはindexが無効であれば、NULLが返されます。トラックが開放できませんでした(トラックが無効であるか、実際に使用されていなかったため)。*size)SetParameterValue()は、idで指定されるパラメータの値をvalueポインタで指定されるデータに設定します。このデータの長さはsizeバイトです。GetParameterValue()は、valueに指定されたパラメータの値を入れ、引数sizeにバイト単位の値の大きさを入れて返します。BMediaFileは有効なファイルを参照していません。index)indexで指定されたトラックを参照するBMediaTrackを返します。1の間の値を取らなければなりません。BMediaFileが適切に初期化されていないか、indexが無効であれば、NULLが返されます。トラックを使い終わったら、ReleaseTrack()を呼ばなければなりません。*Web(void)ファイルフォーマットのパラメータを設定するために利用できるBParameterWebを返します。codecがユーザー設定をサポートしていなければ、NULLを返します。書き込みの際には、存在する全てのメディアファイルを置き換える。ファイル中では、前方に向かって読み進まない。読み込み量をより少なくする。これは大きな出力バッファを満たすためのエクストラクタを待つことなしに低ビットレートのファイルをストリーミングする場合に便利である。大きなバッファを使用する。これらのフラグは、コンストラクタの振る舞いを制御します。reserved..。