videoeditorengine/vedengine/inc/vedvideoconversionimp.h
changeset 0 951a5db380a0
equal deleted inserted replaced
-1:000000000000 0:951a5db380a0
       
     1 /*
       
     2 * Copyright (c) 2010 Ixonos Plc.
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of the "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - Initial contribution
       
    11 *
       
    12 * Contributors:
       
    13 * Ixonos Plc
       
    14 *
       
    15 * Description:  
       
    16 *
       
    17 */
       
    18 
       
    19 
       
    20 #ifndef __VEDVIDEOCONVERSIONIMP_H__
       
    21 #define __VEDVIDEOCONVERSIONIMP_H__
       
    22 
       
    23 #include <vedmovie.h>
       
    24 #include "vedvideoconversion.h"
       
    25 
       
    26 class CVideoConverterImp : public CVideoConverter, public MVedMovieObserver,
       
    27                            public MVedMovieProcessingObserver
       
    28 {
       
    29 
       
    30     public:  // Functions from CVideoConverter 
       
    31     
       
    32         static CVideoConverterImp* NewL(MVideoConverterObserver& aObserver);
       
    33         
       
    34         static CVideoConverterImp* NewLC(MVideoConverterObserver& aObserver);
       
    35         
       
    36         ~CVideoConverterImp();
       
    37         
       
    38         void InsertFileL(RFile* aFile);
       
    39 
       
    40         TMMSCompatibility CheckMMSCompatibilityL(TInt aMaxSize);
       
    41                 
       
    42         void GetDurationEstimateL(TInt aTargetSize, TTimeIntervalMicroSeconds aStartTime, 
       
    43                                   TTimeIntervalMicroSeconds& aEndTime);
       
    44         
       
    45         void ConvertL(RFile* aOutputFile, TInt aSizeLimit, 
       
    46                       TTimeIntervalMicroSeconds aCutInTime, 
       
    47                       TTimeIntervalMicroSeconds aCutOutTime);
       
    48                     
       
    49         TInt CancelConversion();
       
    50         
       
    51         TInt Reset();
       
    52         
       
    53     public:  // Functions from MVedMovieObserver
       
    54     
       
    55         //from observer
       
    56     	void NotifyVideoClipAdded(CVedMovie& aMovie, TInt aIndex);
       
    57     	void NotifyVideoClipAddingFailed(CVedMovie& aMovie, TInt aError);    	
       
    58     	void NotifyVideoClipRemoved(CVedMovie& aMovie, TInt aIndex);
       
    59     	void NotifyVideoClipIndicesChanged(CVedMovie& aMovie, TInt aOldIndex, TInt aNewIndex);
       
    60     	void NotifyVideoClipTimingsChanged(CVedMovie& aMovie, TInt aIndex);
       
    61     	void NotifyVideoClipSettingsChanged(CVedMovie& aMovie, TInt aIndex);    	
       
    62     	void NotifyStartTransitionEffectChanged(CVedMovie& aMovie);
       
    63     	void NotifyMiddleTransitionEffectChanged(CVedMovie& aMovie, TInt aIndex);
       
    64     	void NotifyEndTransitionEffectChanged(CVedMovie& aMovie);
       
    65     	void NotifyAudioClipAdded(CVedMovie& aMovie, TInt aIndex);
       
    66     	void NotifyAudioClipAddingFailed(CVedMovie& aMovie, TInt aError);
       
    67     	void NotifyAudioClipRemoved(CVedMovie& aMovie, TInt aIndex);
       
    68     	void NotifyAudioClipIndicesChanged(CVedMovie& aMovie, TInt aOldIndex, TInt aNewIndex);
       
    69     	void NotifyAudioClipTimingsChanged(CVedMovie& aMovie, TInt aIndex);
       
    70         void NotifyMovieReseted(CVedMovie& aMovie);
       
    71         void NotifyVideoClipGeneratorSettingsChanged(CVedMovie& /*aMovie*/, TInt /*aIndex*/);
       
    72         void NotifyMovieOutputParametersChanged(CVedMovie& aMovie);
       
    73         void NotifyVideoClipColorEffectChanged(CVedMovie& /*aMovie*/, TInt /*aIndex*/);
       
    74         void NotifyVideoClipAudioSettingsChanged(CVedMovie& /*aMovie*/, TInt /*aIndex*/);                
       
    75         void NotifyMovieProcessingStartedL(CVedMovie& /*aMovie*/);
       
    76         void NotifyMovieProcessingProgressed(CVedMovie& aMovie, TInt aPercentage);
       
    77     	void NotifyMovieProcessingCompleted(CVedMovie& aMovie, TInt aError);    	
       
    78         void NotifyVideoClipDescriptiveNameChanged(CVedMovie& aMovie, TInt aIndex);
       
    79     	void NotifyMovieQualityChanged(CVedMovie& aMovie);        
       
    80         void NotifyAudioClipDynamicLevelMarkInserted(CVedMovie& aMovie, TInt aClipIndex, TInt aMarkIndex);
       
    81         void NotifyAudioClipDynamicLevelMarkRemoved(CVedMovie& aMovie,TInt aClipIndex,TInt aMarkIndex);
       
    82         void NotifyVideoClipDynamicLevelMarkInserted(CVedMovie& aMovie, TInt aClipIndex, TInt aMarkIndex);
       
    83         void NotifyVideoClipDynamicLevelMarkRemoved(CVedMovie& aMovie,TInt aClipIndex,TInt aMarkIndex);        
       
    84     
       
    85     private:
       
    86     
       
    87         /*
       
    88         * C++ default constructor.
       
    89         */
       
    90         CVideoConverterImp(MVideoConverterObserver& aObserver);
       
    91         
       
    92         /**
       
    93         * 2nd phase constructor 
       
    94         */
       
    95         void ConstructL();	    
       
    96         
       
    97     private:
       
    98     
       
    99         // Observer
       
   100         MVideoConverterObserver& iObserver;
       
   101     
       
   102         // Movie
       
   103         CVedMovie* iMovie;
       
   104         
       
   105         friend class CVideoConverter;
       
   106 };
       
   107 
       
   108 #endif
       
   109 
       
   110 // End of file