# 2.3 基本信息接口
## 2.3.1 查詢庫基本信息接口
**接口定義**:DWORD MediaCodec_GetLibraryInfo(DWORD* dwCapability, DWORD* dwMainVer, DWORD* dwSubVer, CHAR* lpCompileTime, DWORD dwBufLen)
**返 回 值**:0
**參 數**:
DWORD* dwCapability 庫所實現的 CODEC 類型標志組合
DWORD* dwMainVer 庫的主版本號,用戶自定義
DWORD* dwSubVer 庫的從版本號,用戶自定義
CHAR* lpCompileTime 庫的編譯時間,已由外部分配好內存空間
DWORD dwBufLen 保存編譯時間緩沖區的大小
**詳細說明**:
該 API 接口必須實現,AnyChat 內核加載外部編解碼動態庫時,首先會調用該接口,獲取當前加載的動態庫實現了那些 API 接口(根據 dwCapability 返回值來判斷)。
## 2.3.2 查詢編解碼器信息接口
**接口定義**:DWORD MediaCodec_GetCodecInfo(DWORD dwCodecType, DWORD* dwCodecId, CHAR* lpCodecName, DWORD dwBufLen)
**返 回 值**:查詢的 CODEC 類型存在時返回 0,否則返回-1
**參 數**:
DWORD dwCodecType 需要查詢的 CODEC 類型
DWORD* dwCodecId 返回該類型的 CODEC 編號值
CHAR* lpCodecName 返回該 CODEC 的名稱,已由外部分配好內存
DWORD dwBufLen 保存 CODEC 名稱緩沖區的大小
**詳細說明**:
該 API 接口必須實現,AnyChat內核首先通過“庫基本信息接口”獲取到庫的 CODEC 類型標志組合,然后再調用該接口詳細獲取指定類型的 CODEC 編號與名稱。
當用戶實現的CODEC編號不在AnyChat內置CODEC列 表(enum MEDIA_CODEC_ID)中時,可自定義一個ID,需要注意的是,自定義的CODEC ID必須大于或等于 MEDIA_CODEC_ID_USERSTART 宏定義的值,宏定義以內的值屬于保留 ID,用于AnyChat今后的擴展,如果上層應用使用了該宏定義以內的值,那么今后AnyChat平臺的升級將可能導致AnyChat內核與上層之間的一些沖突。