videoeditorengine/vedtranscoder/inc/ctrscaler.h
branchRCL_3
changeset 3 e0b5df5c0969
parent 0 951a5db380a0
child 5 4c409de21d23
--- a/videoeditorengine/vedtranscoder/inc/ctrscaler.h	Fri Jan 29 14:08:33 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,126 +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:  
-* Resampling framework for YUV 4.2.0.
-*
-*/
-
-
-
-#ifndef CTRSCALER_H
-#define CTRSCALER_H
-
-
-// INCLUDES
-#include <e32base.h>
-#include "ctrcommon.h"
-
-
-// Scaler operations
-enum EResamplingOpereation
-    {
-    EOperationNone,
-    EDoubleSize,          // Resize to 200%
-    EUpSampling,          // Resize to 101% or more
-    EOperationCopy,       // No resize (100%)
-    EOperationCopyWithBB, // No resize, add black borders
-    EDownSampling,        // Resize to 99% or less
-    EHalveSize,           // Resize to 50%
-    EUpDownSampling       // Resize with strech    
-    };
-
-// Scaler class, supports resampling operations with YUV 4.2.0 format;
-NONSHARABLE_CLASS(CTRScaler) : public CBase
-    {
-    public:
-        static CTRScaler* NewL();
-
-        // Destructor
-        ~CTRScaler();
-
-    public:
-        void Scale();
-
-        // Sets operations
-        void SetScalerOptionsL( TPtr8& aSrc, TPtr8& aTrg, TSize& aSrcSize, TSize& aTrgSize );
-        
-        // Checks if aspect ratio is wide
-        TBool IsWideAspectRatio(TSize aSize);        
-        
-        // Calculates intermediate resolution for use with black boxing
-        TBool GetIntermediateResolution(TSize aSrcSize, TSize aTrgSize, TSize& aTargetResolution, TSize& aBlackBoxing);
-        
-        // Returns a time estimate of how long it takes to resample a frame
-        TReal EstimateResampleFrameTime(const TTRVideoFormat& aInput, const TTRVideoFormat& aOutput);
-
-    private:
-        CTRScaler();
-
-        // Second phase constructor
-        void ConstructL();
-
-        // Resampling operations
-        void ResampleBilinear(TSize& aSrcSize, TSize& aTrgSize, TSize& aBlackBoxing);
-        void ResampleHalve(TSize& aSrcSize, TSize& aTrgSize, TSize& aBlackBoxing);
-        void ResampleDouble(TSize& aSrcSize, TSize& aTrgSize);
-        
-        // Called when resizing to less than 50% of the original size
-        void DoHalveAndBilinearResampleL();
-        
-        // No resampling, copy frame and add black borders.
-        void CopyWithBlackBoxing(TSize& aSrcSize, TSize& aTrgSize, TSize& aBlackBoxing);
-
-    private:
-        // Source buffer
-        TUint8* iSrc;
-
-        // Destination buffer
-        TUint8* iTrg;
-
-        // Source resolution
-        TSize iSrcSize; 
-
-        // Target resolution
-        TSize iTrgSize;
-        
-        // Resampling operation
-        TInt iOperation;
-
-        // Trg data size
-        TUint iTrgDataSize;
-        
-        // Initial src ptr
-        TUint8* iSrcInit;
-
-        // Initial trg ptr
-        TUint8* iTrgInit;
-
-        // Scale X
-        TInt iScaleXInt;
-
-        // Scale Y
-        TInt iScaleYInt;
-        
-        TPtr8* iTrgBuffer;
-        
-        // For storing width/height of black border area
-        TSize iBlackBoxing;
-        
-    };
-
-
-
-
-#endif