亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mfcsetconfig.cpp

?? 6410BSP3
?? CPP
字號:
//
// Copyright (c) Samsung Electronics. Co. LTD.  All rights reserved.
//
/*++
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

*/



#include "MfcDrvParams.h"
#include "MFC_Instance.h"
#include "LogMsg.h"
#include "MfcSfr.h"
#include "CacheOpr.h"



int MFC_GetConfigParams(
                         MFCInstCtx  *pMfcInst,
                         MFC_ARGS     *args            // Input arguments for IOCTL_MFC_SET_CONFIG
                        )
{
    int             ret;

    switch (args->get_config.in_config_param) {

    case MFC_GET_CONFIG_DEC_FRAME_NEED_COUNT:
        args->get_config.out_config_value[0] = pMfcInst->frambufCnt;
        ret = MFCINST_RET_OK;

        break;

    case MFC_GET_CONFIG_DEC_MP4ASP_MV:
    case MFC_GET_CONFIG_DEC_MP4ASP_MBTYPE:

        // "MFC_GET_CONFIG_DEC_MP4ASP_MV" and "MFC_GET_CONFIG_DEC_MP4ASP_MBTYPE" are processed in the upper function.
        ret = MFCINST_RET_OK;

        break;

#if (defined(DIVX_ENABLE) && (DIVX_ENABLE == 1))
    case MFC_GET_CONFIG_DEC_BYTE_CONSUMED:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_PIC_RUN_BAK_BYTE_CONSUMED; 
        ret = MFCINST_RET_OK;
        break;

    case MFC_GET_CONFIG_DEC_MP4ASP_FCODE:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_PIC_RUN_BAK_MP4ASP_FCODE;
        ret = MFCINST_RET_OK;
        break;
        
    case MFC_GET_CONFIG_DEC_MP4ASP_VOP_TIME_RES:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_SEQ_INIT_BAK_MP4ASP_VOP_TIME_RES;
        ret = MFCINST_RET_OK;
        break;
        
    case MFC_GET_CONFIG_DEC_MP4ASP_TIME_BASE_LAST:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_PIC_RUN_BAK_MP4ASP_TIME_BASE_LAST;
        ret = MFCINST_RET_OK;
        break;
        
    case MFC_GET_CONFIG_DEC_MP4ASP_NONB_TIME_LAST:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_PIC_RUN_BAK_MP4ASP_NONB_TIME_LAST;
        ret = MFCINST_RET_OK;
        break;
        
    case MFC_GET_CONFIG_DEC_MP4ASP_TRD:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_DEC_PIC_RUN_BAK_MP4ASP_MP4ASP_TRD;
        ret = MFCINST_RET_OK;
        break;
#endif    
    case MFC_GET_CONFIG_ENC_PIC_TYPE:
        args->get_config.out_config_value[0] = (int)pMfcInst->RET_ENC_PIC_RUN_BAK_PIC_TYPE;
        ret = MFCINST_RET_OK;
        break;

    default:
        ret = -1;
    }


    // Output arguments for IOCTL_MFC_SET_CONFIG
    args->get_config.ret_code = ret;

    return MFCINST_RET_OK;
}

int MFC_SetConfigParams(
                         MFCInstCtx  *pMfcInst,
                         MFC_ARGS     *args            // Input arguments for IOCTL_MFC_SET_CONFIG
                        )
{
    int             ret;
    unsigned int    param_change_enable, param_change_val;

    param_change_enable = 0;
    switch (args->set_config.in_config_param) {

    case MFC_SET_CONFIG_DEC_ROTATE:
#if (MFC_ROTATE_ENABLE == 1)
        args->set_config.out_config_value_old[0]
                = MFCInst_Set_PostRotate(pMfcInst, args->set_config.in_config_value[0]);
#else
        LOG_MSG(LOG_ERROR, "MFC_SetConfigParams", "IOCTL_MFC_SET_CONFIG with MFC_SET_CONFIG_DEC_ROTATE is not supported.\r\n");
        LOG_MSG(LOG_ERROR, "MFC_SetConfigParams", "Please check if MFC_ROTATE_ENABLE is defined as 1 in MfcConfig.h file.\r\n");
#endif
        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CONFIG_DEC_OPTION:

        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CONFIG_ENC_H263_PARAM:
        args->set_config.out_config_value_old[0] = pMfcInst->h263_annex;
        pMfcInst->h263_annex = args->set_config.in_config_value[0];
        ret = MFCINST_RET_OK;
        break;


    case MFC_SET_CONFIG_ENC_SLICE_MODE:

        if (pMfcInst->enc_num_slices) {
            args->set_config.out_config_value_old[0] = 1;
            args->set_config.out_config_value_old[1] = pMfcInst->enc_num_slices;
        }
        else {
            args->set_config.out_config_value_old[0] = 0;
            args->set_config.out_config_value_old[1] = 0;
        }

        if (args->set_config.in_config_value[0])
            pMfcInst->enc_num_slices = args->set_config.in_config_value[1];
        else
            pMfcInst->enc_num_slices = 0;

        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CONFIG_ENC_PARAM_CHANGE:

        switch (args->set_config.in_config_value[0]) {
        case ENC_PARAM_GOP_NUM:
            param_change_enable = (1 << 0);
            break;

        case ENC_PARAM_INTRA_QP:
            param_change_enable = (1 << 1);
            break;

        case ENC_PARAM_BITRATE:
            param_change_enable = (1 << 2);
            break;

        case ENC_PARAM_F_RATE:
            param_change_enable = (1 << 3);
            break;

        case ENC_PARAM_INTRA_REF:
            param_change_enable = (1 << 4);
            break;

        case ENC_PARAM_SLICE_MODE:
            param_change_enable = (1 << 5);
            break;

        default:
            break;
        }

        param_change_val  = args->set_config.in_config_value[1];
        ret = MFCInst_EncParamChange(pMfcInst, param_change_enable, param_change_val);

        break;

    case MFC_SET_CONFIG_ENC_CUR_PIC_OPT:

        switch (args->set_config.in_config_value[0]) {
        case ENC_PIC_OPT_IDR:
            pMfcInst->enc_pic_option ^= (args->set_config.in_config_value[1] << 1);
            break;

        case ENC_PIC_OPT_SKIP:
            pMfcInst->enc_pic_option ^= (args->set_config.in_config_value[1] << 0);
            break;

        case ENC_PIC_OPT_RECOVERY:
            pMfcInst->enc_pic_option ^= (args->set_config.in_config_value[1] << 24);
            break;

        default:
            break;
        }

        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CACHE_CLEAN:
        //printf("MFC_SET_CACHE_CLEAN : start(0x%08x) size(0x%x)\n",  args->set_config.in_config_value[0], args->set_config.in_config_value[1]);
        CleanCacheRange((PBYTE )args->set_config.in_config_value[0], (PBYTE )(args->set_config.in_config_value[0] + args->set_config.in_config_value[1] ) );
        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CACHE_INVALIDATE:
        //printf("MFC_SET_CACHE_INVALIDATE : start(0x%08x) size(0x%x)\n",  args->set_config.in_config_value[0], args->set_config.in_config_value[1]);
        InvalidateCacheRange((PBYTE )args->set_config.in_config_value[0], (PBYTE )(args->set_config.in_config_value[0] + args->set_config.in_config_value[1] ) );
        ret = MFCINST_RET_OK;
        break;

    case MFC_SET_CACHE_CLEAN_INVALIDATE:
        //printf("MFC_SET_CACHE_CLEAN_INVALIDATE : start(0x%08x) size(0x%x)\n",  args->set_config.in_config_value[0], args->set_config.in_config_value[1]);
        CleanInvalidateCacheRange((PBYTE )args->set_config.in_config_value[0], (PBYTE )(args->set_config.in_config_value[0] + args->set_config.in_config_value[1] ) );
        ret = MFCINST_RET_OK;
        break;

#if (defined(DIVX_ENABLE) && (DIVX_ENABLE == 1))
    case MFC_SET_PADDING_SIZE:
//        printf("MFC_SET_PADDING_SIZE : paddingsize(%d)\n",  args->set_config.in_config_value[0]);
        pMfcInst->paddingSize = args->set_config.in_config_value[0];
        ret = MFCINST_RET_OK;
        break;
#endif

    default:
        ret = -1;
    }

    // Output arguments for IOCTL_MFC_SET_CONFIG
    args->set_config.ret_code = ret;

    return MFCINST_RET_OK;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
1024国产精品| 久久综合色播五月| 亚洲国产综合色| 欧美日韩高清一区| 奇米四色…亚洲| 2021久久国产精品不只是精品| 国内精品嫩模私拍在线| 久久久久青草大香线综合精品| 国产一区日韩二区欧美三区| 国产午夜精品福利| 99re这里都是精品| 亚洲线精品一区二区三区八戒| 欧美日韩国产精选| 国内精品伊人久久久久av一坑 | 欧美群妇大交群中文字幕| 香蕉影视欧美成人| 日韩免费视频一区二区| 国产白丝网站精品污在线入口| 亚洲四区在线观看| 欧美精品1区2区| 懂色av一区二区夜夜嗨| 亚洲高清在线视频| 久久久久国产免费免费| 欧美影院精品一区| 国产中文一区二区三区| 亚洲精品视频在线观看免费| 日韩视频不卡中文| 99久久免费国产| 蜜桃一区二区三区在线| 一区精品在线播放| 日韩一级大片在线观看| 91免费国产在线| 韩国毛片一区二区三区| 一区二区高清在线| 国产欧美一区二区在线| 欧美猛男超大videosgay| 国产1区2区3区精品美女| 午夜不卡av在线| 国产精品久久免费看| 日韩欧美高清在线| 91极品美女在线| 国产 欧美在线| 日本伊人色综合网| 一区二区三区四区在线免费观看| 精品91自产拍在线观看一区| 在线观看欧美精品| 成年人国产精品| 黄色精品一二区| 亚洲电影欧美电影有声小说| 国产精品久久久久久久午夜片| 精品久久久久久无| 91麻豆精品国产91久久久使用方法 | 91精品福利在线一区二区三区 | 日本电影欧美片| 粉嫩13p一区二区三区| 青青草成人在线观看| 亚洲综合精品久久| 一区二区中文视频| 国产精品欧美一级免费| 久久亚洲私人国产精品va媚药| 欧美日韩在线播放三区四区| 91首页免费视频| 成人免费va视频| 国产在线精品国自产拍免费| 美女尤物国产一区| 日韩在线播放一区二区| 亚洲国产精品麻豆| 亚洲综合无码一区二区| 亚洲人成伊人成综合网小说| 国产精品美女久久久久久2018| 久久精品一区二区三区四区| 欧美va日韩va| 欧美mv日韩mv国产网站| 欧美成人vr18sexvr| 日韩片之四级片| 欧美一区二区免费| 欧美一区二区三区四区五区| 555夜色666亚洲国产免| 在线91免费看| 日韩欧美一区二区免费| 日韩免费高清电影| 精品国产精品网麻豆系列| 欧美xxxx老人做受| 久久婷婷综合激情| 久久九九久久九九| 国产日产欧美一区| 国产精品天天看| 亚洲日本在线天堂| 亚洲精品乱码久久久久久久久| 又紧又大又爽精品一区二区| 亚洲一级二级在线| 日韩精品一二三区| 九九国产精品视频| 懂色av中文一区二区三区| av成人免费在线观看| 在线视频欧美区| 欧美一区二区视频在线观看2020| 日韩欧美一区中文| 久久精品男人的天堂| 亚洲欧美中日韩| 亚洲第一久久影院| 久久精品99国产精品| 丁香五精品蜜臀久久久久99网站| 成人av在线资源| 欧美日韩精品福利| 亚欧色一区w666天堂| 免费观看在线综合色| 国产一区二区导航在线播放| gogogo免费视频观看亚洲一| 精品视频在线免费观看| 精品国产自在久精品国产| 国产精品电影一区二区三区| 亚洲a一区二区| 国产一区二区精品久久91| 91久久精品一区二区三| 日韩区在线观看| 亚洲精品亚洲人成人网在线播放| 美女国产一区二区| 91免费版pro下载短视频| 欧美第一区第二区| 亚洲欧美日韩一区二区| 狠狠色狠狠色综合| 欧美在线色视频| 国产亚洲一区字幕| 午夜视频一区二区| 成人av网站在线观看| 欧美一区二区三区视频免费 | 欧美视频精品在线| 久久一日本道色综合| 亚洲一区在线看| 国产91丝袜在线播放0| 欧美乱妇20p| 亚洲色图一区二区三区| 国产尤物一区二区在线| 欧美高清精品3d| 亚洲欧美日韩一区| 成人国产精品免费观看动漫| 日韩精品影音先锋| 亚洲成av人在线观看| 99国产精品久久久| 久久久国产精品不卡| 日韩国产一二三区| 欧美亚洲高清一区二区三区不卡| 国产日韩精品一区| 九九**精品视频免费播放| 欧美精品自拍偷拍| 一区二区三区丝袜| av中文字幕不卡| 国产精品免费视频一区| 激情综合五月婷婷| 日韩欧美一卡二卡| 日韩av在线发布| 欧美精品v日韩精品v韩国精品v| 依依成人精品视频| 91丨九色丨国产丨porny| 国产精品丝袜一区| 国产福利不卡视频| 久久精品一区二区| 国产精品一区二区久久精品爱涩 | 日韩你懂的在线播放| 秋霞av亚洲一区二区三| 欧美精选午夜久久久乱码6080| 亚洲综合区在线| 在线亚洲人成电影网站色www| 亚洲欧洲日韩av| 91亚洲精华国产精华精华液| 国产精品高潮呻吟| 91偷拍与自偷拍精品| 亚洲人成网站色在线观看| 97精品国产露脸对白| 最新日韩在线视频| 日本韩国一区二区三区视频| 亚洲精品国产一区二区精华液| 91麻豆国产在线观看| 亚洲精品视频一区| 欧美日韩高清不卡| 免费人成黄页网站在线一区二区 | 精品国产三级电影在线观看| 激情另类小说区图片区视频区| 精品国产一二三区| 风流少妇一区二区| 中文字幕一区在线| 91网站黄www| 亚洲成人免费观看| 日韩欧美电影一区| 国产精品一级片在线观看| 国产精品久久久爽爽爽麻豆色哟哟| 99re热这里只有精品视频| 亚洲精品国产精品乱码不99| 欧美日本视频在线| 国产真实乱对白精彩久久| 国产女主播视频一区二区| 91视频观看视频| 午夜精品视频在线观看| 26uuu色噜噜精品一区| 成人av资源下载| 三级影片在线观看欧美日韩一区二区 | 亚洲国产日韩一级| 日韩欧美在线一区二区三区| youjizz久久|