videoeditorengine/audioeditorengine/inc/AudCommon.h
branchRCL_3
changeset 3 e0b5df5c0969
parent 0 951a5db380a0
child 5 4c409de21d23
--- a/videoeditorengine/audioeditorengine/inc/AudCommon.h	Fri Jan 29 14:08:33 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,223 +0,0 @@
-/*
-* Copyright (c) 2010 Ixonos Plc.
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - Initial contribution
-*
-* Contributors:
-* Ixonos Plc
-*
-* Description:  
-* Common definitions for audio.
-*
-*/
-
-
-
-#ifndef __AUDCOMMON_H__
-#define __AUDCOMMON_H__
-
-#include <e32std.h>
-
-
-const TInt KErrNoAudio = -400;
-/**
- * Enumeration for audio file formats.
- */
-enum TAudFormat
-    {
-    EAudFormatUnrecognized = 100001,  // should always be the first one
-    EAudFormat3GPP,
-    EAudFormatMP4,
-    EAudFormatAMR,
-    EAudFormatAMRWB,
-    EAudFormatMP3,
-    EAudFormatAAC_ADIF,
-    EAudFormatAAC_ADTS,
-    EAudFormatWAV,
-    EAudFormatLast  // should always be the last one
-    };
-
-
-/**
- * Enumeration for audio types (that is, codecs).
- */
-enum TAudType
-    {
-    EAudTypeUnrecognized = 101001,  // should always be the first one
-    EAudNoAudio,
-    EAudAMR,
-    EAudAMRWB,
-    EAudMP3,
-    EAudAAC_MPEG2, // EAudAAC_MPEG2 not used, all EAudAAC_MPEG is now 4
-    EAudAAC_MPEG4,
-    EAudWAV,
-    EAudTypeLast  // should always be the last one
-    };
-    
-/*
-   Purpose:     MPEG-4 Audio object types.
-   Explanation: - */
-enum TAudAACObjectType
-{
-  EAudAACObjectTypeNone = -1,
-  EAudAACObjectTypeMain,
-  EAudAACObjectTypeLC,
-  EAudAACObjectTypeSSR,
-  EAudAACObjectTypeLTP,
-  EAudAACObjectTypeLast
-};
-  
-/**
- * Enumeration for audio extension types (AAC+)
- */
-enum TAudExtensionType
-    {
-    EAudExtensionTypeNoExtension = 20000,
-    EAudExtensionTypeEnhancedAACPlus,
-    EAudExtensionTypeEnhancedAACPlusParametricStereo
-    
-    };    
-
-/**
- * Constants for audio clip priorities.
- */
-const TInt KAudClipPriorityHighest = 400;
-const TInt KAudClipPriorityHigh = 300;
-const TInt KAudClipPriorityNormal = 200;
-const TInt KAudClipPriorityLow = 100;
-const TInt KAudClipPriorityLowest = 0;
-
-
-  
-
-
-/**
- * Enumeration for channel modes
- */
-enum TChannelMode 
-    {
-    EAudChannelModeNotRecognized = 103001,   
-    EAudStereo,
-    EAudDualChannel,
-    EAudSingleChannel,
-    EAudParametricStereoChannel
-    };
-
-/**
- * Enumeration for bitrate modes
- */
-enum TBitrateMode 
-    {
-    EAudBitrateModeNotRecognized = 103001,
-    EAudConstant,
-    EAudVariable
-    };
-    
-/**
- * Class for storing dynamic level marks.
- */
-class TAudDynamicLevelMark 
-    {
-
-public:
-
-    /** Mark time. */
-    TTimeIntervalMicroSeconds iTime;
-
-    /** Dynamic level (-63.5 ... +63.5) in dB:s
-    * one step represents 0.5 dB, hence values can be -127 ... +127
-    */
-    TInt8 iLevel;
-
-    TAudDynamicLevelMark(TTimeIntervalMicroSeconds aTime, TInt aLevel) 
-        {
-        iTime = aTime;
-        if ( aLevel < -127 )
-            {
-            iLevel = -127;
-            }
-        else if (aLevel > 127 )
-            {
-            iLevel = 127;
-            }
-        else
-            {
-            iLevel = TInt8(aLevel);
-            }
-        }
-
-    TAudDynamicLevelMark(const TAudDynamicLevelMark& aMark) 
-        {
-        iTime = aMark.iTime;
-        iLevel = aMark.iLevel;
-        }
-    };    
-
-/**
- * Class for storing general properties about an audio file.
- */
-class TAudFileProperties 
-    {
-
-public:
-
-    // File format
-    TAudFormat iFileFormat;
-    // Codec
-    TAudType iAudioType;
-    // Extension type
-    TAudExtensionType iAudioTypeExtension;
-    // Duration of the clip in microseconds
-    TTimeIntervalMicroSeconds iDuration;
-    // Sampling rate in Hertzes
-    TInt iSamplingRate;
-    // Bitrate in bits/s
-    TInt iBitrate;
-    // Channel mode
-    TChannelMode iChannelMode;
-    // Channel mode for extension
-    TChannelMode iChannelModeExtension;
-    // Bitrate mode (constant or variable)
-    TBitrateMode iBitrateMode;
-    // Number of bytes in a compressed frame
-    TInt32 iFrameLen;
-    // Is iFrameLen constant?
-    TBool iConstantFrameLength;
-    // Duration of decoded frame in microseconds
-    TTimeIntervalMicroSeconds iFrameDuration;
-    // Number of frames in the clip
-    TInt32 iFrameCount;
-//    TCodecMode iCodecMode;
-    // Number of frames in a sample (e.g. amr in mp4 has several)
-    TInt iNumFramesPerSample;
-    // Bitdepth in PCM data (usually 8, 16 or 24, only for PCM-data)
-    TInt iNumberOfBitsPerSample; 
-    // Original field in MP3 fixed header
-    TBool iOriginal;
-    
-    // AAC object type
-    TAudAACObjectType iAACObjectType;
-
-    TBool isCompatible(const TAudFileProperties /*&c2*/) const 
-        {
-        
-        // Now that the clips can be decoded and encoded
-        // all the clips are "compatible" with each other        
-        
-        return ETrue;
-
-
-        }
-
-    };    
-
-
-
-#endif // __AUDCOMMON_H__
-