18d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/****************************************************************************** 28d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 38d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Copyright (C) 2015 The Android Open Source Project 48d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 58d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Licensed under the Apache License, Version 2.0 (the "License"); 68d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * you may not use this file except in compliance with the License. 78d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * You may obtain a copy of the License at: 88d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 98d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * http://www.apache.org/licenses/LICENSE-2.0 108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Unless required by applicable law or agreed to in writing, software 128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * distributed under the License is distributed on an "AS IS" BASIS, 138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * See the License for the specific language governing permissions and 158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * limitations under the License. 168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * 178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ***************************************************************************** 188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore 198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S*/ 208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* File Name : ih264e.h */ 238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Description : This file contains all the necessary structure and */ 258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* enumeration definitions needed for the Application */ 268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Program Interface(API) of the Ittiam MPEG4 */ 278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Encoder on Cortex A8 - Neon platform */ 288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* List of Functions : ih264e_api_function */ 308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Issues / Problems : None */ 328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Revision History : */ 348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* DD MM YYYY Author(s) Changes (Describe the changes made) */ 368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* 26 08 2010 100239(RCY) Draft */ 378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* */ 388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifndef _IH264E_H_ 418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#define _IH264E_H_ 428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef __cplusplus 448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Sextern "C" { 458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#include "iv2.h" 488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#include "ive2.h" 498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Constant Macros */ 518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* API Function Prototype */ 568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha SIV_STATUS_T ih264e_api_function(iv_obj_t *ps_handle, void *pv_api_ip,void *pv_api_op); 588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Enums */ 618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef enum 638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S IH264E_CMD_CTL_SET_ME_INFO_ENABLE, 658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}IH264E_CMD_CTL_SUB_CMDS; 668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Extended Structures */ 708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Get Number of Memory Records */ 748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_num_mem_rec_ip_t s_ive_ip; 808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_num_mem_rec_ip_t; 818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_num_mem_rec_op_t s_ive_op; 868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_num_mem_rec_op_t; 878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Fill Memory Records */ 918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_fill_mem_rec_ip_t s_ive_ip; 978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_fill_mem_rec_ip_t; 988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_fill_mem_rec_op_t s_ive_op; 1038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_fill_mem_rec_op_t; 1048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Retrieve Memory Records */ 1078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_retrieve_mem_rec_ip_t s_ive_ip; 1138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_retrieve_mem_rec_ip_t; 1148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S iv_retrieve_mem_rec_op_t s_ive_op; 1198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_retrieve_mem_rec_op_t; 1208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Initialize encoder */ 1248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_init_ip_t s_ive_ip; 1298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_init_ip_t; 1308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_init_op_t s_ive_op; 1358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_init_op_t; 1368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Queue Input raw buffer - Send the YUV buffer to be encoded */ 1408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_queue_inp_ip_t s_ive_ip; 1448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_queue_inp_ip_t; 1458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_queue_inp_op_t s_ive_op; 1498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_queue_inp_op_t; 1508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Dequeue Input raw buffer - Get free YUV buffer from the encoder */ 1538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_dequeue_inp_ip_t s_ive_ip; 1578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_dequeue_inp_ip_t; 1588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_dequeue_inp_op_t s_ive_op; 1628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_dequeue_inp_op_t; 1638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Queue Output bitstream buffer - Send the bistream buffer to be filled */ 1678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_queue_out_ip_t s_ive_ip; 1718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_queue_out_ip_t; 1728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_queue_out_op_t s_ive_op; 1768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_queue_out_op_t; 1778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Dequeue Output bitstream buffer - Get the bistream buffer filled */ 1808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_dequeue_out_ip_t s_ive_ip; 1848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_dequeue_out_ip_t; 1858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_dequeue_out_op_t s_ive_op; 1898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_dequeue_out_op_t; 1908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 1928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Get Recon data - Get the reconstructed data from encoder */ 1948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 1958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 1968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 1978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_get_recon_ip_t s_ive_ip; 1988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_get_recon_ip_t; 1998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_get_recon_op_t s_ive_op; 2038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_get_recon_op_t; 2048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Flush */ 2068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_flush_ip_t s_ive_ip; 2128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_flush_ip_t; 2138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_flush_op_t s_ive_op; 2188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_flush_op_t; 2198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control reset */ 2228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_reset_ip_t s_ive_ip; 2288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_reset_ip_t; 2298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_reset_op_t s_ive_op; 2348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_reset_op_t; 2358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control:Get Buf Info */ 2398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_getbufinfo_ip_t s_ive_ip; 2458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_getbufinfo_ip_t; 2468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_getbufinfo_op_t s_ive_op; 2528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_getbufinfo_op_t; 2538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control:Get Version Info */ 2588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_getversioninfo_ip_t s_ive_ip; 2648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_getversioninfo_ip_t; 2658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_getversioninfo_op_t s_ive_op; 2718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_getversioninfo_op_t; 2728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control:Set default params */ 2758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_setdefault_ip_t s_ive_ip; 2818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_setdefault_ip_t; 2828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_setdefault_op_t s_ive_op; 2888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_setdefault_op_t; 2898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set IPE params */ 2928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 2938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 2958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_ipe_params_ip_t s_ive_ip; 2968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_ipe_params_ip_t; 2978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 2988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 2998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_ipe_params_op_t s_ive_op; 3018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_ipe_params_op_t; 3028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Frame dimensions */ 3058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_dimensions_ip_t s_ive_ip; 3098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_dimensions_ip_t; 3108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_dimensions_op_t s_ive_op; 3148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_dimensions_op_t; 3158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Frame rates */ 3188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_frame_rate_ip_t s_ive_ip; 3228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_frame_rate_ip_t; 3238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_frame_rate_op_t s_ive_op; 3268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_frame_rate_op_t; 3278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Bitrate */ 3318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_bitrate_ip_t s_ive_ip; 3358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_bitrate_ip_t; 3368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_bitrate_op_t s_ive_op; 3408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_bitrate_op_t; 3418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Frame type */ 3458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_frame_type_ip_t s_ive_ip; 3498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_frame_type_ip_t; 3508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_frame_type_op_t s_ive_op; 3548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_frame_type_op_t; 3558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Encode mode */ 3588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_enc_mode_ip_t s_ive_ip; 3628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_enc_mode_ip_t; 3638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_enc_mode_op_t s_ive_op; 3678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_enc_mode_op_t; 3688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set QP */ 3718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_qp_ip_t s_ive_ip; 3758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_qp_ip_t; 3768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_qp_op_t s_ive_op; 3808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_qp_op_t; 3818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set AIR params */ 3848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_air_params_ip_t s_ive_ip; 3888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_air_params_ip_t; 3898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 3928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_air_params_op_t s_ive_op; 3938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_air_params_op_t; 3948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 3958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set VBV params */ 3978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 3988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 3998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_vbv_params_ip_t s_ive_ip; 4018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_vbv_params_ip_t; 4028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_vbv_params_op_t s_ive_op; 4068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_vbv_params_op_t; 4078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Processor Details */ 4108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_num_cores_ip_t s_ive_ip; 4148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_num_cores_ip_t; 4158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_num_cores_op_t s_ive_op; 4198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_num_cores_op_t; 4208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Motion estimation params */ 4238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_me_params_ip_t s_ive_ip; 4278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_me_params_ip_t; 4288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_me_params_op_t s_ive_op; 4328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_me_params_op_t; 4338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set GOP params */ 4368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_gop_params_ip_t s_ive_ip; 4408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_gop_params_ip_t; 4418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_gop_params_op_t s_ive_op; 4458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_gop_params_op_t; 4468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Deblock params */ 4498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_deblock_params_ip_t s_ive_ip; 4538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_deblock_params_ip_t; 4548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_deblock_params_op_t s_ive_op; 4588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_deblock_params_op_t; 4598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Video control Set Profile params */ 4628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_profile_params_ip_t s_ive_ip; 4668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_profile_params_ip_t; 4678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_ctl_set_profile_params_op_t s_ive_op; 4718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_ctl_set_profile_params_op_t; 4728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Synchronous video encode call */ 4758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 4768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_video_encode_ip_t s_ive_ip; 4798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_video_encode_ip_t; 4808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 4828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 4838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ive_video_encode_op_t s_ive_op; 4848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_video_encode_op_t; 4858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 4868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 487983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex/*****************************************************************************/ 488983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex/* Video usability information */ 489983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex/*****************************************************************************/ 490983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alextypedef struct 491983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex{ 492983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** size of the structure */ 493983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD32 u4_size; 494983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 495983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Command type : IVE_CMD_VIDEO_CTL */ 496983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex IVE_API_COMMAND_TYPE_T e_cmd; 497983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 498983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Sub command type : IVE_CMD_CTL_SET_GOP_PARAMS */ 499983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex IVE_CONTROL_API_COMMAND_TYPE_T e_sub_cmd; 500983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 501983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** indicates the presence of aspect_ratio */ 502983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_aspect_ratio_info_present_flag; 503983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 504983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** specifies the aspect ratio of the luma samples */ 505983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_aspect_ratio_idc; 506983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 507983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** width of the luma samples. user dependent */ 508983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD16 u2_sar_width; 509983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 510983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Height of the luma samples. user dependent */ 511983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD16 u2_sar_height; 512983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 513983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 1, specifies that the overscan_appropriate_flag is present 514983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * if 0, the preferred display method for the video signal is unspecified */ 515983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_overscan_info_present_flag; 516983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 517983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 1,indicates that the cropped decoded pictures output 518983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * are suitable for display using overscan */ 519983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_overscan_appropriate_flag; 520983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 521983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 1 specifies that video_format, video_full_range_flag and 522983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * colour_description_present_flag are present */ 523983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_video_signal_type_present_flag; 524983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 525983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** pal, secam, ntsc, ... */ 526983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_video_format; 527983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 528983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** indicates the black level and range of the luma and chroma signals */ 529983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_video_full_range_flag; 530983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 531983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 1,specifies that colour_primaries, transfer_characteristics 532983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * and matrix_coefficients are present */ 533983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_colour_description_present_flag; 534983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 535983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** indicates the chromaticity coordinates of the source primaries */ 536983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_colour_primaries; 537983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 538983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** indicates the opto-electronic transfer characteristic of the source picture */ 539983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_transfer_characteristics; 540983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 541983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** the matrix coefficients used in deriving luma and chroma signals 542983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * from the green, blue, and red primaries */ 543983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_matrix_coefficients; 544983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 545983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 1, specifies that chroma_sample_loc_type_top_field and 546983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * chroma_sample_loc_type_bottom_field are present */ 547983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_chroma_loc_info_present_flag; 548983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 549983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** location of chroma samples */ 550983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_chroma_sample_loc_type_top_field; 551983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_chroma_sample_loc_type_bottom_field; 552983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 553983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates the presence of the num_units_in_ticks, time_scale flag */ 554983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_vui_timing_info_present_flag; 555983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 556983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Number of units that correspond to one increment of the 557983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * clock. Indicates the resolution */ 558983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD32 u4_vui_num_units_in_tick; 559983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 560983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** The number of time units that pass in one second */ 561983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD32 u4_vui_time_scale; 562983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 563983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Flag indicating that time difference between two frames is a constant */ 564983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_fixed_frame_rate_flag; 565983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 566983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates the presence of NAL HRD parameters */ 567983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_nal_hrd_parameters_present_flag; 568983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 569983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates the presence of VCL HRD parameters */ 570983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_vcl_hrd_parameters_present_flag; 571983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 572983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Specifies the HRD operational mode */ 573983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_low_delay_hrd_flag; 574983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 575983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates presence of SEI messages which include pic_struct syntax element */ 576983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_pic_struct_present_flag; 577983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 578983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** 1, specifies that the following cvs bitstream restriction parameters are present */ 579983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_bitstream_restriction_flag; 580983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 581983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** if 0, indicates that no pel outside the pic boundaries and 582983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * no sub-pels derived using pels outside the pic boundaries is used for inter prediction */ 583983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_motion_vectors_over_pic_boundaries_flag; 584983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 585983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates a number of bytes not exceeded by the sum of the sizes of the VCL NAL units 586983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * associated with any coded picture */ 587983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_max_bytes_per_pic_denom; 588983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 589983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicates an upper bound for the number of bits of coding_unit() data */ 590983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_max_bits_per_mb_denom; 591983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 592983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicate the maximum absolute value of a decoded horizontal MV component 593983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * in quarter-pel luma units */ 594983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_log2_max_mv_length_horizontal; 595983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 596983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Indicate the maximum absolute value of a decoded vertical MV component 597983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex * in quarter-pel luma units */ 598983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_log2_max_mv_length_vertical; 599983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 600983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Max number of frames that are not synchronized in display and decode order */ 601983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_num_reorder_frames; 602983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 603983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** specifies required size of the HRD DPB in units of frame buffers */ 604983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD8 u1_max_dec_frame_buffering; 605983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 606983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex}ih264e_vui_ip_t; 607983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 608983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alextypedef struct 609983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex{ 610983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** size of the structure */ 611983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD32 u4_size; 612983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 613983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex /** Return error code */ 614983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex UWORD32 u4_error_code; 615983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex}ih264e_vui_op_t; 616983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 617983e1aecd4739d2a558228e3fb6f9895333f25d4Doney Alex 6188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* The enum values should not have greater than 8 bits as this is assigned to WORD8 */ 6198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef enum 6208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S INTRA16x16 = 0, 6228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S INTRA4x4, 6238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S INTER16x16 6248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}IV_MB_TYPE_T; 6258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 6278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Pic info structures */ 6288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 6298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Qp */ 6328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S UWORD32 u4_qp; 6338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Pic Type */ 6358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S IV_PICTURE_CODING_TYPE_T e_frame_type; 6368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_pic_info1_t; 6388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Qp */ 6428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S UWORD32 u4_qp; 6438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Pic Type */ 6458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S IV_PICTURE_CODING_TYPE_T e_frame_type; 6468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Disable deblock level (0: Enable completely, 3: Disable completely */ 6488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S UWORD32 u4_disable_deblock_level; 6498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_pic_info2_t; 6518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6528d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6538d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 6548d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* MB info structures */ 6558d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/*****************************************************************************/ 6568d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6578d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6588d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** MV X */ 6598d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD16 i2_mv_x; 6608d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6618d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** MV Y */ 6628d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD16 i2_mv_y; 6638d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mv_t; 6648d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6658d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6668d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6678d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra / Inter */ 6688d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 i1_mb_type; 6698d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S union 6708d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S { 6718d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mv_t as_mv[1]; 6728d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6738d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra mode */ 6748d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 ai1_intra_mode[1]; 6758d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S }; 6768d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mb_info1_t; 6778d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6788d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6798d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 6808d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra / Inter */ 6818d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 i1_mb_type; 6828d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6838d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6848d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** SAD */ 6858d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S UWORD16 u2_sad; 6868d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6878d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S union 6888d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S { 6898d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mv_t as_mv[1]; 6908d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6918d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra mode */ 6928d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 ai1_intra_mode[1]; 6938d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S }; 6948d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6958d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6968d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mb_info2_t; 6978d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 6988d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 6998d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 7008d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra / Inter */ 7018d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 i1_mb_type; 7028d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7038d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S union 7048d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S { 7058d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mv_t as_mv[4]; 7068d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7078d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra mode */ 7088d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 ai1_intra_mode[16]; 7098d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S }; 7108d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7118d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mb_info3_t; 7128d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7138d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 7148d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 7158d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra / Inter */ 7168d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 i1_mb_type; 7178d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7188d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra Mode */ 7198d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 i1_intra_mode; 7208d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7218d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** SAD */ 7228d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S UWORD16 u2_sad; 7238d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7248d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S union 7258d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S { 7268d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mv_t as_mv[16]; 7278d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7288d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S /** Intra mode */ 7298d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S WORD8 ai1_intra_mode[16]; 7308d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S }; 7318d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7328d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7338d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7348d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mb_info4_t; 7358d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7368d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S/* Add any new structures to the following union. It is used to calculate the max size needed for allocation of memory */ 7378d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha Stypedef struct 7388d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S{ 7398d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S union 7408d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S { 7418d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mb_info1_t s_mb_info1; 7428d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mb_info2_t s_mb_info2; 7438d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mb_info3_t s_mb_info3; 7448d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S ih264e_mb_info4_t s_mb_info4; 7458d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S }; 7468d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S}ih264e_mb_info_t; 7478d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S 7488d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#ifdef __cplusplus 7498d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S} /* closing brace for extern "C" */ 7508d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif 7518d3d303c7942ced6a987a52db8977d768dc3605fHamsalekha S#endif /* _IH264E_H_ */ 752