AG903ライブラリリファレンス
内容インデックスホーム
前へ上へ次へ
GVD使用メモリ一覧

GVD使用メモリ一覧

GVDライブラリが使用するメモリ領域の一覧です。

名称 
制約 
用途 
使い方 
開放タイミング 
Work(ワーク) 
  • 非キャッシュ
  • 32,768 Byte境界
 
GVDライブラリの初期化時に必要なバッファです。 
GVD_InitInitializeParamで各初期設定を行ったあと、GVD_GetRequiredMemorySizeで必要サイズを取得します。
ユーザはGVD_GetRequiredMemorySizeで返されたサイズ以上を確保し、GVD_SetWorkMemoryに渡す必要があります。 
GVD_Finalize後に開放できます。 
Heap(ヒープ) 
  • 非キャッシュ
  • 2,048 Byte境界
 
動画デコードのためハードウェアが使用するバッファです。
必要サイズはデコードするコンテンツによって変動します。 
コンテキスト毎にユーザが確保して
GVD_SetOutputHeapに渡す必要があります。
サイズは以下の式を参考に見積もることができます。標準的な規格以外の解像度の場合は、水平垂直画素数がそれぞれ最大15画素分多く消費されることがあります。
サイズ[Byte] = 2.5 * 水平画素数 * 垂直画素数 * (1+参照フレーム数) 
GVD_CloseFileまたはGVD_Disconnect後に開放できます。 
Input buffer(入力バッファ) 
  • 非キャッシュ
  • 4 Byte境界
 
H.264ストリームをGVDライブラリへ渡すためのバッファです。 
ストリーム取得元の送信データ幅に合わせてメモリを配置することを推奨します(例:ATAの場合32 Byte境界とするとCPUでのバッファ処理を回避できます) 
内蔵ファイルストリーマの場合、GVD_Finalize後に開放できます。
外部ファイルストリーマの場合、GVD_PutInputBufferにてGVDに渡してから、discard_input_bufferにて返却されるまでの間は開放しないでください。この他はいつでも開放できます。 
Output buffer(出力バッファ) 
  • 非キャッシュ
  • 2,048 Byte境界
 
デコードされたフレーム(画像)を出力するためのバッファです。 
表示回路でそのまま使用可能なYUV422形式で出力されます。 
出力先がVRAMの場合、GVD_PutOutputBufferにてGVDに渡してから、commit_output_buffer/discard_output_bufferにて返却されるまでの間は開放しないでください。この他はいつでも開放できます。
出力先がBMUの場合、GVD_PutOutputBufferにてGVDに渡してから、出力先にBMUを設定したコンテキストを破棄、またはVRAM出力に変更した後に開放できます。 
Position buffer(位置情報バッファ) 
  • 4 Byte境界
 
巻き戻しなどシークを行うためにIDRフレームの番号とストリームのオフセット位置を格納するバッファです。 
gvdPositionBuffer 構造体の配列を登録してください。
詳細はGVD_SetPositionBuffer のページを参照してください。 
GVD_CloseFileまたはGVD_Disconnect後に開放できます。 
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.