AG903ライブラリリファレンス
内容インデックスホーム
Body Source
本文ソース
1: 11: 12: 16: 17: #ifndef GVD_H 18: #define GVD_H 19: 20: 21: #include <stddef.h> 22: #include <stdint.h> 23: #include <stdbool.h> 24: 25: #include "gvd_error.h" 26: #include "gvd_api_params.h" 27: 28: #ifndef GVD_MAX_ENUM 29: #define GVD_MAX_ENUM 0x7FFFFFFF 30: #endif 31: 32: 33: typedef enum { 34: GVD_OUTMOD_NONE, 35: GVD_OUTMOD_BMU, 36: GVD_OUTMOD_VRAM, 37: GVD_OUTMOD_FORCE_SIZE = GVD_MAX_ENUM 38: } gvdOutMod; 39: 40: 41: typedef struct { 42: void *commit_output_buffer; 43: void *discard_input_buffer; 44: void *discard_output_buffer; 45: void *notify_frame_size; 46: void *notify_decode_error; 47: void *notify_stream_pos; 48: void *decode_stream_end; 49: void *rewind_done; 50: void *seqparam_decode_done; 51: } gvdCbParams; 52: 53: 54: 60: typedef struct { 61: gvdCbFunc connect_done; 62: gvdCbFunc disconnect_done; 63: gvdCbFunc put_input_buffer_done; 64: gvdCbFunc put_output_buffer_done; 65: gvdCbFunc discard_output_buffers_done; 66: gvdCbFunc commit_output_buffer; 67: gvdCbFunc discard_input_buffer; 68: gvdCbFunc discard_output_buffer; 69: gvdCbFunc notify_frame_size; 70: gvdCbFunc notify_decode_error; 71: gvdCbFunc notify_stream_pos; 72: gvdCbFunc decode_stream_end; 73: gvdCbFunc seek_done; 74: gvdCbFunc rewind_done; 75: gvdCbFunc pause_done; 76: gvdCbFunc play_accepted; 77: gvdCbFunc get_timestamp_done; 78: gvdCbFunc rewind_accepted; 79: gvdCbFunc forward_accepted; 80: gvdCbFunc seqparam_decode_done; 81: } gvdCbFuncs; 82: 83: 84: typedef enum { 85: GVD_APIFUNC_STATUS_CLOSE, 86: GVD_APIFUNC_STATUS_PAUSE, 87: GVD_APIFUNC_STATUS_PLAY, 88: GVD_APIFUNC_STATUS_REWIND, 89: GVD_APIFUNC_STATUS_FORWARD, 90: GVD_APIFUNC_STATUS_UNKNOWN, 91: GVD_APIFUNC_STATUS_FORCE_SIZE = GVD_MAX_ENUM 92: } gvdApiFuncStatus; 93: 94: typedef struct gvdContext_s gvdContext; 95: 96: 109: gvdError GVD_InitInitializeParam(gvdInitializeParam *initparam); 110: 119: uint32_t GVD_GetRequiredMemorySize(void); 120: 133: gvdError GVD_SetWorkMemory(void *address, size_t size); 134: 147: gvdError GVD_Initialize(void); 148: 159: gvdError GVD_Finalize(void); 160: 172: gvdError GVD_Execute(void); 173: 185: gvdError GVD_CreateContext(gvdContext **gvdctx); 186: 197: gvdError GVD_DestroyContext(gvdContext *gvdctx); 198: 213: gvdError GVD_Connect(gvdContext *gvdctx, void *param_user); 214: 229: gvdError GVD_Disconnect(gvdContext *gvdctx, void *param_user); 230: 245: gvdError GVD_OpenFile(gvdContext *gvdctx, const char *filename, void *param_user); 246: 261: gvdError GVD_CloseFile(gvdContext *gvdctx, void *param_user); 262: 279: gvdError GVD_PutInputBuffer(gvdContext *gvdctx, gvdInBufInfo *bufinf, void *param_user); 280: 298: gvdError GVD_PutOutputBuffer(gvdContext *gvdctx, gvdOutBufInfo *obufinf, void *param_user); 299: 311: gvdError GVD_DiscardOutputBuffers(gvdContext *gvdctx, void *param_user); 312: 322: gvdError GVD_InitCallbackInfo(gvdCbFuncs *cbfuncs, gvdCbParams *cbparams); 323: 336: gvdError GVD_SetCallbackParams(gvdContext *gvdctx, gvdCbParams *cbparams); 337: 350: gvdError GVD_SetCallbackFunctions(gvdContext *gvdctx, gvdCbFuncs *cbfuncs); 351: 365: gvdError GVD_SelectOutputModule(gvdContext *gvdctx, gvdOutMod omod); 366: 378: gvdError GVD_GetBMUId(gvdContext *gvdctx, int32_t *bmuid); 379: 392: gvdError GVD_SetBMUAddr(gvdContext *gvdctx, void *addr); 393: 406: gvdError GVD_SetSearchRange(gvdContext *gvdctx, uint32_t range); 407: 417: gvdError GVD_GetSearchRange(gvdContext *gvdctx, uint32_t *range); 418: 435: gvdError GVD_SetOutputHeap(gvdContext *gvdctx, void *heap, size_t size); 436: 448: gvdError GVD_SetPositionBuffer(gvdContext *gvdctx, void *buffer, size_t size); 449: 461: gvdError GVD_GetStatus(gvdContext *gvd, gvdApiFuncStatus *status); 462: 475: gvdError GVD_GetTimeStamp(gvdContext *gvd, void *param_user); 476: 489: gvdError GVD_Play(gvdContext *gvdctx, void *param_user); 490: 503: gvdError GVD_Pause(gvdContext *gvd, void *param_user); 504: 519: gvdError GVD_Forward(gvdContext *gvd, uint32_t n_speed, void *param_user); 520: 536: gvdError GVD_Rewind(gvdContext *gvd, uint32_t n_speed, void *param_user); 537: 552: gvdError GVD_Seek(gvdContext *gvd, gvdSeekParam *seekparam, void *param_user); 553: 561: void GVD_GetFatalError(gvdFatalErrorInfo *fatalerror); 562: 574: gvdError GVD_SetMaxNumInputBuffers(gvdContext *gvdctx, size_t max_num_inputbuffers); 575: 584: gvdError GVD_GetMaxNumInputBuffers(gvdContext *gvdctx, size_t *max_num_inputbuffers); 585: 594: gvdError GVD_SetMaxNumOutputBuffers(gvdContext *gvdctx, size_t max_num_outputbuffers); 595: 604: gvdError GVD_GetMaxNumOutputBuffers(gvdContext *gvdctx, size_t *max_num_outputbuffers); 605: 614: gvdError GVD_SetIPConv(gvdContext *gvdctx, _Bool enable); 615: 625: gvdError GVD_GetIPConv(gvdContext *gvdctx, _Bool *enable); 626: 637: gvdError GVD_SetFatalErrorAddress(void *address); 638: 651: gvdError GVD_SetOccupyMemoryAddress(void *address); 652: 663: gvdError GVD_ForcedShutdown(gvdContext *gvdctx); 664: 665: #endif
Copyright (c) 2017-2025 Axell Corporation. All rights reserved.