--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/videoeditorengine/vedengine/videoprocessor/src/movieprocessor.cpp Fri Jan 29 14:08:33 2010 +0200
@@ -0,0 +1,221 @@
+/*
+* 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:
+* Implementation of the movie processor
+* interface class.
+*
+*/
+
+
+// EXTERNAL RESOURCES
+
+// Include Files
+
+#include "movieprocessorimpl.h"
+#include "VedMovie.h"
+#include "movieprocessor.h"
+#include "VideoProcessorAudioData.h"
+
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+CMovieProcessor* CMovieProcessor::NewL()
+
+ {
+ CMovieProcessor* self = NewLC();
+ CleanupStack::Pop(self);
+ return self;
+ }
+
+CMovieProcessor* CMovieProcessor::NewLC()
+ {
+ CMovieProcessor* self = new (ELeave) CMovieProcessor();
+ CleanupStack::PushL(self);
+ self->ConstructL();
+ return self;
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::CMovieProcessor()
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+CMovieProcessor::CMovieProcessor()
+ {
+ iMovieProcessor=0;
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::ConstructL()
+ {
+ iMovieProcessor = CMovieProcessorImpl::NewL();
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::~CMovieProcessor
+// Destructor.
+// -----------------------------------------------------------------------------
+//
+CMovieProcessor::~CMovieProcessor()
+{
+ iAudioDataArray.ResetAndDestroy();
+ if(iMovieProcessor)
+ {
+ delete iMovieProcessor;
+ iMovieProcessor=0;
+ }
+}
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::StartMovieL
+// Prepares the processor for processing a movie and starts processing
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::StartMovieL(CVedMovieImp* aMovie, const TDesC& aFileName,
+ RFile* aFileHandle,MVedMovieProcessingObserver* aObserver)
+ {
+ iMovieProcessor->StartMovieL(aMovie, aFileName, aFileHandle, aObserver);
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::GetVideoClipPropertiesL
+// Retrieves information about the given clip
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::GetVideoClipPropertiesL(const TDesC& aFileName,
+ RFile* aFileHandle,
+ TVedVideoFormat& aFormat,
+ TVedVideoType& aVideoType,
+ TSize& aResolution,
+ TVedAudioType& aAudioType,
+ TTimeIntervalMicroSeconds& aDuration,
+ TInt& aVideoFrameCount,
+ TInt& aSamplingRate,
+ TVedAudioChannelMode& aChannelMode)
+ {
+
+ iMovieProcessor->GetClipPropertiesL(aFileName, aFileHandle, aFormat, aVideoType,
+ aResolution, aAudioType, aDuration, aVideoFrameCount, aSamplingRate, aChannelMode);
+
+ return;
+
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::GenerateVideoFrameInfoArrayL
+// Retrieves frames parameters for a clip to array
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::GenerateVideoFrameInfoArrayL(const TDesC& aFileName, RFile* aFileHandle, TVedVideoFrameInfo*& aVideoFrameInfoArray)
+ {
+ iMovieProcessor->GenerateVideoFrameInfoArrayL((const TDesC&)aFileName, aFileHandle,(TVedVideoFrameInfo*&)aVideoFrameInfoArray);
+ return;
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::GetMovieSizeEstimateL
+// Calculates file size estimate for the output file
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+TInt CMovieProcessor::GetMovieSizeEstimateL(const CVedMovie* aMovie)
+ {
+ return iMovieProcessor->GetMovieSizeEstimateL(aMovie);
+ }
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::GetMovieSizeEstimateForMMSL
+// Calculates file size estimate for the output file
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+TInt CMovieProcessor::GetMovieSizeEstimateForMMSL(const CVedMovie* aMovie, TInt aTargetSize,
+ TTimeIntervalMicroSeconds aStartTime,
+ TTimeIntervalMicroSeconds& aEndTime)
+ {
+ return iMovieProcessor->GetMovieSizeEstimateForMMSL(aMovie, aTargetSize, aStartTime, aEndTime);
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::StartThumbL
+// Initiates thumbnail generation
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::StartThumbL(const TDesC& aFileName, RFile* aFileHandle, TInt aIndex,
+ TSize aResolution, TDisplayMode aDisplayMode, TBool aEnhance)
+ {
+ iMovieProcessor->StartThumbL(aFileName, aFileHandle, aIndex, aResolution, aDisplayMode, aEnhance);
+ }
+
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::ProcessThumbL
+// Starts thumbnail image generation
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::ProcessThumbL(TRequestStatus &aStatus, TVedTranscodeFactor* aFactor)
+{
+ iMovieProcessor->ProcessThumbL(aStatus, aFactor);
+}
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::FetchThumb
+// Gets a pointer to completed thumbnail bitmap
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::FetchThumb(CFbsBitmap*& aThumb)
+{
+ iMovieProcessor->FetchThumb(aThumb);
+}
+
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::CancelProcessingL
+// Stops processing the movie
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::CancelProcessingL()
+{
+ iMovieProcessor->CancelProcessingL();
+}
+
+// -----------------------------------------------------------------------------
+// CMovieProcessor::SetMovieSizeLimit
+// Sets the maximum size for the movie
+// (other items were commented in a header).
+// -----------------------------------------------------------------------------
+//
+void CMovieProcessor::SetMovieSizeLimit(TInt aLimit)
+ {
+ iMovieProcessor->SetMovieSizeLimit(aLimit);
+ }
+