1 /* ------------------------------------------------------------------ 2 * Copyright (C) 1998-2009 PacketVideo 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 13 * express or implied. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * ------------------------------------------------------------------- 17 */ 18 19 #ifndef PVMP4FFCN_SETTINGS_H_INCLUDED 20 #define PVMP4FFCN_SETTINGS_H_INCLUDED 21 22 #ifndef OSCL_BASE_H_INCLUDED 23 #include "oscl_base.h" 24 #endif 25 #ifndef OSCL_STRING_CONTAINERS_H_INCLUDED 26 #include "oscl_string_containers.h" 27 #endif 28 #ifndef PVMF_FORMAT_TYPE_H_INCLUDED 29 #include "pvmf_format_type.h" 30 #endif 31 32 /** 33 * Structure containing configuration info for this node 34 */ 35 class PVMp4FFComposerNodeSettings 36 { 37 public: PVMp4FFComposerNodeSettings()38 PVMp4FFComposerNodeSettings() 39 { 40 iMediaFormat = PVMF_MIME_FORMAT_UNKNOWN; 41 iLoopInputFile = true; 42 iSamplingFrequency = 8000; 43 iNumChannels = 1; 44 iNum20msFramesPerChunk = 1; 45 iTimescale = 1000; 46 iFrameHeight = 144; 47 iFrameWidth = 176; 48 iFrameRateSimulation = false; 49 iFrameRate = 15; 50 iFirstFrameTimestamp = 0; 51 iBitrate = 0; 52 iFrameInterval = 0; 53 } 54 55 // General settings 56 PVMFFormatType iMediaFormat; 57 bool iLoopInputFile; 58 OSCL_wHeapString<OsclMemAllocator> iFileName; 59 OSCL_wHeapString<OsclMemAllocator> iLogFileName; 60 OSCL_wHeapString<OsclMemAllocator> iTextFileName; 61 62 // Settings for audio files 63 uint32 iSamplingFrequency; 64 uint32 iNumChannels; 65 uint32 iNum20msFramesPerChunk; 66 // Settings for video files 67 uint32 iTimescale; 68 uint32 iFrameHeight; 69 uint32 iFrameWidth; 70 bool iFrameRateSimulation; 71 OsclFloat iFrameRate; 72 uint32 iFirstFrameTimestamp; 73 uint32 iBitrate; 74 uint32 iFrameInterval; 75 }; 76 77 #endif 78 79 80