1e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu/* 2e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* Copyright (c) 2009-2011 Intel Corporation. All rights reserved. 3e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* 4e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* Licensed under the Apache License, Version 2.0 (the "License"); 5e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* you may not use this file except in compliance with the License. 6e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* You may obtain a copy of the License at 7e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* 8e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* http://www.apache.org/licenses/LICENSE-2.0 9e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* 10e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* Unless required by applicable law or agreed to in writing, software 11e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* distributed under the License is distributed on an "AS IS" BASIS, 12e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* See the License for the specific language governing permissions and 14e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu* limitations under the License. 15e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu*/ 16e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 17e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 18e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu#ifndef OMX_VIDEO_DECODER_H263_H_ 19e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu#define OMX_VIDEO_DECODER_H263_H_ 20e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 21e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 22e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu#include "OMXVideoEncoderBase.h" 23e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 24e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiuclass OMXVideoEncoderH263 : public OMXVideoEncoderBase { 25e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiupublic: 26e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OMXVideoEncoderH263(); 27e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu virtual ~OMXVideoEncoderH263(); 28e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 29e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiuprotected: 30e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu virtual OMX_ERRORTYPE InitOutputPortFormatSpecific(OMX_PARAM_PORTDEFINITIONTYPE *paramPortDefinitionOutput); 31e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu virtual OMX_ERRORTYPE ProcessorInit(void); 32e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu virtual OMX_ERRORTYPE ProcessorDeinit(void); 33e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu virtual OMX_ERRORTYPE ProcessorProcess( 34e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OMX_BUFFERHEADERTYPE **buffers, 35e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu buffer_retain_t *retains, 36e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OMX_U32 numberBuffers); 37e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 3819b2ab9f325bdbf3afe530e943fa5a0c0020b308Shuduo Sang virtual OMX_ERRORTYPE BuildHandlerList(void); 3919b2ab9f325bdbf3afe530e943fa5a0c0020b308Shuduo Sang virtual OMX_ERRORTYPE SetVideoEncoderParam(); 4019b2ab9f325bdbf3afe530e943fa5a0c0020b308Shuduo Sang DECLARE_HANDLER(OMXVideoEncoderH263, ParamVideoH263); 41cae415b84125ffc14bfdb121394a60b74d506f48Yanli DECLARE_HANDLER(OMXVideoEncoderH263, ParamVideoProfileLevelQuerySupported); 42e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 43e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiuprivate: 44e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu enum { 45e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu // OMX_PARAM_PORTDEFINITIONTYPE 46e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OUTPORT_MIN_BUFFER_COUNT = 1, 47e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OUTPORT_ACTUAL_BUFFER_COUNT = 2, 48e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OUTPORT_BUFFER_SIZE = 1382400, 49e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu }; 50e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 51e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu OMX_VIDEO_PARAM_H263TYPE mParamH263; 52e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu}; 53e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 54e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu 55e7ace334fb7c64f7b32aa3746e5a11bcefa60bfbAndy Qiu#endif /* OMX_VIDEO_DECODER_H263_H_ */ 56