⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gdi_drv.h

📁 audio-video-codecs.rar语音编解码器
💻 H
字号:
/*
 *
 *                 INTEL CORPORATION PROPRIETARY INFORMATION
 *    This software is supplied under the terms of a license agreement or
 *    nondisclosure agreement with Intel Corporation and may not be copied
 *    or disclosed except in accordance with the terms of that agreement.
 *         Copyright(c) 2001-2006 Intel Corporation. All Rights Reserved.
 *
 */

#ifndef __GDI_DRV_H__
#define __GDI_DRV_H__

#include <umc_defs.h>

#ifdef UMC_ENABLE_GDI_VIDEO_RENDER

#include "drv.h"
#include <umc_structures.h>

typedef struct GDIDrv
{
    HWND                    win;
    Ipp32s                  win_width;
    Ipp32s                  win_height;
    bool                    win_full_screen;

    Ipp32u                  gdi_bpp_DC;
    VideoDrvVideoMemType    gdi_YUV_buffer_type;
    VideoDrvPlaneInfo       gdi_YUV_buffer;
    UMC::ColorFormat        gdi_in_color_format;
    UMC::ColorFormat        gdi_out_color_format;
} GDIDrv;

typedef struct GDIVideoDrvParams
{
    VideoDrvParams      common;
    HWND                win;
    VideoDrvPlaneInfo   gdi_YUV_buffer;  /* External buffering is supported. */
    UMC::ColorFormat    gdi_in_color_format;
    Ipp32u              gdi_bpp_DC;
    UMC::ColorFormat    gdi_out_color_format;
} GDIVideoDrvParams;

#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */

    extern VIDEO_DRV_INIT_FUNC(umc_gdi_Init, driver, params);
    extern VIDEO_DRV_CLOSE_FUNC(umc_gdi_Close, driver);

    extern VIDEO_DRV_CREATE_BUFFERS_FUNC(umc_gdi_CreateBuffers,
                                         driver, min_b, max_b, bufs,
                                         video_mem_type, video_mem_info);
    extern VIDEO_DRV_FREE_BUFFERS_FUNC(umc_gdi_FreeBuffers,
                                       driver, num_b, bufs);

    extern VIDEO_DRV_LOCK_SURFACE_FUNC(umc_gdi_LockSurface,driver,srf,planes);
    extern VIDEO_DRV_UNLOCK_SURFACE_FUNC(umc_gdi_UnlockSurface, driver, srf);

    extern VIDEO_DRV_RENDER_FRAME_FUNC(umc_gdi_RenderFrame, driver, frame, rect);
    extern VIDEO_DRV_SET_VIDEO_MODE_FUNC(umc_gdi_SetVideoMode,driver,rect,mode);

    /* Function returns <HWND>. */
    extern VIDEO_DRV_GET_WINDOW_FUNC(umc_gdi_GetWindow, driver);
    extern VIDEO_DRV_RUN_EVENT_LOOP_FUNC(umc_gdi_RunEventLoop, driver);

    extern const VideoDrvSpec GDIVideoDrvSpec;

    extern Ipp32u umc_gdi_get_bpp_DC(HWND hWnd);

#ifdef __cplusplus
}
#endif /* __cplusplus */

#define UMC_DX_GET_WINDOW(void_win) (HWND)(void_win)

#endif /* defined(UMC_ENABLE_DX_VIDEO_RENDER) */
#endif /* __GDI_DRV_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -