--- a/omxilcomp/omxilaudioemulator/pcmrenderer/group/bld.inf Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/group/bld.inf Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -20,11 +20,6 @@
// Components
../mmpfiles/omxilpcmrenderer.mmp
-PRJ_EXPORTS
-// Romkit include files
-../inc/omxilsymbianaudiopcmextensions.h SYMBIAN_OS_LAYER_PLATFORM_EXPORT_PATH(openmax/il/extensions/omxilsymbianaudiopcmextensions.h)
-
-
// We do not include the pcmrenderer tests here because they depend on the testframework which does not exist in NCP builds.
// They are built via the omxilunittest bld.inf (which NCP does not include)
-//#include "..\unittest\group\bld.inf"
\ No newline at end of file
+//#include "../unittest/group/bld.inf"
\ No newline at end of file
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/inc/omxilsymbianaudiopcmextensions.h Thu Sep 02 20:13:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,91 +0,0 @@
-/*
-* Copyright (c) 2008-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:
-*
-*/
-
-
-/**
- @file
- @publishedPartner@prototype
-*/
-
-#ifndef OMXILSYMBIANAUDIOPCMEXTENSIONS_H
-#define OMXILSYMBIANAUDIOPCMEXTENSIONS_H
-
-
-#include <openmax/il/khronos/v1_x/OMX_Types.h>
-
-
-/**
- * The string that the Symbian's OpenMAX IL PCM Renderer component will
- * translate into a 32-bit OpenMAX IL index (@see
- * OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP) to support the
- * Volume Ramp feature of the MPlayCustomInterface CI
- */
-const char sOmxSymbianPcmVolumeRamp [] =
- "OMX.Symbian.index.config.audio.pcm.volumeramp";
-
-
-/**
- * Custom index used by Symbian's OpenMAX IL PCM renderer to select the
- * structure for setting/getting a Volume Ramp configuration data item
- */
-#define OMX_SymbianIndexConfigAudioPcmVolumeRamp 0x7F000002
-
-
-/**
- * Custom OpenMAX IL structure to be used as a container for an
- * Volume Ramp configuration data item
- */
-struct OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP
- {
- OMX_U32 nSize; /**< Size of this structure, in Bytes */
- OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
- OMX_U32 nPortIndex; /**< Port that this structure applies to */
- OMX_U64 nRampDuration; /**< the period, in microseconds, over which the volume level is
- to rise smoothly from nothing to the
- required volume level */
- };
-
-/**
- * The string that the Symbian's OpenMAX IL PCM Renderer component will
- * translate into a 32-bit OpenMAX IL index (@see
- * OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED) to support the
- * Bytes Played feature of the MPlayCustomInterface CI
- */
-const char sOmxSymbianPcmBytesPlayed [] =
- "OMX.Symbian.index.config.audio.pcm.bytesplayed";
-
-
-/**
- * Custom index used by Symbian's OpenMAX IL PCM renderer to select the
- * structure for getting a Bytes Played configuration data item
- */
-#define OMX_SymbianIndexConfigAudioBytesPlayed 0x7F000003
-
-
-/**
- * Custom OpenMAX IL structure to be used as a container for an
- * Bytes Played configuration data item
- */
-struct OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED
- {
- OMX_U32 nSize; /**< Size of this structure, in Bytes */
- OMX_VERSIONTYPE nVersion; /**< OMX specification version information */
- OMX_U32 nBytesPlayed; /**< the number of bytes played */
- };
-
-
-#endif // OMXILSYMBIANAUDIOPCMEXTENSIONS_H
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/mmpfiles/omxilpcmrenderer.mmp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/mmpfiles/omxilpcmrenderer.mmp Fri Sep 17 08:27:08 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2008-2010 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"
@@ -33,7 +33,6 @@
SOURCE omxilpcmrenderer.cpp
SOURCE omxilpcmrendererapb0port.cpp
SOURCE omxilpcmrendererprocessingfunction.cpp
-SOURCE omxilpcmrendererconfigmanager.cpp
SOURCE mdasoundadapter.cpp
SOURCE mdasoundadapterbody.cpp
@@ -49,6 +48,7 @@
LIBRARY omxilcomponentcommon.lib
STATICLIBRARY omxilcomponentif.lib
+
// Uncomment to activate debug tracing in this module
// MACRO _OMXIL_PCMRENDERER_DEBUG_TRACING_ON
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrenderer.cpp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrenderer.cpp Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -21,13 +21,12 @@
@internalComponent
*/
#include <openmax/il/common/omxilspecversion.h>
+#include <openmax/il/common/omxilconfigmanager.h>
#include <openmax/il/common/omxilclientclockport.h>
#include <openmax/il/loader/omxilsymbiancomponentif.h>
#include "log.h"
#include "omxilpcmrenderer.h"
#include "omxilpcmrendererapb0port.h"
-#include "omxilpcmrendererprocessingfunction.h"
-#include "omxilpcmrendererconfigmanager.h"
#include "omxilpcmrenderer.hrh"
@@ -107,9 +106,10 @@
);
// ...create PCM renderer component ports (no OPB0 port)
- COmxILPcmRendererAPB0Port* pb0Port = ConstructAPB0PortL();
+ COmxILPcmRendererProcessingFunction* ptr = static_cast<COmxILPcmRendererProcessingFunction*>(pProcessingFunction);
+ COmxILPcmRendererAPB0Port* pb0Port = ConstructAPB0PortL(*ptr);
CleanupStack::PushL(pb0Port);
-
+
// .. and add them to the port manager...
User::LeaveIfError(AddPort(pb0Port, OMX_DirInput));
CleanupStack::Pop(); //pb0Port
@@ -123,8 +123,7 @@
CleanupClosePushL(componentRoles);
User::LeaveIfError(componentRoles.Append(&KSymbianOmxILPcmRendererRole()));
- COmxILConfigManager* pConfigManager = COmxILPcmRendererConfigManager::NewL(
- *static_cast<COmxILPcmRendererProcessingFunction*>(pProcessingFunction),
+ COmxILConfigManager* pConfigManager = COmxILConfigManager::NewL(
KSymbianOmxILPcmRendererName,
TOmxILVersion(iComponentVersionMajor,
iComponentVersionMinor,
@@ -154,7 +153,7 @@
}
-COmxILPcmRendererAPB0Port* COmxILPcmRenderer::ConstructAPB0PortL() const
+COmxILPcmRendererAPB0Port* COmxILPcmRenderer::ConstructAPB0PortL(COmxILPcmRendererProcessingFunction& aProcessingFunction) const
{
DEBUG_PRINTF(_L8("COmxILPcmRenderer::ConstructAPB0PortL"));
@@ -207,7 +206,8 @@
supportedAudioFormats,
paramPcmModeType,
configAudioVolume,
- configAudioMute);
+ configAudioMute,
+ aProcessingFunction);
CleanupStack::PopAndDestroy(&supportedAudioFormats);
return apb0Port;
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrenderer.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrenderer.h Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -25,6 +25,7 @@
#define OMXILPCMRENDERER_H
#include <openmax/il/common/omxilcomponent.h>
+#include "omxilpcmrendererprocessingfunction.h"
// Forward declarations
class COmxILPcmRendererAPB0Port;
@@ -52,7 +53,7 @@
void ConstructL(OMX_HANDLETYPE aComponent);
- COmxILPcmRendererAPB0Port* ConstructAPB0PortL() const;
+ COmxILPcmRendererAPB0Port* ConstructAPB0PortL(COmxILPcmRendererProcessingFunction& aProcessingFunction) const;
COmxILClientClockPort* ConstructClientClockPortL() const;
private:
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererapb0port.cpp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererapb0port.cpp Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -23,25 +23,28 @@
#include <openmax/il/khronos/v1_x/OMX_Component.h>
#include <openmax/il/common/omxilutil.h>
+#include <openmax/il/shai/OMX_Symbian_ExtensionNames.h>
#include "log.h"
#include "omxilpcmrendererapb0port.h"
#include "omxilpcmrendererconst.h"
+#include "omxilpcmrendererprocessingfunction.h"
-COmxILPcmRendererAPB0Port*
-COmxILPcmRendererAPB0Port::NewL(
+COmxILPcmRendererAPB0Port* COmxILPcmRendererAPB0Port::NewL(
const TOmxILCommonPortData& aCommonPortData,
const RArray<OMX_AUDIO_CODINGTYPE>& aSupportedAudioFormats,
const OMX_AUDIO_PARAM_PCMMODETYPE& aParamAudioPcm,
const OMX_AUDIO_CONFIG_VOLUMETYPE& aConfigAudioVolume,
- const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute)
+ const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute,
+ COmxILPcmRendererProcessingFunction& aProcessingFunction)
{
DEBUG_PRINTF(_L8("COmxILPcmRendererAPB0Port::NewL"));
COmxILPcmRendererAPB0Port* self = new (ELeave)COmxILPcmRendererAPB0Port(
aParamAudioPcm,
aConfigAudioVolume,
- aConfigAudioMute);
+ aConfigAudioMute,
+ aProcessingFunction);
CleanupStack::PushL(self);
self->ConstructL(aCommonPortData, aSupportedAudioFormats);
@@ -69,22 +72,40 @@
paramPortDefinition.format.audio.bFlagErrorConcealment = OMX_FALSE;
paramPortDefinition.format.audio.eEncoding = OMX_AUDIO_CodingPCM;
- // Init iParamVolumeRamp here...
- iConfigVolumeRamp.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP);
+ // Init iConfigVolumeRamp here...
+ iConfigVolumeRamp.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE);
iConfigVolumeRamp.nVersion = TOmxILSpecVersion();
iConfigVolumeRamp.nPortIndex = paramPortDefinition.nPortIndex;
- iConfigVolumeRamp.nRampDuration = 0;
+ iConfigVolumeRamp.nChannel = 0;
+ iConfigVolumeRamp.bLinear = OMX_FALSE;
+ iConfigVolumeRamp.sStartVolume.nValue = 0;
+ iConfigVolumeRamp.sStartVolume.nMin = 0;
+ iConfigVolumeRamp.sStartVolume.nMax = 0;
+ iConfigVolumeRamp.sEndVolume.nValue = 0;
+ iConfigVolumeRamp.sEndVolume.nMin = 0;
+ iConfigVolumeRamp.sEndVolume.nMax = 0;
+ iConfigVolumeRamp.nRampDuration = 0;
+ iConfigVolumeRamp.bRampTerminate = OMX_FALSE;
+ iConfigVolumeRamp.sCurrentVolume.nValue = 0;
+ iConfigVolumeRamp.sCurrentVolume.nMin = 0;
+ iConfigVolumeRamp.sCurrentVolume.nMax = 0;
+ iConfigVolumeRamp.nRampCurrentTime = 0;
+ iConfigVolumeRamp.nRampMinDuration = 0;
+ iConfigVolumeRamp.nRampMaxDuration = 0;
+ iConfigVolumeRamp.nVolumeStep = 0;
}
COmxILPcmRendererAPB0Port::COmxILPcmRendererAPB0Port(
const OMX_AUDIO_PARAM_PCMMODETYPE& aParamAudioPcm,
const OMX_AUDIO_CONFIG_VOLUMETYPE& aConfigAudioVolume,
- const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute)
+ const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute,
+ COmxILPcmRendererProcessingFunction& aProcessingFunction)
:
iParamAudioPcm(aParamAudioPcm),
iConfigAudioVolume(aConfigAudioVolume),
- iConfigAudioMute(aConfigAudioMute)
+ iConfigAudioMute(aConfigAudioMute),
+ iProcessingFunction(aProcessingFunction)
{
DEBUG_PRINTF(_L8("COmxILPcmRendererAPB0Port::COmxILPcmRendererAPB0Port"));
}
@@ -200,25 +221,35 @@
TInt err = aIndexArray.InsertInOrder(OMX_IndexConfigAudioVolume);
// Note that index duplication is OK.
- if (KErrNone == err || KErrAlreadyExists == err)
+ if (KErrNone != err && KErrAlreadyExists != err)
{
- err = aIndexArray.InsertInOrder(OMX_IndexConfigAudioMute);
+ return OMX_ErrorInsufficientResources;
+ }
+
+ err = aIndexArray.InsertInOrder(OMX_IndexConfigAudioMute);
- if (KErrNone == err || KErrAlreadyExists == err)
- {
- err = aIndexArray.InsertInOrder(
- OMX_SymbianIndexConfigAudioPcmVolumeRamp);
- }
-
- }
-
+ if (KErrNone != err && KErrAlreadyExists != err)
+ {
+ return OMX_ErrorInsufficientResources;
+ }
+
+ err = aIndexArray.InsertInOrder(
+ OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP);
+
if (KErrNone != err && KErrAlreadyExists != err)
{
return OMX_ErrorInsufficientResources;
}
+ err = aIndexArray.InsertInOrder(
+ OMX_SYMBIANINDEXCONFIGAUDIODATAAMOUNT);
+
+ if (KErrNone != err && KErrAlreadyExists != err)
+ {
+ return OMX_ErrorInsufficientResources;
+ }
+
return OMX_ErrorNone;
-
}
@@ -372,27 +403,64 @@
OMX_ERRORTYPE omxRetValue = OMX_ErrorNone;
switch(aConfigIndex)
{
- case OMX_SymbianIndexConfigAudioPcmVolumeRamp:
+ case OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP:
{
if (OMX_ErrorNone !=
(omxRetValue =
TOmxILUtil::CheckOmxStructSizeAndVersion(
apComponentConfigStructure,
- sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP))))
+ sizeof(OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE))))
{
return omxRetValue;
}
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*
+ OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*
pPcmVolumeRamp
= static_cast<
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*>(
+ OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*>(
apComponentConfigStructure);
*pPcmVolumeRamp = iConfigVolumeRamp;
}
break;
-
+
+ case OMX_SYMBIANINDEXCONFIGAUDIODATAAMOUNT:
+ {
+ if (OMX_ErrorNone !=
+ (omxRetValue =
+ TOmxILUtil::CheckOmxStructSizeAndVersion(
+ apComponentConfigStructure,
+ sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PROCESSEDDATAAMOUNTTYPE))))
+ {
+ return omxRetValue;
+ }
+
+ OMX_SYMBIAN_AUDIO_CONFIG_PROCESSEDDATAAMOUNTTYPE*
+ pPcmDataAmount
+ = static_cast<
+ OMX_SYMBIAN_AUDIO_CONFIG_PROCESSEDDATAAMOUNTTYPE*>(
+ apComponentConfigStructure);
+
+ TInt bytePlayed = iProcessingFunction.GetBytesPlayed();
+
+ // Convert into OMX_TICKS
+ // #define OMX_TICKS_PER_SECOND 1000000
+
+#ifndef OMX_SKIP64BIT
+ OMX_TICKS ticks = static_cast<OMX_TICKS>(bytePlayed) * 8 * OMX_TICKS_PER_SECOND /
+ static_cast<OMX_TICKS>(iParamAudioPcm.nBitPerSample) / static_cast<OMX_TICKS>(iParamAudioPcm.nSamplingRate);
+ pPcmDataAmount->nProcessedDataAmount = ticks;
+#else
+ TInt64 ticks = static_cast<TInt64>(bytePlayed) * 8 * OMX_TICKS_PER_SECOND/
+ static_cast<TInt64>(iParamAudioPcm.nBitPerSample) / static_cast<TInt64>(iParamAudioPcm.nSamplingRate);
+
+ pPcmDataAmount->nProcessedDataAmount.nLowPart = ticks & 0xffffffff;
+ pPcmDataAmount->nProcessedDataAmount.nHighPart = ticks >> 32;
+#endif
+
+ }
+ break;
+
case OMX_IndexConfigAudioVolume:
{
if (OMX_ErrorNone !=
@@ -455,21 +523,21 @@
OMX_ERRORTYPE omxRetValue = OMX_ErrorNone;
switch(aConfigIndex)
{
- case OMX_SymbianIndexConfigAudioPcmVolumeRamp:
+ case OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP:
{
if (OMX_ErrorNone !=
(omxRetValue =
TOmxILUtil::CheckOmxStructSizeAndVersion(
const_cast<OMX_PTR>(apComponentConfigStructure),
- sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP))))
+ sizeof(OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE))))
{
return omxRetValue;
}
- const OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*
+ const OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*
pPcmVolumeRamp
= static_cast<
- const OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*>(
+ const OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*>(
apComponentConfigStructure);
if (iConfigVolumeRamp.nRampDuration != pPcmVolumeRamp->nRampDuration)
@@ -564,16 +632,23 @@
reinterpret_cast<TUint8*>(aParameterName)));
TPtrC8 parameterNamePtr(
- reinterpret_cast<const TUint8*>(sOmxSymbianPcmVolumeRamp));
+ reinterpret_cast<const TUint8*>(OMX_SYMBIAN_INDEX_CONFIG_AUDIO_VOLUMERAMP_NAME));
if (requestedParameterNamePtr == parameterNamePtr)
{
- *apIndexType =
- static_cast<OMX_INDEXTYPE>(
- OMX_SymbianIndexConfigAudioPcmVolumeRamp);
+ *apIndexType = static_cast<OMX_INDEXTYPE>(OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP);
return OMX_ErrorNone;
}
+
+ parameterNamePtr.Set(reinterpret_cast<const TUint8*>(OMX_SYMBIAN_INDEX_CONFIG_AUDIO_DATAAMOUNT_NAME));
+
+ if (requestedParameterNamePtr == parameterNamePtr)
+ {
+ *apIndexType = static_cast<OMX_INDEXTYPE>(OMX_SYMBIANINDEXCONFIGAUDIODATAAMOUNT);
+
+ return OMX_ErrorNone;
+ }
*apIndexType = OMX_IndexMax;
return OMX_ErrorUnsupportedIndex;
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererapb0port.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererapb0port.h Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -25,7 +25,9 @@
#define OMXILPCMRENDERERAPB0PORT_H
#include <openmax/il/common/omxilaudioport.h>
-#include <openmax/il/extensions/omxilsymbianaudiopcmextensions.h>
+#include <openmax/il/shai/OMX_Symbian_AudioExt.h>
+
+class COmxILPcmRendererProcessingFunction;
class COmxILPcmRendererAPB0Port : public COmxILAudioPort
{
@@ -37,7 +39,8 @@
const RArray<OMX_AUDIO_CODINGTYPE>& aSupportedAudioFormats,
const OMX_AUDIO_PARAM_PCMMODETYPE& aParamAudioPcm,
const OMX_AUDIO_CONFIG_VOLUMETYPE& aConfigAudioVolume,
- const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute);
+ const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute,
+ COmxILPcmRendererProcessingFunction& aProcessingFunction);
~COmxILPcmRendererAPB0Port();
@@ -68,7 +71,8 @@
COmxILPcmRendererAPB0Port(
const OMX_AUDIO_PARAM_PCMMODETYPE& aParamAudioPcm,
const OMX_AUDIO_CONFIG_VOLUMETYPE& aConfigAudioVolume,
- const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute);
+ const OMX_AUDIO_CONFIG_MUTETYPE& aConfigAudioMute,
+ COmxILPcmRendererProcessingFunction& aProcessingFunction);
void ConstructL(const TOmxILCommonPortData& aCommonPortData, const RArray<OMX_AUDIO_CODINGTYPE>& aSupportedAudioFormats);
@@ -82,11 +86,11 @@
protected:
OMX_AUDIO_PARAM_PCMMODETYPE iParamAudioPcm;
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP iConfigVolumeRamp;
+ OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE iConfigVolumeRamp;
OMX_AUDIO_CONFIG_VOLUMETYPE iConfigAudioVolume;
OMX_AUDIO_CONFIG_MUTETYPE iConfigAudioMute;
RBuf8 iMimeTypeBuf;
-
+ COmxILPcmRendererProcessingFunction& iProcessingFunction;
};
#endif // OMXILPCMRENDERERAPB0PORT_H
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererconfigmanager.cpp Thu Sep 02 20:13:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,179 +0,0 @@
-/*
-* Copyright (c) 2008-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:
-*
-*/
-
-
-/**
- @file
- @internalComponent
-*/
-
-#include <openmax/il/common/omxilutil.h>
-#include <openmax/il/extensions/omxilsymbianaudiopcmextensions.h>
-#include "log.h"
-#include "omxilpcmrendererconfigmanager.h"
-#include "omxilpcmrendererprocessingfunction.h"
-
-
-
-COmxILPcmRendererConfigManager*
-COmxILPcmRendererConfigManager::NewL(
- COmxILPcmRendererProcessingFunction& aProcessingFunction,
- const TDesC8& aComponentName,
- const OMX_VERSIONTYPE& aComponentVersion,
- const RPointerArray<TDesC8>& aComponentRoleList)
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::NewL"));
- ASSERT(aComponentName.Length() && aComponentRoleList.Count());
-
- COmxILPcmRendererConfigManager* self = new (ELeave)COmxILPcmRendererConfigManager(aProcessingFunction);
- CleanupStack::PushL(self);
- self->ConstructL(aComponentName,
- aComponentVersion,
- aComponentRoleList);
- CleanupStack::Pop(self);
- return self;
-
- }
-
-void
-COmxILPcmRendererConfigManager::ConstructL(const TDesC8& aComponentName,
- const OMX_VERSIONTYPE& aComponentVersion,
- const RPointerArray<TDesC8>& aComponentRoleList)
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::ConstructL"));
-
- COmxILConfigManager::ConstructL(aComponentName, aComponentVersion, aComponentRoleList);
-
- ManagedConfigIndexes().InsertInOrderL(OMX_SymbianIndexConfigAudioBytesPlayed);
- }
-
-COmxILPcmRendererConfigManager::COmxILPcmRendererConfigManager(COmxILPcmRendererProcessingFunction& aProcessingFunction)
- :iProcessingFunction(aProcessingFunction)
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::COmxILPcmRendererConfigManager"));
-
- }
-
-COmxILPcmRendererConfigManager::~COmxILPcmRendererConfigManager()
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::~COmxILPcmRendererConfigManager"));
-
- }
-
-OMX_ERRORTYPE
-COmxILPcmRendererConfigManager::GetConfig(OMX_INDEXTYPE aConfigIndex,
- TAny* apComponentConfigStructure) const
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::GetConfig"));
-
- TInt index = FindConfigIndex(aConfigIndex);
- if (KErrNotFound == index)
- {
- return OMX_ErrorUnsupportedIndex;
- }
-
- OMX_ERRORTYPE omxRetValue = OMX_ErrorNone;
- switch(aConfigIndex)
- {
- case OMX_SymbianIndexConfigAudioBytesPlayed:
- {
- if (OMX_ErrorNone !=
- (omxRetValue =
- TOmxILUtil::CheckOmxStructSizeAndVersion(
- apComponentConfigStructure,
- sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED))))
- {
- return omxRetValue;
- }
-
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED*
- pPcmBytesPlayed
- = static_cast<
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED*>(
- apComponentConfigStructure);
-
- pPcmBytesPlayed->nBytesPlayed = iProcessingFunction.GetBytesPlayed();
- }
- break;
-
- default:
- {
- omxRetValue = COmxILConfigManager::GetConfig(aConfigIndex, apComponentConfigStructure);
- }
- };
-
- return omxRetValue;
- }
-
-OMX_ERRORTYPE
-COmxILPcmRendererConfigManager::SetConfig(OMX_INDEXTYPE aConfigIndex,
- const TAny* apComponentConfigStructure)
-
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::SetConfig"));
-
- TInt index = FindConfigIndex(aConfigIndex);
- if (KErrNotFound == index)
- {
- return OMX_ErrorUnsupportedIndex;
- }
-
- OMX_ERRORTYPE omxRetValue = OMX_ErrorNone;
- switch(aConfigIndex)
- {
- case OMX_SymbianIndexConfigAudioBytesPlayed:
- {
- omxRetValue = OMX_ErrorUnsupportedSetting;
- }
- break;
-
- default:
- {
- omxRetValue = COmxILConfigManager::SetConfig(aConfigIndex, apComponentConfigStructure);
- }
- };
-
- return omxRetValue;
-
- }
-
-OMX_ERRORTYPE
-COmxILPcmRendererConfigManager::GetExtensionIndex(
- OMX_STRING aParameterName,
- OMX_INDEXTYPE* apIndexType) const
- {
- DEBUG_PRINTF(_L8("COmxILPcmRendererConfigManager::GetExtensionIndex"));
-
- TPtrC8 requestedParameterNamePtr(
- const_cast<const TUint8*>(
- reinterpret_cast<TUint8*>(aParameterName)));
-
- TPtrC8 parameterNamePtr(
- reinterpret_cast<const TUint8*>(sOmxSymbianPcmBytesPlayed));
-
- if (requestedParameterNamePtr == parameterNamePtr)
- {
- *apIndexType =
- static_cast<OMX_INDEXTYPE>(
- OMX_SymbianIndexConfigAudioBytesPlayed);
-
- return OMX_ErrorNone;
- }
-
- *apIndexType = OMX_IndexMax;
- return OMX_ErrorUnsupportedIndex;
- }
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererconfigmanager.h Thu Sep 02 20:13:57 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,74 +0,0 @@
-/*
-* Copyright (c) 2008-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:
-*
-*/
-
-
-/**
- @file
- @internalComponent
-*/
-
-#ifndef OMXILPCMRENDERERCONFIGMANAGER_H
-#define OMXILPCMRENDERERCONFIGMANAGER_H
-
-#include <openmax/il/common/omxilconfigmanager.h>
-
-// class forwarding
-class COmxILPcmRendererProcessingFunction;
-
-/**
- This class is a placeholder for those PCM Renderer parameters and configs that
- apply to the component as a whole and not to a specific port in the
- component.
- */
-NONSHARABLE_CLASS(COmxILPcmRendererConfigManager) : public COmxILConfigManager
- {
-
-public:
-
- static COmxILPcmRendererConfigManager* NewL(
- COmxILPcmRendererProcessingFunction& aProcessingFunction,
- const TDesC8& aComponentName,
- const OMX_VERSIONTYPE& aComponentVersion,
- const RPointerArray<TDesC8>& aComponentRoleList);
-
- ~COmxILPcmRendererConfigManager();
-
- OMX_ERRORTYPE GetConfig(
- OMX_INDEXTYPE aConfigIndex,
- TAny* apComponentConfigStructure) const;
-
- OMX_ERRORTYPE SetConfig(
- OMX_INDEXTYPE aConfigIndex,
- const TAny* apComponentConfigStructure);
-
- OMX_ERRORTYPE GetExtensionIndex(
- OMX_STRING aParameterName,
- OMX_INDEXTYPE* apIndexType) const;
-
-protected:
-
- COmxILPcmRendererConfigManager(COmxILPcmRendererProcessingFunction& aProcessingFunction);
-
- void ConstructL(const TDesC8& aComponentName,
- const OMX_VERSIONTYPE& aComponentVersion,
- const RPointerArray<TDesC8>& aComponentRoleList);
-
-private:
- COmxILPcmRendererProcessingFunction& iProcessingFunction;
- };
-
-#endif // OMXILPCMRENDERERCONFIGMANAGER_H
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererconst.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererconst.h Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -52,4 +52,16 @@
const RMdaDevSound::TMdaSoundEncoding KDefaultEncoding = RMdaDevSound::EMdaSoundEncoding16BitPCM;
+/**
+ * Custom index used by Symbian's OpenMAX IL PCM renderer to select the
+ * structure for setting/getting a Volume Ramp configuration data item
+ */
+#define OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP 0x7F000002
+
+/**
+ * Custom index used by Symbian's OpenMAX IL PCM renderer to select the
+ * structure for getting a Data Amount configuration data item
+ */
+#define OMX_SYMBIANINDEXCONFIGAUDIODATAAMOUNT 0x7F000003
+
#endif /*OMXILPCMRENDERERCONST_H_*/
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererprocessingfunction.cpp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererprocessingfunction.cpp Fri Sep 17 08:27:08 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2008-2010 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"
@@ -28,7 +28,7 @@
#include "log.h"
#include <openmax/il/common/omxilcallbacknotificationif.h>
#include <openmax/il/common/omxilclockcomponentcmdsif.h>
-#include <openmax/il/extensions/omxilsymbianaudiopcmextensions.h>
+#include <openmax/il/shai/OMX_Symbian_AudioExt.h>
#include "omxilpcmrendererprocessingfunction.h"
const TInt COmxILPcmRendererProcessingFunction::CPFHelper::KMaxMsgQueueEntries;
@@ -312,12 +312,12 @@
OMX_ERRORTYPE err = OMX_ErrorNone;
switch(aConfigIndex)
{
- case OMX_SymbianIndexConfigAudioPcmVolumeRamp:
+ case OMX_SYMBIANINDEXCONFIGAUDIOPCMVOLUMERAMP:
{
- const OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*
+ const OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*
pPcmVolumeRamp
= static_cast<
- const OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP*>(
+ const OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE*>(
apComponentConfigStructure);
if (iPFHelper->SetVolumeRamp(pPcmVolumeRamp->nRampDuration) != KErrNone)
@@ -741,13 +741,12 @@
iParent.iBuffersToEmpty.Remove(0);
- CMMFDataBuffer* mmfSrcBuffer = static_cast<CMMFDataBuffer*>(iCurrentBuffer->pInputPortPrivate);
- mmfSrcBuffer->Data().SetLength(iCurrentBuffer->nFilledLen);
-
+ TPtr8 ptrData(iCurrentBuffer->pBuffer, iCurrentBuffer->nFilledLen, iCurrentBuffer->nFilledLen);
+
// Attenuate the amplitude of the samples if volume ramping has been changed
if (iRampAudioSample)
{
- iRampAudioSample = RampAudio(mmfSrcBuffer);
+ iRampAudioSample = RampAudio(ptrData);
}
// First, check whether the buffer length is sufficient not to cause underflows in the device driver
@@ -757,7 +756,7 @@
TBool appendBuffer = (!isFilledLengthSufficient || iCachedPlayBuffer.Length() > 0) ? ETrue : EFalse;
if (!appendBuffer)
{
- SendBufferToSoundDevice(mmfSrcBuffer->Data());
+ SendBufferToSoundDevice(ptrData);
}
else
{
@@ -774,7 +773,7 @@
}
}
- iCachedPlayBuffer.Append(mmfSrcBuffer->Data());
+ iCachedPlayBuffer.Append(ptrData);
// If we have sufficient length aggregated, play the cached buffer
// Also if this is the last buffer, we have to play it now, there's nothing left to cache
@@ -1348,16 +1347,16 @@
iSkip = ETrue;
}
-TBool COmxILPcmRendererProcessingFunction::CAudioDevice::RampAudio(CMMFDataBuffer* aBuffer)
+TBool COmxILPcmRendererProcessingFunction::CAudioDevice::RampAudio(TDes8& aBuffer)
{
TInt i=0;
- TInt length = aBuffer->Data().Length()>>1;
+ TInt length = aBuffer.Length()>>1;
if (length == 0)
{
return EFalse;
}
- TInt16* sample = REINTERPRET_CAST(TInt16*,&aBuffer->Data()[0]);
+ TInt16* sample = REINTERPRET_CAST(TInt16*,&aBuffer[0]);
TInt64 theResult(0);
while ((i < length) && (iRampIncr < iRampSamples))
{
@@ -1585,7 +1584,7 @@
TProcMessage message;
message.iType = ECloseDeviceOnError;
TInt error = iMsgQueue.Send(message);
- if (KErrNone != error)
+ if (KErrNone == error)
{
// only wait if the message was sent into the queue...
iCallerSemaphore.Wait();
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererprocessingfunction.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/src/omxilpcmrendererprocessingfunction.h Fri Sep 17 08:27:08 2010 +0300
@@ -24,7 +24,6 @@
#ifndef OMXILPCMRENDERERPROCESSINGFUNCTION_H
#define OMXILPCMRENDERERPROCESSINGFUNCTION_H
-#include <mmf/server/mmfdatabuffer.h>
#include "omxilpcmrendererconst.h"
#include <openmax/il/common/omxilprocessingfunction.h>
#include <e32msgqueue.h>
@@ -106,7 +105,7 @@
OMX_BUFFERHEADERTYPE* GetCurrentBuffer();
TInt GetBytesPlayed();
void ConfigAudioRamper(TInt64 aRampTime);
- TBool RampAudio(CMMFDataBuffer* aBuffer);
+ TBool RampAudio(TDes8& aBuffer);
TBool ConstructAndStartUpdateTimer();
void ProcessNextBuffer();
void PlayData();
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/mmpfiles/tsu_omxil_pcmrenderer_01.mmp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/mmpfiles/tsu_omxil_pcmrenderer_01.mmp Fri Sep 17 08:27:08 2010 +0300
@@ -37,7 +37,6 @@
LIBRARY ecom.lib
LIBRARY testframeworkclient.lib
LIBRARY omxilcomponentcommon.lib
-LIBRARY mmfserverbaseclasses.lib
STATICLIBRARY omxilcomponentif.lib
NOSTRICTDEF
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_component_base.cpp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_component_base.cpp Fri Sep 17 08:27:08 2010 +0300
@@ -18,9 +18,6 @@
@internalComponent
*/
-#include <mmf/server/mmfbuffer.h>
-#include <mmf/server/mmfdatabuffer.h>
-
#include <ecom/ecom.h>
#include <openmax/il/khronos/v1_x/OMX_Component.h>
#include <openmax/il/loader/omxilcomponentif.h>
@@ -106,18 +103,17 @@
void
-CAacTestFile::ReadNextBuffer(CMMFBuffer& aDataBuffer)
+CAacTestFile::ReadNextBuffer(TDes8& aDataBuffer)
{
DEBUG_PRINTF(_L8("CAacTestFile::ReadNextBuffer"));
- CMMFDataBuffer* pDataBuffer = static_cast<CMMFDataBuffer*>(&aDataBuffer);
while (ETrue)
{
// check if finished
if (iFinished)
{
DEBUG_PRINTF(_L8("CAacTestFile::ReadNextBuffer : File finished"));
- pDataBuffer->Data().Zero();
+ aDataBuffer.Zero();
return;
}
@@ -125,19 +121,18 @@
if (iSourceFileReadPos < srcLength)
{
TInt size = srcLength;
- if (size > pDataBuffer->Data().MaxLength())
+ if (size > aDataBuffer.MaxLength())
{
- size = pDataBuffer->Data().MaxLength();
+ size = aDataBuffer.MaxLength();
}
- Mem::Copy((TAny*)pDataBuffer->Data().Ptr(), (TAny*)iSourceFile->Mid(iSourceFileReadPos).Ptr(), size);
- pDataBuffer->Data().SetLength(size);
+ Mem::Copy((TAny*)aDataBuffer.Ptr(), (TAny*)iSourceFile->Mid(iSourceFileReadPos).Ptr(), size);
+ aDataBuffer.SetLength(size);
iSourceFileReadPos += size;
DEBUG_PRINTF2(_L8("CAacTestFile::ReadNextBuffer : data read = [%d] bytes"), iSourceFileReadPos);
- DEBUG_PRINTF2(_L8("CAacTestFile::ReadNextBuffer : pDataBuffer->BufferSize = [%u] bytes"), pDataBuffer->BufferSize());
+ DEBUG_PRINTF2(_L8("CAacTestFile::ReadNextBuffer : aDataBuffer Size = [%u] bytes"), aDataBuffer.Length());
if (iSourceFileReadPos >= srcLength)
{
DEBUG_PRINTF(_L8("CAacTestFile::ReadNextBuffer : end of data"));
- pDataBuffer->SetLastBuffer(ETrue);
iFinished = ETrue;
}
return;
@@ -226,24 +221,22 @@
}
TInt
-CAacOutputTestFile::WriteDataToFile(const CMMFBuffer& aDataBuffer)
+CAacOutputTestFile::WriteDataToFile(const TDesC8& aDataBuffer)
{
DEBUG_PRINTF(_L8("CAacOutputTestFile::WriteDataToFile"));
- const CMMFDataBuffer& dataBuffer = static_cast<const CMMFDataBuffer&>(aDataBuffer);
- const TDesC8& data = dataBuffer.Data();
TInt err = KErrNone;
- err = iOutputFile.Write(data);
+ err = iOutputFile.Write(aDataBuffer);
if(err != KErrNone)
{
return err;
}
// keep record of amount of data and the number of buffers written out
- iWrittenDataTotal += data.Size();
+ iWrittenDataTotal += aDataBuffer.Size();
iBuffersWrittenCount++;
- DEBUG_PRINTF2(_L8("CAacOutputTestFile::WriteDataToFile : data.Size()[%d]"), data.Size());
+ DEBUG_PRINTF2(_L8("CAacOutputTestFile::WriteDataToFile : aDataBuffer.Size()[%d]"), aDataBuffer.Size());
DEBUG_PRINTF2(_L8("CAacOutputTestFile::WriteDataToFile : iWrittenDataTotal[%d]"), iWrittenDataTotal);
DEBUG_PRINTF2(_L8("CAacOutputTestFile::WriteDataToFile : iBuffersWrittenCount[%d]"), iBuffersWrittenCount);
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_component_base.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_component_base.h Fri Sep 17 08:27:08 2010 +0300
@@ -32,7 +32,6 @@
class COmxILComponentIf;
struct OMX_COMPONENTTYPE;
class RAsyncTestStepOmxILComponentBase;
-class CMMFBuffer;
class CAacTestFile : public CBase
@@ -45,7 +44,7 @@
~CAacTestFile();
TInt ReadTestFileInBuffer(const TDesC& aFileName);
- void ReadNextBuffer(CMMFBuffer& aDataBuffer);
+ void ReadNextBuffer(TDes8& aDataBuffer);
void ResetPos();
TInt GetPos();
@@ -74,7 +73,7 @@
~CAacOutputTestFile();
TInt SetUpOutputFile(const TDesC& aFileName);
- TInt WriteDataToFile(const CMMFBuffer& aDataBuffer);
+ TInt WriteDataToFile(const TDesC8& aDataBuffer);
TInt AddWavHeader();
void CloseOutputFile();
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_pcmrenderer_step.cpp Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_pcmrenderer_step.cpp Fri Sep 17 08:27:08 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2008-2010 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"
@@ -20,14 +20,13 @@
#include <e32base.h>
#include <e32cmn.h>
-#include <mmf/server/mmfbuffer.h>
-#include <mmf/server/mmfdatabuffer.h>
#include <openmax/il/khronos/v1_x/OMX_Component.h>
#include <openmax/il/khronos/v1_x/OMX_Types.h>
#include <openmax/il/loader/omxilcomponentif.h>
-#include <openmax/il/extensions/omxilsymbianaudiopcmextensions.h>
+#include <openmax/il/shai/OMX_Symbian_AudioExt.h>
+#include <openmax/il/shai/OMX_Symbian_ExtensionNames.h>
#include "log.h"
#include "omxilpcmrenderer.hrh"
@@ -1227,21 +1226,20 @@
//
// Allocate buffer on input port
//
- TRAPD(err, ipInputBuffer = CMMFDescriptorBuffer::NewL(portParamsInputPort.nBufferSize));
+ TRAPD(err, ipInputBuffer = HBufC8::NewL(portParamsInputPort.nBufferSize));
if(err != KErrNone)
{
return StopTest(KErrGeneral, EFail);
}
- TDes8& inputBufferDes = ipInputBuffer->Data();
if (OMX_ErrorNone != ipCompHandle->UseBuffer(
ipCompHandle,
&ipBufferHeaderInput,
0, // input port
- ipInputBuffer, // pAppPrivate
+ 0, // pAppPrivate
portParamsInputPort.nBufferSize,
- const_cast<TUint8*>(inputBufferDes.Ptr())))
+ const_cast<TUint8*>(ipInputBuffer->Des().Ptr())))
{
return StopTest(KErrGeneral, EFail);
}
@@ -1254,9 +1252,9 @@
for (TInt n = 0; n < bufferCount; n++)
{
- CMMFDescriptorBuffer* bufPtr;
+ HBufC8* bufPtr;
- TRAPD(err, bufPtr = CMMFDescriptorBuffer::NewL(portParamsInputPort1.nBufferSize));
+ TRAPD(err, bufPtr = HBufC8::NewL(portParamsInputPort1.nBufferSize));
if(err != KErrNone)
{
@@ -1269,16 +1267,15 @@
return StopTest(KErrGeneral, EFail);
}
- TDes8& inputBufferDes = bufPtr->Data();
OMX_BUFFERHEADERTYPE* clockBufPtr;
if (OMX_ErrorNone != ipCompHandle->UseBuffer(
ipCompHandle,
&clockBufPtr,
1, // Clock input port
- ipInputBuffer, // pAppPrivate
+ 0, // pAppPrivate
portParamsInputPort.nBufferSize,
- const_cast<TUint8*>(inputBufferDes.Ptr())))
+ const_cast<TUint8*>(bufPtr->Des().Ptr())))
{
return StopTest(KErrGeneral, EFail);
}
@@ -2107,9 +2104,10 @@
{
INFO_PRINTF1(_L("DoEventHandlerL: OMX_StateExecuting [EStateTransitionToIdleComplete]"));
iTestState = EStateTransitionToExecutingComplete;
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
// Send a buffer to the input port
INFO_PRINTF1(_L("DoEventHandlerL: OMX_StateExecuting [Send a buffer to the input port]"));
@@ -3036,11 +3034,11 @@
INFO_PRINTF1(_L("DoEventHandlerL: OMX_StateExecuting [EStateTransitionToIdleComplete]"));
iTestState = EStateTransitionToExecutingComplete;
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3087,13 +3085,13 @@
DEBUG_PRINTF(_L8("RAsyncTestStepOmxILPcmRenderer0008::DoEmptyBufferDoneL"));
INFO_PRINTF1(_L("DoEmptyBufferDoneL : Callback received "));
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
- if (dataBuffer.BufferSize() > 0)
+ if (ptrData.Length() > 0)
{
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3258,11 +3256,11 @@
INFO_PRINTF1(_L("DoEventHandlerL: OMX_StateExecuting [EStateTransitionToIdleComplete]"));
iTestState = EStateTransitionToExecutingComplete;
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3369,13 +3367,13 @@
}
}
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
- if (dataBuffer.BufferSize() > 0)
+ if (ptrData.Length() > 0)
{
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3557,11 +3555,11 @@
INFO_PRINTF1(_L("DoEventHandlerL: OMX_StateExecuting [EStateTransitionToIdleComplete]"));
iTestState = EStateTransitionToExecutingComplete;
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3648,13 +3646,13 @@
}
else
{
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
- if (dataBuffer.BufferSize() > 0)
+ if (ptrData.Length() > 0)
{
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3810,7 +3808,7 @@
INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 2.- Repeat these two steps until the whole file has beeen empited "));
INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 2a. - Call EmptyThisBuffer on PCM Renderer "));
INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 2b. - EmptyBufferDone callback received "));
- INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 2c. - Get Bytes Played parameter and compare with the bytes readed from file "));
+ INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 2c. - Get Data Amount parameter and compare with the bytes readed from file "));
INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 3.- Executing->Idle(BufferFlushing) "));
INFO_PRINTF1(_L("UNIT TEST OMX IL PCM RENDERER : 4.- Idle->Loaded(Depopulation) "));
@@ -3835,32 +3833,69 @@
DEBUG_PRINTF(_L8("RAsyncTestStepOmxILPcmRenderer0030::DoEmptyBufferDoneL"));
INFO_PRINTF1(_L("DoEmptyBufferDoneL : Callback received "));
+ OMX_INDEXTYPE audioSpecificConfigIndex = OMX_IndexMax;
+ if (OMX_ErrorNone != ipCompHandle->GetExtensionIndex(
+ ipCompHandle,
+ OMX_SYMBIAN_INDEX_CONFIG_AUDIO_DATAAMOUNT_NAME,
+ &audioSpecificConfigIndex))
+ {
+ return StopTest(KErrGeneral, EFail);
+ }
+
// Check that GetConfig is returning the correct amount of bytes played
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED bytesPlayedStruct;
- bytesPlayedStruct.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_BYTESPLAYED);
+ OMX_SYMBIAN_AUDIO_CONFIG_PROCESSEDDATAAMOUNTTYPE bytesPlayedStruct;
+ bytesPlayedStruct.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PROCESSEDDATAAMOUNTTYPE);
bytesPlayedStruct.nVersion = TOmxILSpecVersion();
+ bytesPlayedStruct.nPortIndex = 0;
+
if (OMX_ErrorNone != ipCompHandle->GetConfig(ipCompHandle,
- static_cast<OMX_INDEXTYPE>(OMX_SymbianIndexConfigAudioBytesPlayed),
- &bytesPlayedStruct))
+ audioSpecificConfigIndex,
+ &bytesPlayedStruct))
{
StopTest(KErrGeneral, EFail);
}
+
+ OMX_AUDIO_PARAM_PCMMODETYPE pcmModeType;
+ pcmModeType.nSize = sizeof(OMX_AUDIO_PARAM_PCMMODETYPE);
+ pcmModeType.nVersion = TOmxILSpecVersion();
+ pcmModeType.nPortIndex = 0;
+
+ if (OMX_ErrorNone != ipCompHandle->GetParameter(ipCompHandle,
+ static_cast<OMX_INDEXTYPE>(OMX_IndexParamAudioPcm),
+ &pcmModeType))
+ {
+ StopTest(KErrGeneral, EFail);
+ }
+
//check the number of bytes played by the device corresponds
//to the number of bytes readed from file
//allow an extra margin of one buffer.
TUint maxAllowedBytesPlayed =ipTestFile->GetPos();
- if (bytesPlayedStruct.nBytesPlayed > maxAllowedBytesPlayed)
+
+ // Convert into OMX_TICKS
+
+#ifndef OMX_SKIP64BIT
+ OMX_TICKS ticks = static_cast<OMX_TICKS>(maxAllowedBytesPlayed) * 8 * OMX_TICKS_PER_SECOND /
+ static_cast<OMX_TICKS>(pcmModeType.nBitPerSample) / static_cast<OMX_TICKS>(pcmModeType.nSamplingRate);
+#else
+ TInt64 ticks = static_cast<TInt64>(maxAllowedBytesPlayed) * 8 * OMX_TICKS_PER_SECOND/
+ static_cast<TInt64>(pcmModeType.nBitPerSample) / static_cast<TInt64>(pcmModeType.nSamplingRate);
+#endif
+
+ if (bytesPlayedStruct.nProcessedDataAmount > ticks)
{
StopTest(KErrGeneral, EFail);
}
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ INFO_PRINTF2(_L("DoEmptyBufferDoneL : bytesPlayedStruct.nProcessedDataAmount=%d "), bytesPlayedStruct.nProcessedDataAmount);
- if (dataBuffer.BufferSize() > 0)
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
+
+ if (ptrData.Length() > 0)
{
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
@@ -3931,33 +3966,43 @@
iNumOfEmptiedBuffers++;
if (iNumOfEmptiedBuffers == 5)
{
- OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP volumeRampStruct;
- volumeRampStruct.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_PCM_VOLUMERAMP);
+ OMX_INDEXTYPE audioSpecificConfigIndex = OMX_IndexMax;
+ if (OMX_ErrorNone != ipCompHandle->GetExtensionIndex(
+ ipCompHandle,
+ OMX_SYMBIAN_INDEX_CONFIG_AUDIO_VOLUMERAMP_NAME,
+ &audioSpecificConfigIndex))
+ {
+ return StopTest(KErrGeneral, EFail);
+ }
+
+ OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE volumeRampStruct;
+ volumeRampStruct.nSize = sizeof(OMX_SYMBIAN_AUDIO_CONFIG_VOLUMERAMPTYPE);
volumeRampStruct.nVersion = TOmxILSpecVersion();
volumeRampStruct.nPortIndex = 0;
+
if (OMX_ErrorNone != ipCompHandle->GetConfig(ipCompHandle,
- static_cast<OMX_INDEXTYPE>(OMX_SymbianIndexConfigAudioPcmVolumeRamp),
+ audioSpecificConfigIndex,
&volumeRampStruct))
{
StopTest(KErrGeneral, EFail);
}
volumeRampStruct.nRampDuration = 2000000; // 2 second
if (OMX_ErrorNone != ipCompHandle->SetConfig(ipCompHandle,
- static_cast<OMX_INDEXTYPE>(OMX_SymbianIndexConfigAudioPcmVolumeRamp),
- &volumeRampStruct))
+ audioSpecificConfigIndex,
+ &volumeRampStruct))
{
StopTest(KErrGeneral, EFail);
}
INFO_PRINTF1(_L("Volume ramp set"));
}
- CMMFDataBuffer& dataBuffer = *(static_cast<CMMFDataBuffer*>(ipBufferHeaderInput->pInputPortPrivate));
- ipTestFile->ReadNextBuffer(dataBuffer);
+ TPtr8 ptrData(ipBufferHeaderInput->pBuffer, ipBufferHeaderInput->nAllocLen, ipBufferHeaderInput->nAllocLen);
+ ipTestFile->ReadNextBuffer(ptrData);
- if (dataBuffer.BufferSize() > 0)
+ if (ptrData.Length() > 0)
{
// Send a buffer to the input port
- ipBufferHeaderInput->nFilledLen = dataBuffer.BufferSize();
+ ipBufferHeaderInput->nFilledLen = ptrData.Length();
if (OMX_ErrorNone != ipCompHandle->EmptyThisBuffer(
ipCompHandle, ipBufferHeaderInput))
--- a/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_pcmrenderer_step.h Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilaudioemulator/pcmrenderer/unittest/src/tsu_omxil_pcmrenderer_step.h Fri Sep 17 08:27:08 2010 +0300
@@ -25,8 +25,6 @@
#include "tsu_omxil_component_base.h"
-// Forward declarations
-class CMMFDescriptorBuffer;
//
// RAsyncTestStepOmxILPcmRenderer0020
@@ -277,10 +275,9 @@
protected:
-
- CMMFDescriptorBuffer* ipInputBuffer;
- CMMFDescriptorBuffer* ipOutputBuffer;
- RArray<CMMFDescriptorBuffer*> iClockPortBufferPtrArray;
+ HBufC8* ipInputBuffer;
+ HBufC8* ipOutputBuffer;
+ RArray<HBufC8*> iClockPortBufferPtrArray;
};
//
--- a/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_audio.script Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_audio.script Fri Sep 17 08:27:08 2010 +0300
@@ -18,7 +18,7 @@
LOAD_SUITE te_xmlomxclient
-START_TESTCASE MM-AUDIO-OMX-FILESOURCE-001-HP
+START_TESTCASE MM-AUDIO-OMX-FILESINK-001-HP
START_TEST_BLOCK 30 te_xmlomxclient c:\omxil\tef\te_omx_filesink.ini
CREATE_OBJECT OmxXmlTestWrapper InstanceName
COMMAND InstanceName New c:\omxil\tef\te_omx_filesink_audio.xml
@@ -29,6 +29,6 @@
COMMAND InstanceName RunTest ChangeInvalidEncodeType_filesink
COMMAND InstanceName RunTest BasicOperation_nofilename_filesink
END_TEST_BLOCK
-END_TESTCASE MM-AUDIO-OMX-FILESOURCE-001-HP
+END_TESTCASE MM-AUDIO-OMX-FILESINK-001-HP
--- a/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_image.script Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_image.script Fri Sep 17 08:27:08 2010 +0300
@@ -15,10 +15,11 @@
//
+delay 5000
LOAD_SUITE te_xmlomxclient
-START_TESTCASE MM-IMAGE-OMX-FILESOURCE-001-HP
+START_TESTCASE MM-IMAGE-OMX-FILESINK-001-HP
START_TEST_BLOCK 30 te_xmlomxclient c:\omxil\tef\te_omx_filesink.ini
CREATE_OBJECT OmxXmlTestWrapper InstanceName
COMMAND InstanceName New c:\omxil\tef\te_omx_filesink_image.xml
@@ -27,6 +28,6 @@
COMMAND InstanceName RunTest GetFilenameOverFlow_filesink
COMMAND InstanceName RunTest BasicOperation_nofilename_filesink
END_TEST_BLOCK
-END_TESTCASE MM-IMAGE-OMX-FILESOURCE-001-HP
+END_TESTCASE MM-IMAGE-OMX-FILESINK-001-HP
--- a/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_other.script Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_other.script Fri Sep 17 08:27:08 2010 +0300
@@ -18,7 +18,7 @@
LOAD_SUITE te_xmlomxclient
-START_TESTCASE MM-OTHER-OMX-FILESOURCE-001-HP
+START_TESTCASE MM-OTHER-OMX-FILESINK-001-HP
START_TEST_BLOCK 30 te_xmlomxclient c:\omxil\tef\te_omx_filesink.ini
CREATE_OBJECT OmxXmlTestWrapper InstanceName
COMMAND InstanceName New c:\omxil\tef\te_omx_filesink_other.xml
@@ -27,6 +27,6 @@
COMMAND InstanceName RunTest GetFilenameOverFlow_filesink
COMMAND InstanceName RunTest BasicOperation_nofilename_filesink
END_TEST_BLOCK
-END_TESTCASE MM-OTHER-OMX-FILESOURCE-001-HP
+END_TESTCASE MM-OTHER-OMX-FILESINK-001-HP
--- a/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_video.script Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_video.script Fri Sep 17 08:27:08 2010 +0300
@@ -18,7 +18,7 @@
LOAD_SUITE te_xmlomxclient
-START_TESTCASE MM-VIDEO-OMX-FILESOURCE-001-HP
+START_TESTCASE MM-VIDEO-OMX-FILESINK-001-HP
START_TEST_BLOCK 30 te_xmlomxclient c:\omxil\tef\te_omx_filesink.ini
CREATE_OBJECT OmxXmlTestWrapper InstanceName
COMMAND InstanceName New c:\omxil\tef\te_omx_filesink_video.xml
@@ -29,6 +29,6 @@
COMMAND InstanceName RunTest ChangeInvalidEncodeType_filesink
COMMAND InstanceName RunTest BasicOperation_nofilename_filesink
END_TEST_BLOCK
-END_TESTCASE MM-VIDEO-OMX-FILESOURCE-001-HP
+END_TESTCASE MM-VIDEO-OMX-FILESINK-001-HP
--- a/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_video_compatibility.script Thu Sep 02 20:13:57 2010 +0300
+++ b/omxilcomp/omxilgeneric/filesink/tests/unit/te_omx_filesink_video_compatibility.script Fri Sep 17 08:27:08 2010 +0300
@@ -18,12 +18,12 @@
LOAD_SUITE te_xmlomxclient
-START_TESTCASE MM-VIDEO-OMX-FILESOURCE-001-HP
+START_TESTCASE MM-VIDEO-OMX-FILESINK_COMPATIBILITY-001-HP
START_TEST_BLOCK 30 te_xmlomxclient c:\omxil\tef\te_omx_filesink.ini
CREATE_OBJECT OmxXmlTestWrapper InstanceName
COMMAND InstanceName New c:\omxil\tef\te_omx_filesink_video_compatibility.xml
COMMAND InstanceName RunTest Read3GPFormat
END_TEST_BLOCK
-END_TESTCASE MM-VIDEO-OMX-FILESOURCE-001-HP
+END_TESTCASE MM-VIDEO-OMX-FILESINK_COMPATIBILITY-001-HP