1bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/* 2bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee INTEL CONFIDENTIAL 3bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee Copyright 2009 Intel Corporation All Rights Reserved. 4bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee The source code contained or described herein and all documents related to the source code ("Material") are owned by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or its suppliers and licensors. The Material contains trade secrets and proprietary and confidential information of Intel or its suppliers and licensors. The Material is protected by worldwide copyright and trade secret laws and treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted, transmitted, distributed, or disclosed in any way without Intel’s prior express written permission. 5bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 6bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee No license under any patent, copyright, trade secret or other intellectual property right is granted to or conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement, estoppel or otherwise. Any license under such intellectual property rights must be express and approved by Intel in writing. 7bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 8bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 9bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#ifndef __MIX_VIDEOCONFIGPARAMSENC_H__ 10bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define __MIX_VIDEOCONFIGPARAMSENC_H__ 11bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 12bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#include <mixvideoconfigparams.h> 13bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#include "mixvideodef.h" 14bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 15bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 16bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_TYPE_VIDEOCONFIGPARAMSENC: 17bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 18bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Get type of class. 19bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 20bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_TYPE_VIDEOCONFIGPARAMSENC (mix_videoconfigparamsenc_get_type ()) 21bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 22bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 23bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_VIDEOCONFIGPARAMSENC: 24bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @obj: object to be type-casted. 25bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 26bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_VIDEOCONFIGPARAMSENC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MIX_TYPE_VIDEOCONFIGPARAMSENC, MixVideoConfigParamsEnc)) 27bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 28bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 29bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_IS_VIDEOCONFIGPARAMSENC: 30bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @obj: an object. 31bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 32bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Checks if the given object is an instance of #MixParams 33bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 34bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_IS_VIDEOCONFIGPARAMSENC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MIX_TYPE_VIDEOCONFIGPARAMSENC)) 35bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 36bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 37bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_VIDEOCONFIGPARAMSENC_CLASS: 38bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @klass: class to be type-casted. 39bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 40bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_VIDEOCONFIGPARAMSENC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MIX_TYPE_VIDEOCONFIGPARAMSENC, MixVideoConfigParamsEncClass)) 41bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 42bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 43bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_IS_VIDEOCONFIGPARAMSENC_CLASS: 44bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @klass: a class. 45bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 46bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Checks if the given class is #MixParamsClass 47bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 48bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_IS_VIDEOCONFIGPARAMSENC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MIX_TYPE_VIDEOCONFIGPARAMSENC)) 49bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 50bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 51bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MIX_VIDEOCONFIGPARAMSENC_GET_CLASS: 52bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @obj: a #MixParams object. 53bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 54bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Get the class instance of the object. 55bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 56bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define MIX_VIDEOCONFIGPARAMSENC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MIX_TYPE_VIDEOCONFIGPARAMSENC, MixVideoConfigParamsEncClass)) 57bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 58bd8388b4555645b3d29abc6a94c303638064d69awonjong.leetypedef struct _MixVideoConfigParamsEnc MixVideoConfigParamsEnc; 59bd8388b4555645b3d29abc6a94c303638064d69awonjong.leetypedef struct _MixVideoConfigParamsEncClass MixVideoConfigParamsEncClass; 60bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 61bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 62bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MixVideoConfigParamsEnc: 63bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 64bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MI-X VideoConfig Parameter object 65bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 66bd8388b4555645b3d29abc6a94c303638064d69awonjong.leestruct _MixVideoConfigParamsEnc { 67bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee /*< public > */ 68bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixVideoConfigParams parent; 69bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 70bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee /*< public > */ 71bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee //MixIOVec header; 72bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 73bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee /* the type of the following members will be changed after MIX API doc is ready */ 74bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 75bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixProfile profile; 76bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRawTargetFormat raw_format; 77bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRateControl rate_control; 78bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 79bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint bitrate; 80bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint frame_rate_num; 81bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint frame_rate_denom; 82bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint initial_qp; 83bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint min_qp; 84bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint intra_period; 85bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint16 picture_width; 86bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint16 picture_height; 87bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 88bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee GString * mime_type; 89bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixEncodeTargetFormat encode_format; 90bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 91bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint mixbuffer_pool_size; 92bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 93bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gboolean share_buf_mode; 94bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 95bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong * ci_frame_id; 96bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint ci_frame_num; 97bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 98bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong draw; 99bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gboolean need_display; 100bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 101bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee void *reserved1; 102bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee void *reserved2; 103bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee void *reserved3; 104bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee void *reserved4; 105bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee}; 106bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 107bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 108bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MixVideoConfigParamsEncClass: 109bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 110bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * MI-X VideoConfig object class 111bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 112bd8388b4555645b3d29abc6a94c303638064d69awonjong.leestruct _MixVideoConfigParamsEncClass { 113bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee /*< public > */ 114bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixVideoConfigParamsClass parent_class; 115bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 116bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee /* class members */ 117bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee}; 118bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 119bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 120bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * mix_videoconfigparamsenc_get_type: 121bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @returns: type 122bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 123bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Get the type of object. 124bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 125bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeGType mix_videoconfigparamsenc_get_type(void); 126bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 127bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 128bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * mix_videoconfigparamsenc_new: 129bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @returns: A newly allocated instance of #MixVideoConfigParamsEnc 130bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 131bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Use this method to create new instance of #MixVideoConfigParamsEnc 132bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 133bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMixVideoConfigParamsEnc *mix_videoconfigparamsenc_new(void); 134bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 135bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * mix_videoconfigparamsenc_ref: 136bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @mix: object to add reference 137bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @returns: the MixVideoConfigParamsEnc instance where reference count has been increased. 138bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 139bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Add reference count. 140bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 141bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMixVideoConfigParamsEnc *mix_videoconfigparamsenc_ref(MixVideoConfigParamsEnc * mix); 142bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 143bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/** 144bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * mix_videoconfigparamsenc_unref: 145bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * @obj: object to unref. 146bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * 147bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee * Decrement reference count of the object. 148bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 149bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define mix_videoconfigparamsenc_unref(obj) mix_params_unref(MIX_PARAMS(obj)) 150bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 151bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/* Class Methods */ 152bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 153bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 154bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_mime_type(MixVideoConfigParamsEnc * obj, 155bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee const gchar * mime_type); 156bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 157bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_mime_type(MixVideoConfigParamsEnc * obj, 158bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gchar ** mime_type); 159bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 160bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_frame_rate(MixVideoConfigParamsEnc * obj, 161bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint frame_rate_num, guint frame_rate_denom); 162bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 163bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_frame_rate(MixVideoConfigParamsEnc * obj, 164bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint * frame_rate_num, guint * frame_rate_denom); 165bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 166bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_picture_res(MixVideoConfigParamsEnc * obj, 167bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint picture_width, guint picture_height); 168bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 169bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_picture_res(MixVideoConfigParamsEnc * obj, 170bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint * picture_width, guint * picture_height); 171bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 172bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_encode_format (MixVideoConfigParamsEnc * obj, 173bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixEncodeTargetFormat encode_format); 174bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 175bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_encode_format (MixVideoConfigParamsEnc * obj, 176bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixEncodeTargetFormat * encode_format); 177bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 178bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_bit_rate (MixVideoConfigParamsEnc * obj, 179bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint bps); 180bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 181bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_bit_rate (MixVideoConfigParamsEnc * obj, 182bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint *bps); 183bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 184bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_init_qp (MixVideoConfigParamsEnc * obj, 185bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint initial_qp); 186bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 187bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_init_qp (MixVideoConfigParamsEnc * obj, 188bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint *initial_qp); 189bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 190bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_min_qp (MixVideoConfigParamsEnc * obj, 191bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint min_qp); 192bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 193bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_min_qp(MixVideoConfigParamsEnc * obj, 194bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint *min_qp); 195bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 196bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_intra_period (MixVideoConfigParamsEnc * obj, 197bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint intra_period); 198bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 199bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_intra_period (MixVideoConfigParamsEnc * obj, 200bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint *intra_period); 201bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 202bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_buffer_pool_size(MixVideoConfigParamsEnc * obj, 203bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint bufpoolsize); 204bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 205bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_buffer_pool_size(MixVideoConfigParamsEnc * obj, 206bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee guint *bufpoolsize); 207bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 208bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_share_buf_mode (MixVideoConfigParamsEnc * obj, 209bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gboolean share_buf_mod); 210bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 211bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_share_buf_mode(MixVideoConfigParamsEnc * obj, 212bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gboolean *share_buf_mod); 213bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 214bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_ci_frame_info(MixVideoConfigParamsEnc * obj, 215bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong * ci_frame_id, guint ci_frame_num); 216bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 217bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_ci_frame_info (MixVideoConfigParamsEnc * obj, 218bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong * *ci_frame_id, guint *ci_frame_num); 219bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 220bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_drawable (MixVideoConfigParamsEnc * obj, 221bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong draw); 222bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 223bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_drawable (MixVideoConfigParamsEnc * obj, 224bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gulong *draw); 225bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 226bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_need_display ( 227bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixVideoConfigParamsEnc * obj, gboolean need_display); 228bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 229bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_need_display(MixVideoConfigParamsEnc * obj, 230bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee gboolean *need_display); 231bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 232bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 233bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_rate_control(MixVideoConfigParamsEnc * obj, 234bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRateControl rcmode); 235bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 236bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_rate_control(MixVideoConfigParamsEnc * obj, 237bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRateControl * rcmode); 238bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 239bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_raw_format (MixVideoConfigParamsEnc * obj, 240bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRawTargetFormat raw_format); 241bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 242bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_raw_format (MixVideoConfigParamsEnc * obj, 243bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixRawTargetFormat * raw_format); 244bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 245bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_set_profile (MixVideoConfigParamsEnc * obj, 246bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixProfile profile); 247bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 248bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeMIX_RESULT mix_videoconfigparamsenc_get_profile (MixVideoConfigParamsEnc * obj, 249bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee MixProfile * profile); 250bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 251bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/* TODO: Add getters and setters for other properties */ 252bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 253bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#endif /* __MIX_VIDEOCONFIGPARAMSENC_H__ */ 254bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 255