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