--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/videoplayback/videohelix/tsrc/ut_videohelixtest/src/mediarecognizer_stub.cpp Mon Jan 18 20:21:12 2010 +0200
@@ -0,0 +1,324 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "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:
+*
+* Description: Implementation of CMediaRecognizer Stub
+*
+*/
+
+// Version : %version: 5 %
+
+
+// INCLUDE FILES
+#include <utf.h>
+#include <mediarecognizer.h>
+
+#include "mpxvideo_debug.h"
+
+// CONSTANTS
+
+
+#ifdef __WINDOWS_MEDIA
+_LIT(KRtspTcpPrefix,"rtspt://");
+_LIT(KRtspUdpPrefix,"rtspu://");
+_LIT(KHttpPrefix,"http://");
+_LIT(KHttpTcpPrefix,"httpt://");
+_LIT(KMmsPrefix,"mms://");
+_LIT(KMmstPrefix,"mmst://");
+#endif // __WINDOWS_MEDIA
+
+_LIT(KRtspPrefix,"rtsp://");
+_LIT(KFilePrefix,"file://");
+
+const TInt KMinPrefixLength = 6;
+
+
+// ============================ MEMBER FUNCTIONS ===================================================
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::CMediaRecognizer
+// C++ default constructor can NOT contain any code, that might leave.
+// -------------------------------------------------------------------------------------------------
+//
+CMediaRecognizer::CMediaRecognizer()
+{
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -------------------------------------------------------------------------------------------------
+//
+void CMediaRecognizer::ConstructL()
+{
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::NewL
+// Two-phased constructor.
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C CMediaRecognizer* CMediaRecognizer::NewL()
+{
+ MPX_DEBUG(_L("CMediaRecognizer::NewL()"));
+
+ CMediaRecognizer* self = new( ELeave ) CMediaRecognizer;
+ CleanupStack::PushL( self );
+ self->ConstructL();
+ CleanupStack::Pop();
+ return self;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::~CMediaRecognizer
+// Destructor
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C CMediaRecognizer::~CMediaRecognizer()
+{
+ MPX_DEBUG(_L("CMediaRecognizer::~CMediaRecognizer()"));
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IdentifyMediaTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C CMediaRecognizer::TMediaType
+CMediaRecognizer::IdentifyMediaTypeL( const TDesC& /*aMediaName*/, TBool /*aIncludeUrls*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::IdentifyMediaTypeL()"));
+
+ TMediaType ret = EUrl;
+
+ return ret;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IdentifyMediaTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C CMediaRecognizer::TMediaType
+CMediaRecognizer::IdentifyMediaTypeL( const TDesC& aMediaName, RFile& aFile, TBool /*aIncludeUrls*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::IdentifyMediaTypeL()"));
+
+ TMediaType ret = EUnidentified;
+
+ if ( aFile.SubSessionHandle() )
+ {
+ ret = MediaTypeL( aMediaName );
+ }
+ else
+ {
+ ret = EUrl;
+ }
+
+ return ret;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::MediaTypeL
+// -------------------------------------------------------------------------------------------------
+//
+CMediaRecognizer::TMediaType CMediaRecognizer::MediaTypeL( const TDesC& aMediaName )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::IdentifyMediaTypeL()"));
+
+ TMediaType ret = EUnidentified;
+
+ _LIT(KSdpExt,".sdp");
+ _LIT(K3gpExt,".3gp");
+
+ if ( aMediaName.Right(KSdpExt.iTypeLength).CompareF(KSdpExt) == 0 )
+ {
+ ret = ELocalSdpFile;
+ }
+ else if ( aMediaName.Right(K3gpExt.iTypeLength).CompareF(K3gpExt) == 0 )
+ {
+ ret = ELocalVideoFile;
+ }
+
+ return ret;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::MimeTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBuf<KMaxDataTypeLength> CMediaRecognizer::MimeTypeL( const TDesC& /*aLocalFile*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::MimeTypeL()"));
+
+ TPtrC mimeType( KNullDesC );
+
+ return mimeType;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::FreeFilehandle
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C void CMediaRecognizer::FreeFilehandle()
+{
+ MPX_DEBUG(_L("CMediaRecognizer::FreeFilehandle()"));
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::MimeTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBuf<KMaxDataTypeLength> CMediaRecognizer::MimeTypeL( RFile& /*aFile*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::MimeTypeL()"));
+
+ TPtrC mimeType( KNullDesC );
+
+ return mimeType;
+}
+
+//--------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IsValidStreamingPrefix
+// Check for a valid streaming prefix given a URL
+//--------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBool CMediaRecognizer::IsValidStreamingPrefix( const TDesC& aUrl )
+{
+ TBool retVal = EFalse;
+
+ if ( aUrl.Length() >= KMinPrefixLength )
+ {
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidStreamingPrefix(%S)"), &aUrl);
+
+#ifdef __WINDOWS_MEDIA
+ if ( ( ! aUrl.Left(KRtspPrefix().Length()).CompareF(KRtspPrefix) ) ||
+ ( ! aUrl.Left(KHttpPrefix().Length()).CompareF(KHttpPrefix) ) ||
+ ( ! aUrl.Left(KMmsPrefix().Length()).CompareF(KMmsPrefix) ) ||
+ ( ! aUrl.Left(KMmstPrefix().Length()).CompareF(KMmstPrefix) ) ||
+ ( ! aUrl.Left(KHttpTcpPrefix().Length()).CompareF(KHttpTcpPrefix) ) ||
+ ( ! aUrl.Left(KRtspTcpPrefix().Length()).CompareF(KRtspTcpPrefix) ) ||
+ ( ! aUrl.Left(KRtspUdpPrefix().Length()).CompareF(KRtspUdpPrefix) ) )
+#else
+ if ( ! aUrl.Left( KRtspPrefix().Length() ).CompareF( KRtspPrefix ) )
+#endif
+ {
+ retVal = ETrue;
+ }
+ }
+
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidStreamingPrefix() ret %d"), retVal);
+
+ return retVal;
+}
+
+//--------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IsValidUrlPrefix
+// Check for a valid prefix given a URL
+//--------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBool CMediaRecognizer::IsValidUrlPrefix( const TDesC& aUrl )
+{
+ TBool retVal = EFalse;
+
+ if ( aUrl.Length() >= KMinPrefixLength )
+ {
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidUrlPrefix(%S)"), &aUrl);
+
+ if ( ( ! aUrl.Left(KFilePrefix().Length()).CompareF(KFilePrefix) ) ||
+#ifdef __WINDOWS_MEDIA
+ ( ! aUrl.Left(KHttpPrefix().Length()).CompareF(KHttpPrefix) ) ||
+ ( ! aUrl.Left(KMmsPrefix().Length()).CompareF(KMmsPrefix) ) ||
+ ( ! aUrl.Left(KMmstPrefix().Length()).CompareF(KMmstPrefix) ) ||
+ ( ! aUrl.Left(KHttpTcpPrefix().Length()).CompareF(KHttpTcpPrefix) ) ||
+ ( ! aUrl.Left(KRtspTcpPrefix().Length()).CompareF(KRtspTcpPrefix) ) ||
+ ( ! aUrl.Left(KRtspUdpPrefix().Length()).CompareF(KRtspUdpPrefix) ) ||
+#endif
+ ( ! aUrl.Left(KRtspPrefix().Length()).CompareF(KRtspPrefix) ) )
+ {
+ retVal = ETrue;
+ }
+ }
+
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidUrlPrefix() ret %d"), retVal);
+
+ return retVal;
+}
+
+//--------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IsValidUrlPrefix
+// Check for a valid prefix given a URL
+//--------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBool CMediaRecognizer::IsValidUrlPrefix( const TDesC8& aUrl )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidUrlPrefix(TDesC8)"));
+
+ TBool retVal = EFalse;
+
+ if ( aUrl.Length() >= KMinPrefixLength )
+ {
+ HBufC16* buf16 = NULL;
+
+ TRAPD( err, buf16 = CnvUtfConverter::ConvertToUnicodeFromUtf8L(aUrl); );
+
+ if ( ! err )
+ {
+ retVal = IsValidUrlPrefix( buf16->Des() );
+ delete buf16;
+ }
+ }
+
+ MPX_DEBUG(_L("CMediaRecognizer::IsValidUrlPrefix(TDesC8) ret %d"), retVal);
+
+ return retVal;
+}
+
+#ifdef SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::IdentifyMediaTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C CMediaRecognizer::TMediaType
+CMediaRecognizer::IdentifyMediaTypeL( const TDesC& aMediaName, RFile64& aFile, TBool /*aIncludeUrls*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::IdentifyMediaTypeL( RFile64 )"));
+
+ TMediaType ret = EUnidentified;
+
+ if ( aFile.SubSessionHandle() )
+ {
+ ret = MediaTypeL( aMediaName );
+ }
+ else
+ {
+ ret = EUrl;
+ }
+
+ return ret;
+}
+
+// -------------------------------------------------------------------------------------------------
+// CMediaRecognizer::MimeTypeL
+// -------------------------------------------------------------------------------------------------
+//
+EXPORT_C TBuf<KMaxDataTypeLength> CMediaRecognizer::MimeTypeL( RFile64& /*aFile*/ )
+{
+ MPX_DEBUG(_L("CMediaRecognizer::MimeTypeL( RFile64 )"));
+
+ TPtrC mimeType( KNullDesC );
+
+ return mimeType;
+}
+
+#endif // SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
+
+// End of File