Revision: 201037 default
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 04 Oct 2010 00:51:56 +0300
changeset 55 e267340986c9
parent 52 4ce423f34688
Revision: 201037 Kit: 201039
khronosfws/openmax_al/group/openmaxal.mmp
khronosfws/openmax_al/inc/xadebugtraceutility.h
khronosfws/openmax_al/src/adptcommon/xaadptbasectx.c
khronosfws/openmax_al/src/adptcommon/xaadptbasectx.h
khronosfws/openmax_al/src/adptcommon/xacapabilitiesmgr.c
khronosfws/openmax_al/src/adptcommon/xaframeworkmgr.c
khronosfws/openmax_al/src/common/xacommon.c
khronosfws/openmax_al/src/common/xaconfigextensionsitf.c
khronosfws/openmax_al/src/common/xaconfigextensionsitf.h
khronosfws/openmax_al/src/common/xadebug.h
khronosfws/openmax_al/src/common/xadynamicsourceitf.c
khronosfws/openmax_al/src/common/xadynintmgmtitf.c
khronosfws/openmax_al/src/common/xaglobals.h
khronosfws/openmax_al/src/common/xametadataextractionitf.c
khronosfws/openmax_al/src/common/xametadataextractionitf.h
khronosfws/openmax_al/src/common/xanokialinearvolumeitf.c
khronosfws/openmax_al/src/common/xanokiavolumeextitf.c
khronosfws/openmax_al/src/common/xaobjectitf.c
khronosfws/openmax_al/src/common/xaobjectitf.h
khronosfws/openmax_al/src/common/xaplatform.c
khronosfws/openmax_al/src/common/xastreaminformationitf.c
khronosfws/openmax_al/src/common/xastreaminformationitf.h
khronosfws/openmax_al/src/common/xathreadsafety.c
khronosfws/openmax_al/src/common/xathreadsafety.h
khronosfws/openmax_al/src/common/xavideopostprocessingitf.c
khronosfws/openmax_al/src/common/xavideopostprocessingitf.h
khronosfws/openmax_al/src/common/xavolumeitf.c
khronosfws/openmax_al/src/engine/xaaudioencodercapabilitiesitf.c
khronosfws/openmax_al/src/engine/xaaudioiodevicecapabilitiesitf.c
khronosfws/openmax_al/src/engine/xaengine.c
khronosfws/openmax_al/src/engine/xaengine.h
khronosfws/openmax_al/src/engine/xaengineitf.c
khronosfws/openmax_al/src/engine/xaengineitf.h
khronosfws/openmax_al/src/engine/xathreadsyncitf.c
khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.c
khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.h
khronosfws/openmax_al/src/gst_adaptation/xaengineadaptctx.c
khronosfws/openmax_al/src/gst_adaptation/xaengineadaptctx.h
khronosfws/openmax_al/src/gst_adaptation/xagstcapabilitiesmgr.c
khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.c
khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.h
khronosfws/openmax_al/src/gst_adaptation/xametadataadaptation.c
khronosfws/openmax_al/src/gst_adaptation/xametadataadaptation.h
khronosfws/openmax_al/src/gst_adaptation/xarecorditfadaptation.c
khronosfws/openmax_al/src/mediaplayer/xamediaplayer.c
khronosfws/openmax_al/src/mediaplayer/xamediaplayer.h
khronosfws/openmax_al/src/mediaplayer/xaplaybackrateitf.c
khronosfws/openmax_al/src/mediaplayer/xaplayitf.c
khronosfws/openmax_al/src/mediaplayer/xaplayitf.h
khronosfws/openmax_al/src/mediaplayer/xaprefetchstatusitf.c
khronosfws/openmax_al/src/mediaplayer/xaseekitf.c
khronosfws/openmax_al/src/mediarecorder/xaaudioencoderitf.c
khronosfws/openmax_al/src/mediarecorder/xamediarecorder.c
khronosfws/openmax_al/src/mediarecorder/xamediarecorder.h
khronosfws/openmax_al/src/mediarecorder/xametadatainsertionitf.c
khronosfws/openmax_al/src/mediarecorder/xametadatainsertionitf.h
khronosfws/openmax_al/src/mediarecorder/xarecorditf.c
khronosfws/openmax_al/src/metadataextractor/xametadataextractor.c
khronosfws/openmax_al/src/metadataextractor/xametadataextractor.h
khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.cpp
khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.h
khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.cpp
khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.h
khronosfws/openmax_al/src/mmf_adaptation/prefetchlevelupdatetimer.cpp
khronosfws/openmax_al/src/mmf_adaptation/prefetchlevelupdatetimer.h
khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xaengineadaptctxmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xaengineadaptctxmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xamediaplayeradaptctxmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xametadataadaptctxmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xammfcapabilitiesmgr.c
khronosfws/openmax_al/src/mmf_adaptation/xangavideosink.cpp
khronosfws/openmax_al/src/mmf_adaptation/xangavideosink.h
khronosfws/openmax_al/src/mmf_adaptation/xaplayitfadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xaprefetchstatusitfadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xaprefetchstatusitfadaptationmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xaradioitfadaptation.c
khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.h
khronosfws/openmax_al/src/mmf_adaptation/xavideopostprosessingitfadaptationmmf.c
khronosfws/openmax_al/src/mmf_adaptation/xavideopostprosessingitfadaptationmmf.h
khronosfws/openmax_al/src/radio/xaradiodevice.c
khronosfws/openmax_al/src/radio/xaradiodevice.h
khronosfws/openmax_al/src/radio/xaradioitf.c
khronosfws/openmax_al/src/xadebugtraceutility/xadebugtraceutility.cpp
mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/group/MetaDataDisplay.pkg
mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/src/MetaDataDisplayBlocks.cpp
mmmw_plat/audio_metadata_reader_api/tsrc/conf/MetaDataDisplay.cfg
mmmw_plat/enhanced_media_client_api/tsrc/EnhanMediaTestClass/group/EnhanMediaTestClass.mmp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/non_supported_aac.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_common_videoppitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_audenccapitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_engineitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mo.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp_prefetchstatusitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp_strminfoitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_audioencoderitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_audioencoderitf_cc.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_cc.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_mdinsertionitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_mdinsertionitf_cc.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_record_aac_au_p2.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_record_aac_he_p2.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_auto.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_he.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_cc.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_fmrx.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_incall.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part2.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part3.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part4.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_radioitf.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/xa_mp_videoppitf_cc.cfg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/data/c/omxaltestdata/test_video.3gp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/bld.inf
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.mmp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.pkg
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/inc/openmaxaltestmodule.h
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/init/testframework.ini
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalcommontests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalobjectitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalstrminfoitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxaltestmoduleblocks.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalvideoppitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalaudioencodercapabiltiesitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalengineitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalenginetests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/player/openmaxalprefetchstatusitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/radio/openmaxalradioitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalaudioencoderitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalmetadatainsertionitftests.cpp
mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalrecorditftests.cpp
mmmw_plat/telephony_multimedia_service_api/group/bld.inf
mmmw_plat/telephony_multimedia_service_api/inc/tmsfactory.h
mmmw_plat/telephony_multimedia_service_api/inc/tmsver.h
mmmw_plat/telephony_multimedia_service_api/tsrc/Conf/TMSAudioServicesTestClass.cfg
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.mmp
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.pkg
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/bld.inf
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TMSAudioServicesTestClass.h
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TimeoutController.h
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/debug.h
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/sis/TmsAudioServicesTestClass.sis
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/sis/TmsAudioServicesTestClass.sisx
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TimeoutController.cpp
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClass.cpp
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocks.cpp
mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp
mmmw_plat/telephony_multimedia_service_api/tsrc/data/NokiaTest.aac
mmmw_plat/telephony_multimedia_service_api/tsrc/init/TmsAudioServicesTestClass.ini
mmmw_plat/thumbnail_engine_api/tsrc/Conf/Emulator_test/VThumbTest.cfg
mmmw_plat/thumbnail_engine_api/tsrc/Conf/VThumbTest.cfg
mmmw_plat/thumbnail_engine_api/tsrc/bwins/VThumbTestu.def
mmmw_plat/thumbnail_engine_api/tsrc/data/mmc/TNETestData/3GPPv5_H263_176x144.3gp
mmmw_plat/thumbnail_engine_api/tsrc/eabi/VThumbTestu.def
mmmw_plat/thumbnail_engine_api/tsrc/group/bld.inf
mmmw_plat/thumbnail_engine_api/tsrc/group/tnetest.mmp
mmmw_plat/thumbnail_engine_api/tsrc/group/tnetest.pkg
mmmw_plat/thumbnail_engine_api/tsrc/inc/debug.h
mmmw_plat/thumbnail_engine_api/tsrc/inc/tnetest.h
mmmw_plat/thumbnail_engine_api/tsrc/init/TestFramework.ini
mmmw_plat/thumbnail_engine_api/tsrc/init/log.txt
mmmw_plat/thumbnail_engine_api/tsrc/sis/SISXU.bat
mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.pkg
mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.sis
mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.sisx
mmmw_plat/thumbnail_engine_api/tsrc/src/tnetest.cpp
mmmw_plat/voip_audio_services_api/group/bld.inf
mmmw_plat/voip_audio_services_api/inc/voipaudiocommon.h
mmmw_plat/voip_audio_services_api/inc/voipdatabuffer.h
mmmw_plat/voip_audio_services_api/inc/voipdownlinkstream.h
mmmw_plat/voip_audio_services_api/inc/voipdtmftoneplayer.h
mmmw_plat/voip_audio_services_api/inc/voipformatintfc.h
mmmw_plat/voip_audio_services_api/inc/voipg711decoderintfc.h
mmmw_plat/voip_audio_services_api/inc/voipg711encoderintfc.h
mmmw_plat/voip_audio_services_api/inc/voipg729decoderintfc.h
mmmw_plat/voip_audio_services_api/inc/voipilbcdecoderintfc.h
mmmw_plat/voip_audio_services_api/inc/voipilbcencoderintfc.h
mmmw_plat/voip_audio_services_api/inc/voipjitterbufferintfc.h
mmmw_plat/voip_audio_services_api/inc/voipringtonefactory.h
mmmw_plat/voip_audio_services_api/inc/voipringtoneplayer.h
mmmw_plat/voip_audio_services_api/inc/voipuplinkstream.h
mmmw_plat/voip_audio_services_api/inc/voiputilityfactory.h
mmmw_plat/voip_audio_services_api/tsrc/Conf/VoIPAudioServicesTestClass.cfg
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/VoIPAudioServicesTestClass.mmp
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/VoIPAudioServicesTestClass.pkg
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/bld.inf
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/TimeoutController.h
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/VoIPAudioServicesTestClass.h
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/debug.h
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.pkg
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.sis
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.sisx
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/create_sis.bat
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/TimeoutController.cpp
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClass.cpp
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocks.cpp
mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocksCallbacks.cpp
mmmw_plat/voip_audio_services_api/tsrc/data/NokiaTest.aac
mmmw_plat/voip_audio_services_api/tsrc/data/mmc/alarm.aac
mmmw_plat/voip_audio_services_api/tsrc/data/mmc/test_8khz.wav
mmmw_plat/voip_audio_services_api/tsrc/init/TestFramework.ini
mmserv/metadatautility/3GPExtParserLib/BWINS/3GPExtParserU.DEF
mmserv/metadatautility/3GPExtParserLib/EABI/3GPExtParserU.DEF
mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser.dso
mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser.lib
mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser{000a0000}.dso
mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser{000a0000}.lib
mmserv/metadatautility/3GPExtParserLib/armv5/udeb/3GPExtParser.dll
mmserv/metadatautility/3GPExtParserLib/armv5/urel/3GPExtParser.dll
mmserv/metadatautility/3GPExtParserLib/group/3GPExtParser.mmp
mmserv/metadatautility/3GPExtParserLib/group/bld.inf
mmserv/metadatautility/3GPExtParserLib/src/3GPExtParser.cpp
mmserv/metadatautility/3GPExtParserLib/src/3GPExtParser.h
mmserv/metadatautility/3GPExtParserLib/winscw/udeb/3GPExtParser.dll
mmserv/metadatautility/3GPExtParserLib/winscw/udeb/3GPExtParser.lib
mmserv/metadatautility/3GPExtParserLib/winscw/urel/3GPExtParser.dll
mmserv/metadatautility/Src/MetaDataParser.cpp
mmserv/metadatautility/Src/MetaDataParserID3v1.cpp
mmserv/metadatautility/Src/MetaDataParserID3v2.cpp
mmserv/radioutility/radio_utility/tsrc/group/TFMRadioUtility.mmp
mmserv/radioutility/radio_utility/tsrc/group/bld.inf
mmserv/radioutility/radio_utility/tsrc/inc/TFMRadioUtility.h
mmserv/radioutility/radio_utility/tsrc/src/TFMRadioUtility.cpp
mmserv/tms/inc/tmscallclisrv.h
mmserv/tms/inc/tmscallserver.h
mmserv/tms/inc/tmsclientserver.h
mmserv/tms/inc/tmsproxy.h
mmserv/tms/tmscallserver/inc/tmscalladpt.h
mmserv/tms/tmscallserver/inc/tmscallcsadpt.h
mmserv/tms/tmscallserver/inc/tmscallipadpt.h
mmserv/tms/tmscallserver/inc/tmscallsession.h
mmserv/tms/tmscallserver/inc/tmscsuplink.h
mmserv/tms/tmscallserver/inc/tmsipcallstream.h
mmserv/tms/tmscallserver/src/tmscallcsadpt.cpp
mmserv/tms/tmscallserver/src/tmscallipadpt.cpp
mmserv/tms/tmscallserver/src/tmscallserver.cpp
mmserv/tms/tmscallserver/src/tmscallsession.cpp
mmserv/tms/tmscallserver/src/tmscsdownlink.cpp
mmserv/tms/tmscallserver/src/tmscsuplink.cpp
mmserv/tms/tmscallserver/src/tmsipcalldownlink.cpp
mmserv/tms/tmscallserver/src/tmsipcalldownlinkds.cpp
mmserv/tms/tmscallserver/src/tmsipcalluplinkds.cpp
mmserv/tms/tmsfactory/inc/tmsfactoryimpl.h
mmserv/tms/tmsfactory/src/tmsfactory.cpp
mmserv/tms/tmsfactory/src/tmsfactoryimpl.cpp
mmserv/tms/tmsimpl/bwins/tmsimpl.def
mmserv/tms/tmsimpl/eabi/tmsimpl.def
mmserv/tms/tmsimpl/group/tmsimpl.mmp
mmserv/tms/tmsimpl/inc/tmsamrbodyimpl.h
mmserv/tms/tmsimpl/inc/tmscallbodyimpl.h
mmserv/tms/tmsimpl/inc/tmsg711bodyimpl.h
mmserv/tms/tmsimpl/inc/tmsg729bodyimpl.h
mmserv/tms/tmsimpl/inc/tmsilbcbodyimpl.h
mmserv/tms/tmsimpl/inc/tmspcmbodyimpl.h
mmserv/tms/tmsimpl/src/tmsamrbodyimpl.cpp
mmserv/tms/tmsimpl/src/tmscallbodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsg711bodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsg729bodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsilbcbodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsmicsourcebodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsmicsourceimpl.cpp
mmserv/tms/tmsimpl/src/tmsmodemsinkimpl.cpp
mmserv/tms/tmsimpl/src/tmsmodemsourceimpl.cpp
mmserv/tms/tmsimpl/src/tmspcmbodyimpl.cpp
mmserv/tms/tmsimpl/src/tmsspeakersinkimpl.cpp
mmserv/tms/tmsimpl/src/tmsstreambodyimpl.cpp
mmserv/tms/tmsproxy/bwins/tmsproxy.def
mmserv/tms/tmsproxy/eabi/tmsproxy.def
mmserv/tms/tmsproxy/src/tmsproxy.cpp
mmserv/tms/tmsserver/inc/tmsserver.h
mmserv/tms/tmsserver/src/tmsdtmftoneplayer.cpp
mmserv/tms/tmsserver/src/tmsrtaudiohdlr.cpp
mmserv/tms/tmsserver/src/tmsrtplayer.cpp
mmserv/tms/tmsserver/src/tmsserver.cpp
mmserv/tms/tmsserver/src/tmsserversession.cpp
mmserv/voipaudioservices/JitterBufferUtility/inc/CngGenerator.h
mmserv/voipaudioservices/JitterBufferUtility/inc/InternalDef.h
mmserv/voipaudioservices/JitterBufferUtility/inc/JitterBufferImpl.h
mmserv/voipaudioservices/JitterBufferUtility/src/CngGenerator.cpp
mmserv/voipaudioservices/JitterBufferUtility/src/JitterBuffer.cpp
mmserv/voipaudioservices/JitterBufferUtility/src/JitterBufferImpl.cpp
mmserv/voipaudioservices/VoIPClient/src/VoIPAudioSession.cpp
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPBaseCodecIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDataBufferImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDownlinkStreamImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDtmfTonePlayerImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPFormatIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711DecoderIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711EncoderIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG729DecoderIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCDecoderIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCEncoderIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJBDataBufferImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJitterBufferIntfcImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingToneFactoryImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingTonePlayerImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUplinkStreamImpl.h
mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUtilityFactoryImpl.h
mmserv/voipaudioservices/VoIPIntfc/src/VoIPBaseCodecIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBuffer.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBufferImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPDownlinkStreamImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayer.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayerImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBuffer.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBufferImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfc.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfcImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactory.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactoryImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayer.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayerImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPUplinkStreamImpl.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactory.cpp
mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactoryImpl.cpp
mmserv/voipaudioservices/VoIPServer/inc/VoIPQueueHandlerSrv.h
mmserv/voipaudioservices/VoIPServer/inc/VoIPServer.h
mmserv/voipaudioservices/VoIPServer/inc/VoIPServerAO.h
mmserv/voipaudioservices/VoIPServer/inc/VoIPServerSession.h
mmserv/voipaudioservices/VoIPServer/inc/VoIPServerShutdown.h
mmserv/voipaudioservices/VoIPServer/inc/VoIPServerThread.h
mmserv/voipaudioservices/VoIPServer/src/VoIPDownlinkThread.cpp
mmserv/voipaudioservices/VoIPServer/src/VoIPServerSession.cpp
mmserv/voipaudioservices/VoIPServer/src/VoIPUplinkThread.cpp
mmserv/voipaudioservices/group/bld.inf
mmserv/voipaudioservices/inc/JitterBuffer.h
mmserv/voipaudioservices/inc/JitterBufferObserver.h
mmserv/voipaudioservices/inc/VoIPAudioClientServer.h
mmserv/voipaudioservices/inc/VoIPAudioSession.h
mmserv/voipaudioservices/inc/VoIPQueueHandler.h
mmserv/voipaudioservices/inc/VoIPSharedData.h
mmserv/voipaudioservices/rom/VoIPAudioServices.iby
mmserv/voipaudioservices/sis/VoIPAudioSrvc.sis
mmserv/voipaudioservices/sis/VoIPAudioSrvc.sisx
mmserv/voipaudioservices/sis/VoIPAudioSrvc_32.sis
mmserv/voipaudioservices/sis/VoIPAudioSrvc_32.sisx
--- a/khronosfws/openmax_al/group/openmaxal.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/group/openmaxal.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -38,14 +38,14 @@
 //MACRO 	USE_LOCAL_WINDOW_RESOURCES
 //MACRO           PROFILE_TIME
 //MACRO           PRINT_TO_CONSOLE_TIME_DIFF
+//MACRO		PROFILE_HEAP_USAGE
+//MACRO		INPUTSRCSELECTION_FEATURE
 
 SOURCEPATH      ../src/gst_adaptation
 SOURCE	        xaadaptationgst.c
 SOURCE 	        xagstcapabilitiesmgr.c
 SOURCE	        xaaudioencoderitfadaptation.c
-SOURCE	        xaengineadaptctx.c
 SOURCE	        xamediarecorderadaptctx.c
-SOURCE	        xametadataadaptation.c
 SOURCE	        xarecorditfadaptation.c
 
 SOURCEPATH ../src/adptcommon
@@ -56,7 +56,6 @@
 SOURCEPATH      ../src/common
 SOURCE          openmaxal.c
 SOURCE          xacommon.c
-SOURCE          xaconfigextensionsitf.c
 SOURCE          xadynamicsourceitf.c
 SOURCE          xadynintmgmtitf.c
 SOURCE          xametadataextractionitf.c
@@ -67,6 +66,7 @@
 SOURCE 		xastreaminformationitf.c
 SOURCE          xanokialinearvolumeitf.c
 SOURCE          xanokiavolumeextitf.c
+SOURCE          xavideopostprocessingitf.c
 
 SOURCEPATH      ../src/engine
 SOURCE          xaaudioencodercapabilitiesitf.c
@@ -85,7 +85,6 @@
 SOURCEPATH      ../src/mediarecorder
 SOURCE          xaaudioencoderitf.c
 SOURCE          xamediarecorder.c
-SOURCE          xametadatainsertionitf.c
 SOURCE          xarecorditf.c
 
 SOURCEPATH      ../src/metadataextractor
@@ -96,9 +95,6 @@
 SOURCE		xaradioitf.c
 
 SOURCEPATH      ../src/mmf_adaptation
-//	Removing below file since currently there is no Engine related
-// 	mmf adaptation
-//SOURCE          xaengineadaptctxmmf.c
 SOURCE	        xamediaplayeradaptctxmmf.c
 SOURCE	        xaplayitfadaptationmmf.c
 SOURCE	        xaadaptationmmf.c
@@ -120,6 +116,9 @@
 SOURCE  	cmetadatautilityitf.cpp
 SOURCE		xametadataadaptctxmmf.c
 SOURCE		xaplaybackrateitfadaptationmmf.c
+SOURCE 		xaprefetchstatusitfadaptationmmf.c
+SOURCE		prefetchlevelupdatetimer.cpp
+SOURCE      	xavideopostprosessingitfadaptationmmf.c
 
 USERINCLUDE     ../inc
 USERINCLUDE     ../src
@@ -137,7 +136,15 @@
 OS_LAYER_LIBC_SYSTEMINCLUDE
 OS_LAYER_GLIB_SYSTEMINCLUDE
 MW_LAYER_GSTREAMER_SYSTEMINCLUDE
+
+#if defined (MW_LAYER_KHRONOS_SYSTEMINCLUDE)
+MW_LAYER_KHRONOS_SYSTEMINCLUDE
+#else
 SYSTEMINCLUDE /epoc32/include/platform/mw/khronos 
+#endif
+
+SOURCEPATH      ../src/xadebugtraceutility
+SOURCE          xadebugtraceutility.cpp
 
 LIBRARY         euser.lib
 LIBRARY         libc.lib
@@ -162,5 +169,6 @@
 LIBRARY 	libgstcoreelements.lib
 LIBRARY		libgstcoreindexers.lib
 LIBRARY 	MetaDataUtility.lib
+LIBRARY		libgstdevsoundext.lib
 STATICLIBRARY   hxmetadatautil.lib
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/inc/xadebugtraceutility.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,43 @@
+/*
+* Copyright (c) 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"
+* 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:  xadebugtraceutility header
+*
+*/
+
+#ifndef XADEBUGTRACEUTILITY_H
+#define XADEBUGTRACEUTILITY_H
+
+/* Functions to be used by c files */
+#ifdef _cplusplus
+extern "C" {
+#endif
+
+void xa_print(const char* formatString);
+void xa_print_1(const char* formatString, int a1);
+void xa_print_1_str(const char* formatString, const char* a1);
+void xa_print_2(const char* formatString, int a1, int a2);
+void xa_print_2_str(const char* formatString, const char* a1, const char* a2);
+void xa_print_3(const char* formatString, int a1, int a2, int a3);
+void xa_print_4(const char* formatString, int a1, int a2, int a3, int a4);
+void xa_heap_total_alloc_print(const char* formatString);
+#ifdef _cplusplus
+}
+#endif
+
+/* Functions to be used by cpp files */
+void xa_cppprint(const char* formatString);
+void xa_cppprint_1(const char* formatString, int a1);
+void xa_cppprint_2(const char* formatString, int a1, int a2);
+
+#endif /* XADEBUGTRACEUTILITY_H */
--- a/khronosfws/openmax_al/src/adptcommon/xaadptbasectx.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/adptcommon/xaadptbasectx.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,6 @@
  *
  */
 
-#include <assert.h>
 #include <string.h>
 #include "xaadptbasectx.h"
 #include "xathreadsafety.h"
@@ -37,7 +36,7 @@
                     sizeof(XAAdaptEvtHdlr));
             if (!pSelf->evtHdlrs)
                 {
-                DEBUG_ERR("Memory allocation failure in Base Ctx.")
+                DEBUG_ERR("Memory allocation failure in Base Ctx.");
                 return XA_RESULT_MEMORY_FAILURE;
                 }
             }
@@ -45,7 +44,7 @@
         }
     else
         {
-        DEBUG_ERR("Invalid Adaptation Base Context.")
+        DEBUG_ERR("Invalid Adaptation Base Context.");
         return XA_RESULT_PARAMETER_INVALID;
         }
 
--- a/khronosfws/openmax_al/src/adptcommon/xaadptbasectx.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/adptcommon/xaadptbasectx.h	Mon Oct 04 00:51:56 2010 +0300
@@ -69,29 +69,29 @@
 /* TYPEDEFS */
 
 /* Adaptation device IDs */
-#define XA_ADAPTID_DEVSOUNDSRC      0xAD7E5001
-#define XA_ADAPTID_DEVSOUNDSINK     0xAD7E5002
-#define XA_ADAPTID_AUTOAUDIOSINK    0xAD7E5003
-#define XA_ADAPTID_AUDIOTESTSRC     0xAD7E5004
-#define XA_ADAPTID_AUTOVIDEOSINK    0xAD7E5005
-#define XA_ADAPTID_VIDEOTESTSRC     0xAD7E5006
-#define XA_ADAPTID_V4L2SRC          0xAD7E5007
-#define XA_ADAPTID_JACKSINK         0xAD7E5008
-#define XA_ADAPTID_MOTIONJPEG       0xAD7E5009
-#define XA_ADAPTID_THEORA           0xAD7E500A
-#define XA_ADAPTID_VORBIS           0xAD7E500B
-
-#define XA_ADAPTID_VIBRA            0xAD7E500C
-#define XA_ADAPTID_LEDARRAY         0xAD7E500D
-
-#define XA_ADAPTID_RAWVIDEO         0xAD7E500E
-
+#define XA_ADAPTID_DEVSOUNDSRC_MIC          0xAD7E5001
+#define XA_ADAPTID_DEVSOUNDSINK             0xAD7E5002
+#define XA_ADAPTID_AUTOAUDIOSINK            0xAD7E5003
+#define XA_ADAPTID_AUDIOTESTSRC             0xAD7E5004
+#define XA_ADAPTID_AUTOVIDEOSINK            0xAD7E5005
+#define XA_ADAPTID_VIDEOTESTSRC             0xAD7E5006
+#define XA_ADAPTID_V4L2SRC                  0xAD7E5007
+#define XA_ADAPTID_JACKSINK                 0xAD7E5008
+#define XA_ADAPTID_MOTIONJPEG               0xAD7E5009
+#define XA_ADAPTID_THEORA                   0xAD7E500A
+#define XA_ADAPTID_VORBIS                   0xAD7E500B
+#define XA_ADAPTID_VIBRA                    0xAD7E500C
+#define XA_ADAPTID_LEDARRAY                 0xAD7E500D
+#define XA_ADAPTID_RAWVIDEO                 0xAD7E500E
+#define XA_ADAPTID_DEVSOUNDSRC_FMRX         0xAD7E500F
+#define XA_ADAPTID_DEVSOUNDSRC_CALL         0xAD7E5010    
+    
 #define XA_ADAPT_DEFAULTAUDIOOUTPUT XA_ADAPTID_DEVSOUNDSINK
 
 #ifdef XA_USE_TEST_PLUGINS
 #define XA_ADAPT_DEFAULTAUDIOINPUT  XA_ADAPTID_AUDIOTESTSRC
 #else
-#define XA_ADAPT_DEFAULTAUDIOINPUT  XA_ADAPTID_DEVSOUNDSRC
+#define XA_ADAPT_DEFAULTAUDIOINPUT  XA_ADAPTID_DEVSOUNDSRC_MIC
 #endif
 
 #define XA_ADAPT_OGGPROFILE_UNKNOWN 0x1
--- a/khronosfws/openmax_al/src/adptcommon/xacapabilitiesmgr.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/adptcommon/xacapabilitiesmgr.c	Mon Oct 04 00:51:56 2010 +0300
@@ -19,86 +19,128 @@
 #include "xacapabilitiesmgr.h"
 #include "xammfcapabilitiesmgr.h"
 #include "xagstcapabilitiesmgr.h"
+#include "xaadptbasectx.h"
 #include <stdio.h>
 #include <string.h>
 
-static XAresult XACapabilitiesMgr_GetAudioInputDeviceCapabilities(
+static XAresult XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities(
+        XACapabilities **ppNode);
+static XAresult XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities(
+        XACapabilities **ppNode);
+static XAresult XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities(
         XACapabilities **ppNode);
 static XAresult XACapabilitiesMgr_GetAudioOutputDeviceCapabilities(
         XACapabilities **ppNode);
 
 /* XAresult XAGSTCapabilitiesMgr_UpdateAudioIOCapabilitieList
- * Description: Update the capabilities list supported by GStreamer framework.
+ * Description: Update the capabilities list supported by the engine.
  */
 XAresult XACapabilitiesMgr_UpdateAudioIOCapabilitieList(
         FrameworkMap *frameworkMap, XACapabilities **ppListHead)
 
     {
     XAresult res = XA_RESULT_SUCCESS;
-    XACapabilities *lastNode;
-    XACapabilities *firstNode;
+    XACapabilities *lastNode = NULL;
+    XACapabilities *firstNode = NULL;
     XACapabilities *newNode = NULL;
 
+    DEBUG_API("->XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
+
     if (!frameworkMap || !ppListHead)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
+        return XA_RESULT_PARAMETER_INVALID;
+        }
+
+    res = XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities(&newNode);
+    if (res != XA_RESULT_SUCCESS)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+        DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
         return res;
         }
 
-    lastNode = *ppListHead;
-    firstNode = *ppListHead;
-
-    DEBUG_API("->XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
-
-    /* traverse and point to the last node in the list */
-    while (lastNode && lastNode->next)
+    if (!firstNode)
         {
-        lastNode = lastNode->next;
+        firstNode = newNode;
+        lastNode = newNode;
         }
-
-    /* If no input devices are supported, the function returns
-     * XA_RESULT_SUCCESS and newNode will be NULL*/
-    newNode = NULL;
-    res = XACapabilitiesMgr_GetAudioInputDeviceCapabilities(&newNode);
+    
+    res = XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities(&newNode);
     if (res != XA_RESULT_SUCCESS)
         {
+        XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+        DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
         return res;
         }
 
-    if (lastNode)
+    if (!firstNode)
+        {
+        firstNode = newNode;
+        lastNode = newNode;
+        }
+    else
         {
         lastNode->next = newNode;
+        lastNode = newNode;
         }
-    if (newNode)
-        { /* if a new node is created move lastNode to the new item */
-        if (!firstNode)
-            firstNode = newNode;
+    
+    res = XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities(&newNode);
+    if (res != XA_RESULT_SUCCESS)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+        DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
+        return res;
+        }
+
+    if (!firstNode)
+        {
+        firstNode = newNode;
+        lastNode = newNode;
+        }
+    else
+        {
+        lastNode->next = newNode;
         lastNode = newNode;
         }
 
-    /* If no input devices are supported, the function returns
-     * XA_RESULT_SUCCESS and newNode will be NULL*/
-    newNode = NULL;
     res = XACapabilitiesMgr_GetAudioOutputDeviceCapabilities(&newNode);
     if (res != XA_RESULT_SUCCESS)
         {
+        XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+        DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
         return res;
         }
 
-    if (lastNode)
+    if (!firstNode)
+        {
+        firstNode = newNode;
+        lastNode = newNode;
+        }
+    else
         {
         lastNode->next = newNode;
-        }
-    if (newNode)
-        { /* if a new node is created move lastNode to the new item */
-        if (!firstNode)
-            firstNode = newNode;
         lastNode = newNode;
         }
-    /* if empty list, then append first node as the head */
-    if (!(*ppListHead))
+
+    /* if we have some iodevice capabilities in the list */
+    if (firstNode)
         {
-        *ppListHead = firstNode;
+        /* if empty list, then append first node as the head */
+        if (!(*ppListHead))
+            {
+            *ppListHead = firstNode;
+            }
+        else /* traverse to the last item in the list and link firstNode to it */
+            {
+            lastNode = *ppListHead;
+            while(lastNode->next)
+                {
+                lastNode = lastNode->next;
+                }
+            lastNode->next = firstNode;
+            }
         }
     DEBUG_API("<-XACapabilitiesMgr_UpdateAudioIOCapabilitieList");
     return res;
@@ -109,10 +151,13 @@
     {
     XACapabilities* list = NULL;
     XAresult res = XA_RESULT_SUCCESS;
-    if (!ppListHead)
+
+    DEBUG_API("->XACapabilitiesMgr_CreateCapabilitieList");
+    if (!frameworkMap || !ppListHead)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_CreateCapabilitieList");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     *ppListHead = NULL;
@@ -121,6 +166,7 @@
     if (res != XA_RESULT_SUCCESS)
         {
         XACapabilitiesMgr_DeleteCapabilitieList(&list);
+        DEBUG_API("<-XACapabilitiesMgr_CreateCapabilitieList");
         return res;
         }
 
@@ -128,6 +174,7 @@
     if (res != XA_RESULT_SUCCESS)
         {
         XACapabilitiesMgr_DeleteCapabilitieList(&list);
+        DEBUG_API("<-XACapabilitiesMgr_CreateCapabilitieList");
         return res;
         }
 
@@ -135,10 +182,12 @@
     if (res != XA_RESULT_SUCCESS)
         {
         XACapabilitiesMgr_DeleteCapabilitieList(&list);
+        DEBUG_API("<-XACapabilitiesMgr_CreateCapabilitieList");
         return res;
         }
 
     *ppListHead = list;
+    DEBUG_API("<-XACapabilitiesMgr_CreateCapabilitieList");
     return res;
     }
 
@@ -148,10 +197,12 @@
     XACapabilities* nextNode = NULL;
     XAresult res = XA_RESULT_SUCCESS;
 
+    DEBUG_API("->XACapabilitiesMgr_DeleteCapabilitieList");
     if (!ppListHead)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_DeleteCapabilitieList");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     currNode = *ppListHead;
@@ -192,7 +243,6 @@
                 free(entries[i].pBitratesSupported);
                 }
             free(entries);
-
             }
 
         if (currNode->adaptId)
@@ -206,6 +256,8 @@
         }
 
     *ppListHead = NULL;
+
+    DEBUG_API("<-XACapabilitiesMgr_DeleteCapabilitieList");
     return res;
     }
 
@@ -222,8 +274,9 @@
     DEBUG_API("->XACapabilitiesMgr_GetCapsCount");
     if (!currNode || !count)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_GetCapsCount");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     (*count) = 0;
@@ -254,8 +307,9 @@
 
     if (!currNode)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_GetCapsById");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     while (currNode)
@@ -272,8 +326,9 @@
 
     if (!found)
         {
-        res = XA_RESULT_FEATURE_UNSUPPORTED;
-        return res;
+        DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
+        DEBUG_API("<-XACapabilitiesMgr_GetCapsById");
+        return XA_RESULT_FEATURE_UNSUPPORTED;
         }
 
     DEBUG_API("<-XACapabilitiesMgr_GetCapsById");
@@ -295,8 +350,9 @@
 
     if (!currNode)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_GetCapsByIdx");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     while (currNode)
@@ -315,8 +371,9 @@
 
     if (!found)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_GetCapsByIdx");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     DEBUG_API("<-XACapabilitiesMgr_GetCapsByIdx");
@@ -336,9 +393,9 @@
 
     if (!pIndex)
         {
-        DEBUG_ERR("illegal NULL parameter");
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XACapabilitiesMgr_QueryColorFormats");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     res = XACapabilitiesMgr_GetCapsById(pListHead,
@@ -354,7 +411,7 @@
             { /* query color format */
             if (*pIndex >= 1) /* one used by camera context */
                 {
-                DEBUG_ERR("index parameter invalid");
+                DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
                 res = XA_RESULT_PARAMETER_INVALID;
                 }
             else
@@ -373,24 +430,106 @@
     }
 
 /* Add AudioInputDeviceCaps */
-XAresult XACapabilitiesMgr_GetAudioInputDeviceCapabilities(
+XAresult XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities(
         XACapabilities** ppNode)
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
     XAAudioInputDescriptor *entries = NULL;
-    XAchar micDeviceName[] = "Default Mic";
+    XAchar inpDeviceName[] = "Default Mic";
     int strLen = 0;
 
+    DEBUG_API("->XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_I;
-    newNode->xaid = 0xAD7E5001;
+    newNode->xaid = XA_ADAPTID_DEVSOUNDSRC_MIC;
+    newNode->noOfEntries = 1;
+
+    /* Allocate array */
+    entries = (XAAudioInputDescriptor*) calloc(1,
+            sizeof(XAAudioInputDescriptor));
+    if (!entries)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    newNode->pEntry = (void*) entries;
+
+    strLen = strlen((char*) inpDeviceName);
+    entries->deviceName = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
+    if (!entries->deviceName)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    strncpy((char*) entries->deviceName, (char*) inpDeviceName, strLen);
+    entries->deviceName[strLen] = '\0'; /*Null terminate it*/
+    entries->deviceConnection = XA_DEVCONNECTION_INTEGRATED;
+    entries->deviceScope = XA_DEVSCOPE_ENVIRONMENT;
+    entries->deviceLocation = XA_DEVLOCATION_HANDSET;
+    entries->isForTelephony = XA_BOOLEAN_FALSE;
+    entries->minSampleRate = 8000000; /* milliHz */
+    entries->maxSampleRate = 48000000; /* milliHz */
+    entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    entries->numOfSamplingRatesSupported = 5;
+    entries->samplingRatesSupported = (XAmilliHertz*) calloc(
+            entries->numOfSamplingRatesSupported, sizeof(XAmilliHertz));
+    if (!entries->samplingRatesSupported)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    /* entries in milliHz */
+    entries->samplingRatesSupported[0] = 8000000;
+    entries->samplingRatesSupported[1] = 16000000;
+    entries->samplingRatesSupported[2] = 24000000;
+    entries->samplingRatesSupported[3] = 32000000;
+    entries->samplingRatesSupported[4] = 48000000;
+    entries->maxChannels = 2;
+
+    newNode->pEntry = (void*) entries;
+
+    *ppNode = newNode;
+    DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceMicCapabilities");
+    return res;
+    }
+
+/* Add AudioInputDeviceCaps */
+XAresult XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities(
+        XACapabilities** ppNode)
+    {
+    XAresult res = XA_RESULT_SUCCESS;
+    XACapabilities *newNode = NULL;
+    XAAudioInputDescriptor *entries = NULL;
+    XAchar inpDeviceName[] = "FMRadio Recvr";
+    int strLen = 0;
+
+    DEBUG_API("->XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+    newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
+    if (!newNode)
+        {
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    newNode->capsType = AUD_I;
+    newNode->xaid = XA_ADAPTID_DEVSOUNDSRC_FMRX;
     newNode->noOfEntries = 1;
 
     /* Allocate array */
@@ -398,58 +537,135 @@
             sizeof(XAAudioInputDescriptor));
     if (!entries)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->pEntry = (void*) entries;
 
-    strLen = strlen((char*) micDeviceName);
+    strLen = strlen((char*) inpDeviceName);
     entries->deviceName = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
     if (!entries->deviceName)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
-    strncpy((char*) entries->deviceName, (char*) micDeviceName, strLen);
+    strncpy((char*) entries->deviceName, (char*) inpDeviceName, strLen);
     entries->deviceName[strLen] = '\0'; /*Null terminate it*/
     entries->deviceConnection = XA_DEVCONNECTION_INTEGRATED;
     entries->deviceScope = XA_DEVSCOPE_ENVIRONMENT;
     entries->deviceLocation = XA_DEVLOCATION_HANDSET;
     entries->isForTelephony = XA_BOOLEAN_FALSE;
     entries->minSampleRate = 8000000; /* milliHz */
-    entries->maxSampleRate = 96000000; /* milliHz */
+    entries->maxSampleRate = 48000000; /* milliHz */
     entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numOfSamplingRatesSupported = 12;
+    entries->numOfSamplingRatesSupported = 5;
     entries->samplingRatesSupported = (XAmilliHertz*) calloc(
             entries->numOfSamplingRatesSupported, sizeof(XAmilliHertz));
     if (!entries->samplingRatesSupported)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
     /* entries in milliHz */
     entries->samplingRatesSupported[0] = 8000000;
-    entries->samplingRatesSupported[1] = 11025000;
-    entries->samplingRatesSupported[2] = 12000000;
-    entries->samplingRatesSupported[3] = 16000000;
-    entries->samplingRatesSupported[4] = 22050000;
-    entries->samplingRatesSupported[5] = 24000000;
-    entries->samplingRatesSupported[6] = 32000000;
-    entries->samplingRatesSupported[7] = 44100000;
-    entries->samplingRatesSupported[8] = 48000000;
-    entries->samplingRatesSupported[9] = 64000000;
-    entries->samplingRatesSupported[10] = 88200000;
-    entries->samplingRatesSupported[11] = 96000000;
+    entries->samplingRatesSupported[1] = 16000000;
+    entries->samplingRatesSupported[2] = 24000000;
+    entries->samplingRatesSupported[3] = 32000000;
+    entries->samplingRatesSupported[4] = 48000000;
     entries->maxChannels = 2;
 
     newNode->pEntry = (void*) entries;
 
     *ppNode = newNode;
+    DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceFMRxCapabilities");
+    return res;
+    }
+
+/* Add AudioInputDeviceCaps */
+XAresult XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities(
+        XACapabilities** ppNode)
+    {
+    XAresult res = XA_RESULT_SUCCESS;
+    XACapabilities *newNode = NULL;
+    XAAudioInputDescriptor *entries = NULL;
+    XAchar inpDeviceName[] = "Call";
+    int strLen = 0;
+
+    DEBUG_API("->XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
+    newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
+    if (!newNode)
+        {
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    newNode->capsType = AUD_I;
+    newNode->xaid = XA_ADAPTID_DEVSOUNDSRC_CALL;
+    newNode->noOfEntries = 1;
+
+    /* Allocate array */
+    entries = (XAAudioInputDescriptor*) calloc(1,
+            sizeof(XAAudioInputDescriptor));
+    if (!entries)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    newNode->pEntry = (void*) entries;
+
+    strLen = strlen((char*) inpDeviceName);
+    entries->deviceName = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
+    if (!entries->deviceName)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+
+    strncpy((char*) entries->deviceName, (char*) inpDeviceName, strLen);
+    entries->deviceName[strLen] = '\0'; /*Null terminate it*/
+    entries->deviceConnection = XA_DEVCONNECTION_INTEGRATED;
+    entries->deviceScope = XA_DEVSCOPE_ENVIRONMENT;
+    entries->deviceLocation = XA_DEVLOCATION_HANDSET;
+    entries->isForTelephony = XA_BOOLEAN_FALSE;
+    entries->minSampleRate = 8000000; /* milliHz */
+    entries->maxSampleRate = 48000000; /* milliHz */
+    entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    entries->numOfSamplingRatesSupported = 5;
+    entries->samplingRatesSupported = (XAmilliHertz*) calloc(
+            entries->numOfSamplingRatesSupported, sizeof(XAmilliHertz));
+    if (!entries->samplingRatesSupported)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    /* entries in milliHz */
+    entries->samplingRatesSupported[0] = 8000000;
+    entries->samplingRatesSupported[1] = 16000000;
+    entries->samplingRatesSupported[2] = 24000000;
+    entries->samplingRatesSupported[3] = 32000000;
+    entries->samplingRatesSupported[4] = 48000000;
+    entries->maxChannels = 2;
+
+    newNode->pEntry = (void*) entries;
+
+    *ppNode = newNode;
+    DEBUG_API("<-XACapabilitiesMgr_GetAudioInputDeviceCallCapabilities");
     return res;
     }
 
@@ -462,15 +678,17 @@
     XAchar outputDeviceName[] = "Default Speaker";
     int strLen = 0;
 
+    DEBUG_API("->XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_O;
-    newNode->xaid = 0xAD7E5002;
+    newNode->xaid = XA_ADAPTID_DEVSOUNDSINK;
     newNode->noOfEntries = 1;
 
     /* Allocate array */
@@ -478,9 +696,10 @@
             sizeof(XAAudioOutputDescriptor));
     if (!entries)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->pEntry = (void*) entries;
@@ -489,9 +708,10 @@
     entries->pDeviceName = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
     if (!entries->pDeviceName)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
     strncpy((char*) entries->pDeviceName, (char*) outputDeviceName, strLen);
     entries->pDeviceName[strLen] = '\0'; /*Null terminate it*/
@@ -500,35 +720,30 @@
     entries->deviceLocation = XA_DEVLOCATION_HANDSET;
     entries->isForTelephony = XA_BOOLEAN_FALSE;
     entries->minSampleRate = 8000000; /* milliHz */
-    entries->maxSampleRate = 96000000; /* milliHz */
+    entries->maxSampleRate = 48000000; /* milliHz */
     entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numOfSamplingRatesSupported = 12;
+    entries->numOfSamplingRatesSupported = 5;
     entries->samplingRatesSupported = (XAmilliHertz*) calloc(
             entries->numOfSamplingRatesSupported, sizeof(XAmilliHertz));
     if (!entries->samplingRatesSupported)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
     /* entries in milliHz */
     entries->samplingRatesSupported[0] = 8000000;
-    entries->samplingRatesSupported[1] = 11025000;
-    entries->samplingRatesSupported[2] = 12000000;
-    entries->samplingRatesSupported[3] = 16000000;
-    entries->samplingRatesSupported[4] = 22050000;
-    entries->samplingRatesSupported[5] = 24000000;
-    entries->samplingRatesSupported[6] = 32000000;
-    entries->samplingRatesSupported[7] = 44100000;
-    entries->samplingRatesSupported[8] = 48000000;
-    entries->samplingRatesSupported[9] = 64000000;
-    entries->samplingRatesSupported[10] = 88200000;
-    entries->samplingRatesSupported[11] = 96000000;
+    entries->samplingRatesSupported[1] = 16000000;
+    entries->samplingRatesSupported[2] = 24000000;
+    entries->samplingRatesSupported[3] = 32000000;
+    entries->samplingRatesSupported[4] = 48000000;
     entries->maxChannels = 2;
 
     newNode->pEntry = (void*) entries;
 
     *ppNode = newNode;
+
+    DEBUG_API("<-XACapabilitiesMgr_GetAudioOutputDeviceCapabilities");
     return res;
     }
-
--- a/khronosfws/openmax_al/src/adptcommon/xaframeworkmgr.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/adptcommon/xaframeworkmgr.c	Mon Oct 04 00:51:56 2010 +0300
@@ -18,6 +18,7 @@
 #include <stdio.h>
 #include <string.h>
 #include "xaframeworkmgr.h"
+#include "xadebug.h"
 
 /* Default line width permitted in the cfg file + 2 to hold "\r\n"*/
 #define LINEWIDTH 82
@@ -79,60 +80,65 @@
     FrameworkMap *curNode = NULL;
     FWMgrBool newNode;
     FrameworkMap *frameworkMap = NULL;
+    FILE* fp = NULL;
 
-    FILE* fp = fopen(configFileLocationC, "r");
+    DEBUG_API("->XAFrameworkMgr_CreateFrameworkMap");
+    /* Open file on C drive */
+    DEBUG_INFO("Opening configuration file from C drive...");
+    fp = fopen(configFileLocationC, "r");
     if (fp == NULL)
         {
+        DEBUG_INFO("Opening configuration file from Z drive...");
         fp = fopen(configFileLocationZ, "r");
         }
 
-    if (fp != NULL)
+    if (fp == NULL)
+        {
+        DEBUG_ERR("ERROR: Unable to open configuration file!");
+        DEBUG_API("<-XAFrameworkMgr_CreateFrameworkMap");
+        return NULL;
+        }
+    while ((fgets(buffer, LINEWIDTH, fp) != NULL) && processedEntry)
         {
-        while ((fgets(buffer, LINEWIDTH, fp) != NULL) && processedEntry)
-            {
-            /* keep looping until NULL pointer OR error... */
-            lineNumber++;
-            readSize = strlen(buffer);
-            /* Ignore comments line */
-            if (buffer[0] == '#')
-                continue;
+        /* keep looping until NULL pointer OR error... */
+        lineNumber++;
+        readSize = strlen(buffer);
+        /* Ignore comments line */
+        if (buffer[0] == '#')
+            continue;
 
-            /* Ignore replace "\r\n" with '\0' */
-            if ((readSize >= 2) && (buffer[readSize - 2] == '\r')
-                    && (buffer[readSize - 1] == '\n'))
-                buffer[readSize - 2] = '\0';
-
-            /* Ignore new line... */
-            if (readSize == 2)
-                continue;
+        /* Ignore replace "\r\n" with '\0' */
+        if ((readSize >= 2) && (buffer[readSize - 2] == '\r')
+                && (buffer[readSize - 1] == '\n'))
+            buffer[readSize - 2] = '\0';
 
-            processedEntry = processConfigEntry(buffer, &currentMediaType,
-                    &currentFrameworkType, &currentTagType, &newNode,
-                    &curNode);
-            if (newNode)
+        /* Ignore new line... */
+        if (readSize == 2)
+            continue;
+
+        processedEntry = processConfigEntry(buffer, &currentMediaType,
+                &currentFrameworkType, &currentTagType, &newNode,
+                &curNode);
+        if (newNode)
+            {
+            /*Just link to the last element in the chain*/
+            if (!frameworkMap)
                 {
-                /*Just link to the last element in the chain*/
-                if (!frameworkMap)
+                frameworkMap = curNode;
+                }
+            else
+                {
+                FrameworkMap *lastNode = frameworkMap;
+                while (lastNode->next)
                     {
-                    frameworkMap = curNode;
+                    lastNode = lastNode->next;
                     }
-                else
-                    {
-                    FrameworkMap *lastNode = frameworkMap;
-                    while (lastNode->next)
-                        {
-                        lastNode = lastNode->next;
-                        }
-                    lastNode->next = curNode;
-                    }
+                lastNode->next = curNode;
                 }
             }
-        fclose(fp);
         }
-    else
-        {
-        printf("unable to open config file!\n");
-        }
+    fclose(fp);
+    DEBUG_API("<-XAFrameworkMgr_CreateFrameworkMap");
     return frameworkMap;
     }
 
@@ -145,31 +151,50 @@
     FrameworkMap *node = map;
     int i;
     int loopIndex = 0;
+
+    DEBUG_API("->XAFrameworkMgr_DumpFrameworkMap");
     while (node)
         {
         loopIndex++;
-        printf("%d>", loopIndex);
+        DEBUG_INFO_A1("%d>", loopIndex);
         if (node->moType == FWMgrMOPlayer)
-            printf("MediaPlayer-");
+            {
+            DEBUG_INFO("MediaPlayer-");
+            }
         else if (node->moType == FWMgrMORecorder)
-            printf("MediaRecrdr-");
+            {
+            DEBUG_INFO("MediaRecrdr-");
+            }
         else
-            printf("UKNOWN-");
+            {
+            DEBUG_INFO("UKNOWN-");
+            }
         if (node->fwType == FWMgrFWMMF)
-            printf("MMF-");
+            {
+            DEBUG_INFO("MMF-");
+            }
         else if (node->fwType == FWMgrFWGST)
-            printf("GST-");
+            {
+            DEBUG_INFO("GST-");
+            }
         else
-            printf("UKNOWN-");
-        printf("Scheme[");
+            {
+            DEBUG_INFO("UKNOWN-");
+            }
+        DEBUG_INFO("Scheme[");
         for (i = 0; i < node->uriSchemeCount; i++)
-            printf(" %s", node->uriSchemes[i]);
+            {
+            DEBUG_INFO_A1_STR(" %s", node->uriSchemes[i]);
+            }
         printf("]FileExt[");
         for (i = 0; i < node->fileExtCount; i++)
-            printf(" %s", node->fileExts[i]);
-        printf("]\n");
+            {
+            DEBUG_INFO_A1_STR(" %s", node->fileExts[i]);
+            }
+        DEBUG_INFO("]\n");
         node = node->next;
         }
+    DEBUG_API("<-XAFrameworkMgr_DumpFrameworkMap");
     }
 #endif
 
@@ -181,6 +206,7 @@
     FrameworkMap *node = *map;
     FrameworkMap *nextNode = NULL;
     int i;
+    DEBUG_API("->XAFrameworkMgr_DeleteFrameworkMap");
     while (node)
         {
         for (i = 0; i < node->uriSchemeCount; i++)
@@ -196,6 +222,7 @@
         node = nextNode;
         }
     *map = NULL;
+    DEBUG_API("<-XAFrameworkMgr_DeleteFrameworkMap");
     }
 
 /* FWMgrFwType XAFrameworkMgr_GetFramework
@@ -214,17 +241,21 @@
     int i = 0;
     int copyLen = 0;
 
+    DEBUG_API("->XAFrameworkMgr_GetFramework");
     if (!map || !uri)
         {
-        /* TODO Log invalid uri */
+        DEBUG_ERR("NULL map/uri");
+        DEBUG_API("<-XAFrameworkMgr_GetFramework");
         return retVal;
         }
 
+    DEBUG_INFO_A1_STR("uri[%s]", uri);
     /* Get uri scheme */
     uriScheme = strchr(uri, ':');
     if (uriScheme == NULL)
         {
-        /* TODO Log invalid uri */
+        DEBUG_ERR("malformed URI. Could not find [:]");
+        DEBUG_API("<-XAFrameworkMgr_GetFramework");
         return retVal;
         }
 
@@ -239,7 +270,8 @@
         char* dotLoc = strrchr(uri, '.');
         if (dotLoc == NULL)
             {
-            /* TODO Log invalid uri */
+            DEBUG_ERR("malformed URI. Could not find extension char[.]");
+            DEBUG_API("<-XAFrameworkMgr_GetFramework");
             free(uriScheme);
             return retVal;
             }
@@ -260,8 +292,9 @@
             for (i = 0; i < node->uriSchemeCount; i++)
                 {
                 if (strcasecmp(uriScheme, node->uriSchemes[i]) == 0)
-                    {
+                    {                    
                     uriMatchFound = FWMgrTrue;
+                    DEBUG_INFO_A1_STR("Found macthing framework for scheme[%s]", uriScheme);
                     break;
                     }
                 }
@@ -277,15 +310,17 @@
                     if (strcasecmp(fileExt, node->fileExts[i]) == 0)
                         {
                         fileExtMatchFound = FWMgrTrue;
+                        DEBUG_INFO_A1_STR("Found macthing framework for fileext[%s]", fileExt);
                         break;
                         }
                     }
                 }
 
-            if ((uriMatchFound == FWMgrTrue) && (fileExtMatchFound
-                    == FWMgrTrue))
+            if ((uriMatchFound == FWMgrTrue) &&
+                    (fileExtMatchFound == FWMgrTrue))
                 {
                 retVal = node->fwType;
+                DEBUG_INFO_A1("Framework is[%d]", (int)retVal);
                 break;
                 }
             }
@@ -293,6 +328,7 @@
         }
     free(uriScheme);
     free(fileExt);
+    DEBUG_API("<-XAFrameworkMgr_GetFramework");
     return retVal;
     }
 
--- a/khronosfws/openmax_al/src/common/xacommon.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xacommon.c	Mon Oct 04 00:51:56 2010 +0300
@@ -99,7 +99,7 @@
             FILE* file = fopen((char*) fname, "r");
             if (!file)
                 {
-                DEBUG_INFO_A1("%s not found from filesystem", fname);
+                DEBUG_INFO_A1_STR("%s not found from filesystem", (char *)fname);
                 ret = XA_RESULT_CONTENT_NOT_FOUND;
                 }
             else
@@ -251,7 +251,7 @@
         if (counter > 0)
             {
             /*XADataSink and XADataSrc are equivalent, use XADataSink for both*/
-xaSnk            = va_arg(argptr, XADataSink*);
+            xaSnk = va_arg(argptr, XADataSink*);
             }
         if( !xaSnk )
             { /*NULL sinks/sources are possible, not checked here*/
@@ -269,63 +269,63 @@
         switch ( *(XAuint32*)(xaSnk->pLocator) )
             {
             case XA_DEFAULTDEVICEID_AUDIOOUTPUT:
-            DEBUG_INFO("XA_DEFAULTDEVICEID_AUDIOOUTPUT");
-            uri = (XADataLocator_URI*)xaSnk->pLocator;
-            break;
+                DEBUG_INFO("XA_DEFAULTDEVICEID_AUDIOOUTPUT");
+                uri = (XADataLocator_URI*)xaSnk->pLocator;
+                break;
             case XA_DATALOCATOR_URI:
-            DEBUG_INFO("XA_DATALOCATOR_URI");
-            uri = (XADataLocator_URI*)xaSnk->pLocator;
-            if( !uri->URI && !xaSnk->pFormat )
-                {
-                DEBUG_ERR("Invalid parameter set for uri ");
-                ret = XA_RESULT_PARAMETER_INVALID;
-                }
-            break;
-            case XA_DATALOCATOR_NATIVEDISPLAY:
-            DEBUG_INFO("Sink locator type - XA_DATALOCATOR_NATIVEDISPLAY");
-            display = (XADataLocator_NativeDisplay*)(xaSnk->pLocator);
-            if( !display->hDisplay || !display->hWindow )
-                {
-                /*No action at this time*/
-                DEBUG_INFO("Warning - no display or window handle set");
-                }
-            break;
-            case XA_DATALOCATOR_OUTPUTMIX:
-            DEBUG_INFO("Sink locator type - XA_DATALOCATOR_OUTPUTMIX");
-                {
-                omix = (XADataLocator_OutputMix*)(xaSnk->pLocator);
-                if ( !omix->outputMix )
+                DEBUG_INFO("XA_DATALOCATOR_URI");
+                uri = (XADataLocator_URI*)xaSnk->pLocator;
+                if( !uri->URI && !xaSnk->pFormat )
                     {
-                    DEBUG_ERR("Invalid parameter set for outputmix");
+                    DEBUG_ERR("Invalid parameter set for uri ");
                     ret = XA_RESULT_PARAMETER_INVALID;
                     }
-                }
-            break;
+                break;
+            case XA_DATALOCATOR_NATIVEDISPLAY:
+                DEBUG_INFO("Sink locator type - XA_DATALOCATOR_NATIVEDISPLAY");
+                display = (XADataLocator_NativeDisplay*)(xaSnk->pLocator);
+                if( !display->hDisplay || !display->hWindow )
+                    {
+                    /*No action at this time*/
+                    DEBUG_INFO("Warning - no display or window handle set");
+                    }
+                break;
+            case XA_DATALOCATOR_OUTPUTMIX:
+                DEBUG_INFO("Sink locator type - XA_DATALOCATOR_OUTPUTMIX");
+                    {
+                    omix = (XADataLocator_OutputMix*)(xaSnk->pLocator);
+                    if ( !omix->outputMix )
+                        {
+                        DEBUG_ERR("Invalid parameter set for outputmix");
+                        ret = XA_RESULT_PARAMETER_INVALID;
+                        }
+                    }
+                break;
             case XA_DATALOCATOR_ADDRESS:
-            DEBUG_INFO("XA_DATALOCATOR_ADDRESS");
-            address = (XADataLocator_Address*)(xaSnk->pLocator);
-            if( !address->pAddress && !xaSnk->pFormat )
-                {
-                DEBUG_ERR("Invalid parameter set for address");
-                ret = XA_RESULT_PARAMETER_INVALID;
-                }
-            break;
+                DEBUG_INFO("XA_DATALOCATOR_ADDRESS");
+                address = (XADataLocator_Address*)(xaSnk->pLocator);
+                if( !address->pAddress && !xaSnk->pFormat )
+                    {
+                    DEBUG_ERR("Invalid parameter set for address");
+                    ret = XA_RESULT_PARAMETER_INVALID;
+                    }
+                break;
             case XA_DATALOCATOR_IODEVICE:
-            DEBUG_INFO("XA_DATALOCATOR_IODEVICE");
-            iodevice = (XADataLocator_IODevice*)(xaSnk->pLocator);
-            if( iodevice->device )
-                {
-                DEBUG_INFO("Media object as IODevice");
-                }
-            else
-                {
-                DEBUG_INFO("Iodevice id used");
-                }
-            break;
+                DEBUG_INFO("XA_DATALOCATOR_IODEVICE");
+                iodevice = (XADataLocator_IODevice*)(xaSnk->pLocator);
+                if( iodevice->device )
+                    {
+                    DEBUG_INFO("Media object as IODevice");
+                    }
+                else
+                    {
+                    DEBUG_INFO("Iodevice id used");
+                    }
+                break;
             default:
-            DEBUG_ERR("Incorrect data locator for sink.")
-            ret = XA_RESULT_PARAMETER_INVALID;
-            break;
+                DEBUG_ERR("Incorrect data locator for sink.");
+                ret = XA_RESULT_PARAMETER_INVALID;
+                break;
             }
         counter ++;
         }
--- a/khronosfws/openmax_al/src/common/xaconfigextensionsitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,180 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <assert.h>
-#include <string.h>
-#include "xaglobals.h"
-#include "xaconfigextensionsitf.h"
-
-static XAConfigExtensionsItfImpl* GetImpl(XAConfigExtensionsItf self)
-{
-    if( self )
-    {
-        XAConfigExtensionsItfImpl* impl = (XAConfigExtensionsItfImpl*)(*self);
-        if( impl && (impl == impl->self) )
-        {
-            return impl;
-        }
-    }
-    return NULL;
-}
-
-/**
- * Base interface XAConfigExtensionsItf implementation
- */
-XAresult XAConfigExtensionsItfImpl_SetConfiguration(
-                            XAConfigExtensionsItf self,
-                            const XAchar* configKey,
-                            XAuint32 valueSize,
-                            const void* pConfigValue)
-{
-    XAConfigExtensionsItfImpl* impl = GetImpl(self);
-    XAresult res = XA_RESULT_SUCCESS;
-    DEBUG_API("->XAConfigExtensionsItfImpl_SetConfiguration");
-    if( !impl || !configKey )
-    {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        DEBUG_API("<-XAConfigExtensionsItfImpl_SetConfiguration");
-        return XA_RESULT_PARAMETER_INVALID;
-    }
-    if( strcmp((char *)configKey, CPCONFIGKEY) == 0
-        && pConfigValue )
-    {
-        XAuint8 numValue = *(XAuint8*)(pConfigValue);
-        impl->testbufferconf = numValue;
-        if( numValue>4 )
-        {   /* Conformance tester uses only reference-to-string values, try to parse string to integer
-             * First char is enough since legal values are 0 to 4
-             */
-            XAchar* chVal = *(XAchar**)(pConfigValue);
-            if(chVal)
-            {
-                impl->testbufferconf = *chVal;
-                numValue = (*chVal) - 48;
-            }
-            if( numValue>4 )
-            {
-                res = XA_RESULT_PARAMETER_INVALID;
-            }
-        }
-        DEBUG_INFO_A1("CP conf value %d", numValue);
-        if(res == XA_RESULT_SUCCESS)
-        {
-
-            /*Inform adaptation*/
-            if( impl->ctx )
-            {
-/*                res = XAAdaptationBase_SetCPConfiguration(impl->ctx,impl->testbufferconf);*/
-            }
-
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Unknown key or invalid value pointer");
-        res = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAConfigExtensionsItfImpl_SetConfiguration");
-    return res;
-}
-
-XAresult XAConfigExtensionsItfImpl_GetConfiguration(
-                            XAConfigExtensionsItf self,
-                            const XAchar* configKey,
-                            XAuint32* pValueSize,
-                            void* pConfigValue)
-{
-    XAConfigExtensionsItfImpl* impl = GetImpl(self);
-    XAresult res = XA_RESULT_SUCCESS;
-    DEBUG_API("->XAConfigExtensionsItfImpl_GetConfiguration");
-
-    if( !impl )
-    {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        DEBUG_API("<-XAConfigExtensionsItfImpl_SetConfiguration");
-        return XA_RESULT_PARAMETER_INVALID;
-    }
-
-    if( strcmp((char *)configKey, CPCONFIGKEY) == 0
-            && pValueSize
-            && sizeof(XAuint8) <= *pValueSize
-            && pConfigValue )
-    {
-        memcpy(*(XAuint8**)pConfigValue, &(impl->testbufferconf),1);
-        *pValueSize = sizeof(XAuint8);
-        res = XA_RESULT_SUCCESS;
-    }
-    else
-    {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        res = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAConfigExtensionsItfImpl_GetConfiguration");
-    return res;
-}
-
- 
-XAresult XAConfigExtensionsItfImpl_SetContext(XAConfigExtensionsItfImpl* self,XAAdaptationBaseCtx* adptctx)
-    {
-    XAresult res = XA_RESULT_SUCCESS;
-    DEBUG_API("->XAConfigExtensionsItfImpl_SetContext");
-    if( adptctx && self)
-    {
-        self->ctx = adptctx;
-        res = XA_RESULT_SUCCESS;
-    }
-    else
-    {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        res = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAConfigExtensionsItfImpl_SetContext");
-    return res;
-    }
-
-/**
- * XAConfigExtensionsItfImpl -specific methods
- **/
-XAConfigExtensionsItfImpl* XAConfigExtensionsItfImpl_Create()
-{
-    XAConfigExtensionsItfImpl* self = (XAConfigExtensionsItfImpl*)
-        calloc(1,sizeof(XAConfigExtensionsItfImpl));
-    DEBUG_API("->XAConfigExtensionsItfImpl_Create");
-
-    if(self)
-    {
-        /* init itf default implementation */
-        self->itf.GetConfiguration =
-            XAConfigExtensionsItfImpl_GetConfiguration;
-        self->itf.SetConfiguration =
-            XAConfigExtensionsItfImpl_SetConfiguration;
-        /* init variables */
-        self->self = self;
-    }
-    DEBUG_API("<-XAConfigExtensionsItfImpl_Create");
-    return self;
-}
-
-void XAConfigExtensionsItfImpl_Free(XAConfigExtensionsItfImpl* self)
-{
-    DEBUG_API("->XAConfigExtensionsItfImpl_Free");
-    assert(self==self->self);
-    free(self);
-    DEBUG_API("<-XAConfigExtensionsItfImpl_Free");
-}
--- a/khronosfws/openmax_al/src/common/xaconfigextensionsitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#ifndef XACONFIGEXTENSIONSITF_H
-#define XACONFIGEXTENSIONSITF_H
-
-#include "xaadptbasectx.h"
-
-/** MACROS **/
-
-/** TYPES **/
-
-/** ENUMERATIONS **/
-
-/** STRUCTURES **/
-/* Definition of XAConfigExtensionsItf implementation */
-typedef struct XAConfigExtensionsItfImpl_
-{
-    /* parent interface */
-    struct XAConfigExtensionsItf_ itf;
-    /* pointer to self */
-    struct XAConfigExtensionsItfImpl_* self;
-    /* variables */
-    XAuint8 testbufferconf;
-   
-    /*Adaptation variables*/
-    XAAdaptationBaseCtx *ctx;
-  
-} XAConfigExtensionsItfImpl;
-
-/* Base interface XAConfigExtensionsItf implementation */
-XAresult XAConfigExtensionsItfImpl_SetConfiguration(
-                            XAConfigExtensionsItf self,
-                            const XAchar* configKey,
-                            XAuint32 valueSize,
-                            const void* pConfigValue);
-
-XAresult XAConfigExtensionsItfImpl_GetConfiguration(
-                            XAConfigExtensionsItf self,
-                            const XAchar* configKey,
-                            XAuint32* pValueSize,
-                            void* pConfigValue);
-
-XAresult XAConfigExtensionsItfImpl_SetContext(XAConfigExtensionsItfImpl* self,XAAdaptationBaseCtx* ctx);
-
-/* XAConfigExtensionsItfImpl -specific methods */
-XAConfigExtensionsItfImpl* XAConfigExtensionsItfImpl_Create(void);
-void XAConfigExtensionsItfImpl_Free(XAConfigExtensionsItfImpl* self);
-
-#endif /* XACONFIGEXTENSIONSITF_H */
--- a/khronosfws/openmax_al/src/common/xadebug.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xadebug.h	Mon Oct 04 00:51:56 2010 +0300
@@ -19,6 +19,8 @@
 #ifndef XADEBUG_H
 #define XADEBUG_H
 
+#include "xadebugtraceutility.h"
+
 #define _DEBUG_API_     1
 #define _DEBUG_ERR_     2
 #define _DEBUG_INFO_    4
@@ -42,63 +44,92 @@
 #ifdef _DEBUG
 #include <stdio.h>
     #if ( DEBUG_LEVEL & _DEBUG_API_ )
-        #define DEBUG_API(X) printf(X"\n");
-        #define DEBUG_API_A1(X,A1) printf(X"\n",A1);
-        #define DEBUG_API_A2(X,A1,A2) printf(X"\n",A1,A2);
-        #define DEBUG_API_A3(X,A1,A2,A3) printf(X"\n",A1,A2,A3);
-        #define DEBUG_API_A4(X,A1,A2,A3,A4) printf(X"\n",A1,A2,A3,A4);
-    #else // ( DEBUG_LEVEL & _DEBUG_API_ ) 
+        #define DEBUG_API(X)                    xa_print(X)
+        #define DEBUG_API_A1(X,A1)              xa_print_1(X, A1)
+        #define DEBUG_API_A1_STR(X, A1)         xa_print_1_str(X, A1)
+        #define DEBUG_API_A2(X,A1,A2)           xa_print_2(X, A1, A2)
+        #define DEBUG_API_A2_STR(X, A1, A2)     xa_print_2_str(X, A1, A2)
+        #define DEBUG_API_A3(X,A1,A2,A3)        xa_print_3(X, A1, A2, A3)
+        #define DEBUG_API_A4(X,A1,A2,A3,A4)     xa_print_4(X, A1, A2, A3, A4)
+
+        #define DEBUG_CPP_API(X)                xa_cppprint(X)
+        #define DEBUG_CPP_API_A1(X,A1)          xa_cppprint_1(X, A1)
+        #define DEBUG_CPP_API_A2(X,A1,A2)       xa_cppprint_2(X, A1, A2)
+
+#else // ( DEBUG_LEVEL & _DEBUG_API_ ) 
         #define DEBUG_API(X);
-        #define DEBUG_API_A1(X,A1);
-        #define DEBUG_API_A2(X,A1,A2);
-        #define DEBUG_API_A3(X,A1,A2,A3);
-        #define DEBUG_API_A4(X,A1,A2,A3,A4);
-    #endif // ( DEBUG_LEVEL & _DEBUG_API_ ) 
+        #define DEBUG_API_A1(X,A1)
+        #define DEBUG_API_A1_STR(X, A1)
+        #define DEBUG_API_A2(X,A1,A2)
+        #define DEBUG_API_A2_STR(X, A1, A2)
+        #define DEBUG_API_A3(X,A1,A2,A3)
+        #define DEBUG_API_A4(X,A1,A2,A3,A4)
+
+        #define DEBUG_CPP_API(X)
+        #define DEBUG_CPP_API_A1(X,A1)
+        #define DEBUG_CPP_API_A2(X,A1,A2)
+
+#endif // ( DEBUG_LEVEL & _DEBUG_API_ ) 
 
     #if ( DEBUG_LEVEL & _DEBUG_ERR_ )
-        #define DEBUG_ERR(X) printf("  ERR: "X"\n");
-        #define DEBUG_ERR_A1(X,A1) printf("  ERR: "X"\n",A1);
-        #define DEBUG_ERR_A2(X,A1,A2) printf("  ERR: "X"\n",A1,A2);
-        #define DEBUG_ERR_A3(X,A1,A2,A3) printf("  ERR: "X"\n",A1,A2,A3);
+        #define DEBUG_ERR(X)                    xa_print(X)
+        #define DEBUG_ERR_A1(X,A1)              xa_print_1(X, A1)
+        #define DEBUG_ERR_A1_STR(X,A1)          xa_print_1_str(X, A1)
+        #define DEBUG_ERR_A2(X,A1,A2)           xa_print_2(X, A1, A2)
+        #define DEBUG_ERR_A3(X,A1,A2,A3)        xa_print_3(X, A1, A2, A3)
     #else // ( DEBUG_LEVEL & _DEBUG_ERR_ ) 
-        #define DEBUG_ERR(X);
-        #define DEBUG_ERR_A1(X,A1);
-        #define DEBUG_ERR_A2(X,A1,A2);
-        #define DEBUG_ERR_A3(X,A1,A2,A3);
+        #define DEBUG_ERR(X)
+        #define DEBUG_ERR_A1(X,A1)
+        #define DEBUG_ERR_A1_STR(X,A1)
+        #define DEBUG_ERR_A2(X,A1,A2)
+        #define DEBUG_ERR_A3(X,A1,A2,A3)
     #endif // ( DEBUG_LEVEL & _DEBUG_ERR_ ) 
 
     #if ( DEBUG_LEVEL & _DEBUG_INFO_ )
-        #define DEBUG_INFO(X) printf("  :"X"\n");
-        #define DEBUG_INFO_A1(X,A1) printf("  :"X"\n",A1);
-        #define DEBUG_INFO_A2(X,A1,A2) printf("  :"X"\n",A1,A2);
-        #define DEBUG_INFO_A3(X,A1,A2,A3) printf("  :"X"\n",A1,A2,A3);
-        #define DEBUG_INFO_A4(X,A1,A2,A3,A4) printf("  :"X"\n",A1,A2,A3,A4);
+        #define DEBUG_INFO(X)                   xa_print(X)
+        #define DEBUG_INFO_A1(X,A1)             xa_print_1(X, A1)
+        #define DEBUG_INFO_A1_STR(X, A1)        xa_print_1_str(X, A1)
+        #define DEBUG_INFO_A2(X,A1,A2)          xa_print_2(X, A1, A2)
+        #define DEBUG_INFO_A2_STR(X, A1, A2)    xa_print_2_str(X, A1, A2)
+        #define DEBUG_INFO_A3(X,A1,A2,A3)       xa_print_3(X, A1, A2, A3)
+        #define DEBUG_INFO_A4(X,A1,A2,A3,A4)    xa_print_4(X, A1, A2, A3, A4)
     #else // ( DEBUG_LEVEL & _DEBUG_INFO_ ) 
         #define DEBUG_INFO(X);
-        #define DEBUG_INFO_A1(X,A1);
-        #define DEBUG_INFO_A2(X,A1,A2);
-        #define DEBUG_INFO_A3(X,A1,A2,A3);
-        #define DEBUG_INFO_A4(X,A1,A2,A3,A4);
+        #define DEBUG_INFO_A1(X,A1)
+        #define DEBUG_INFO_A1_STR(X, A1)
+        #define DEBUG_INFO_A2(X,A1,A2)
+        #define DEBUG_INFO_A2_STR(X, A1, A2)
+        #define DEBUG_INFO_A3(X,A1,A2,A3)
+        #define DEBUG_INFO_A4(X,A1,A2,A3,A4)
     #endif // ( DEBUG_LEVEL & _DEBUG_INFO_ )
 
 #else 
 
         #define DEBUG_API(X)
         #define DEBUG_API_A1(X,A1)
+        #define DEBUG_API_A1_STR(X, A1)
         #define DEBUG_API_A2(X,A1,A2)
+        #define DEBUG_API_A2_STR(X, A1, A2)
         #define DEBUG_API_A3(X,A1,A2,A3)
         #define DEBUG_API_A4(X,A1,A2,A3,A4)
 
+        #define DEBUG_CPP_API(X)
+        #define DEBUG_CPP_API_A1(X,A1)
+        #define DEBUG_CPP_API_A2(X,A1,A2)
+
         #define DEBUG_ERR(X)
         #define DEBUG_ERR_A1(X,A1)
+        #define DEBUG_ERR_A1_STR(X,A1)
         #define DEBUG_ERR_A2(X,A1,A2)
         #define DEBUG_ERR_A3(X,A1,A2,A3)
 
         #define DEBUG_INFO(X)
         #define DEBUG_INFO_A1(X,A1)
+        #define DEBUG_INFO_A1_STR(X, A1)
         #define DEBUG_INFO_A2(X,A1,A2)
+        #define DEBUG_INFO_A2_STR(X, A1, A2)
         #define DEBUG_INFO_A3(X,A1,A2,A3)
-        #define DEBUG_INFO_A4(X,A1,A2,A3,A4);
+        #define DEBUG_INFO_A4(X,A1,A2,A3,A4)
 #endif /* _DEBUG */
 
 #endif /* XADEBUG_H */
--- a/khronosfws/openmax_al/src/common/xadynamicsourceitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xadynamicsourceitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include "xadynamicsourceitf.h"
 
 #include "xadynamicsourceitfadaptationmmf.h"
@@ -99,7 +98,6 @@
 void XADynamicSourceItfImpl_Free(XADynamicSourceItfImpl* self)
     {
     DEBUG_API("->XADynamicSourceItfImpl_Free");
-    assert( self==self->self );
     free(self);
     DEBUG_API("<-XADynamicSourceItfImpl_Free");
     }
--- a/khronosfws/openmax_al/src/common/xadynintmgmtitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xadynintmgmtitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -16,8 +16,6 @@
  */
 
 #include <stdlib.h>
-#include <assert.h>
-
 #include "openmaxalwrapper.h"
 #include "xadynintmgmtitf.h"
 #include "xadebug.h"
@@ -256,7 +254,6 @@
 void XADIMItfImpl_Free(XADIMItfImpl* self)
     {
     DEBUG_API("->XADIMItfImpl_Free");
-    assert(self==self->self);
     XAImpl_DeleteThreadHandle(self->asyncThr);
     free(self);
     DEBUG_API("<-XADIMItfImpl_Free");
@@ -271,8 +268,6 @@
         xaDoRemoveItfImpl doRemove)
     {
     DEBUG_API("->XADIMItfImpl_Init");
-
-    assert(self==self->self && parent && doAdd && doResume && doRemove);
     self->parent = parent;
     self->DoAddItfImpl = doAdd;
     self->DoResumeItfImpl = doResume;
--- a/khronosfws/openmax_al/src/common/xaglobals.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xaglobals.h	Mon Oct 04 00:51:56 2010 +0300
@@ -44,7 +44,8 @@
     XA_VOLUMEITFEVENTS = 0x400,
     XA_NOKIALINEARVOLITFEVENTS = 0x800,
     XA_NOKIAEXTVOLITFEVENTS = 0x1000,
-    XA_ADDMORETYPES = 0x2000
+    XA_STREAMINFOEVENTS = 0x2000,
+    XA_OBJECTITFEVENTS = 0x4000
     } XAAdaptEventTypes;
 
 typedef enum
--- a/khronosfws/openmax_al/src/common/xametadataextractionitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xametadataextractionitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -18,13 +18,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <assert.h>
 
 #include "xametadataextractionitf.h"
 #include "xadebug.h"
-
-#include "xametadataadaptation.h"
-
 #include "xaadaptationmmf.h"
 #include "xametadataadaptctxmmf.h"
 #include "xamediaplayeradaptctxmmf.h"
@@ -108,15 +104,7 @@
                 }
             else
                 {
-                if (impl->filteringOn)
-                    {
-                    *pItemCount = impl->filteredcount;
-                    }
-                else
-                    {
-                    *pItemCount = impl->currentTags.itemcount;
-                    }
-                res = XA_RESULT_SUCCESS;
+                res = XA_RESULT_PARAMETER_INVALID;
                 }
             }
         else
@@ -144,7 +132,7 @@
     {
     XAMetadataExtractionItfImpl *impl = NULL;
     XAresult res = XA_RESULT_SUCCESS;
-    XAuint32 newidx = 0;
+    
     DEBUG_API("->XAMetadataExtractionItfImpl_GetKeySize");
 
     impl = GetImpl(self);
@@ -171,17 +159,7 @@
         }
     else
         {
-        /* check index and return unfiltered index */
-        if (CheckAndUnfilterIndex(impl, index, &newidx) != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataExtractionItfImpl_GetKeySize");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-
-        /* size = size of struct + size of data - 1 (struct size already includes one char) */
-        *pKeySize = sizeof(XAMetadataInfo)
-                + impl->currentTags.mdeKeys[newidx]->size - 1;
+        res = XA_RESULT_PARAMETER_INVALID;
         }
 
     DEBUG_API_A1("<-XAMetadataExtractionItfImpl_GetKeySize (%d)", (int)res);
@@ -202,11 +180,7 @@
     {
     XAMetadataExtractionItfImpl *impl = NULL;
     XAresult res = XA_RESULT_SUCCESS;
-    XAuint32 newidx = 0;
 
-    XAuint32 neededsize = 0;
-
-    XAuint32 newdatasize = 0;
     DEBUG_API("->XAMetadataExtractionItfImpl_GetKey");
 
     impl = GetImpl(self);
@@ -234,36 +208,7 @@
         }
     else
         {
-
-        /* check index and return unfiltered index */
-        if (CheckAndUnfilterIndex(impl, index, &newidx) != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataExtractionItfImpl_GetKey");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-
-        /* needed size = size of struct + size of data - 1 (struct size already includes one char) */
-        neededsize = sizeof(XAMetadataInfo)
-                + impl->currentTags.mdeKeys[newidx]->size - 1;
-        if (keySize < neededsize)
-            { /* cannot fit all of key data */
-            newdatasize = impl->currentTags.mdeKeys[newidx]->size
-                    - (neededsize - keySize);
-            DEBUG_ERR("XA_RESULT_BUFFER_INSUFFICIENT");
-            res = XA_RESULT_BUFFER_INSUFFICIENT;
-            }
-        else
-            {
-            newdatasize = impl->currentTags.mdeKeys[newidx]->size;
-            res = XA_RESULT_SUCCESS;
-            }
-        /* copy data up to given size */
-        memcpy(pKey, impl->currentTags.mdeKeys[newidx], keySize - 1);
-        /* ensure null-termination */
-
-        memset(pKey->data + newdatasize - 1, 0, 1);
-        pKey->size = newdatasize;
+        res = XA_RESULT_PARAMETER_INVALID;
         }
 
     DEBUG_API_A1("<-XAMetadataExtractionItfImpl_GetKey (%d)", (int)res);
@@ -282,7 +227,7 @@
     {
     XAMetadataExtractionItfImpl *impl = NULL;
     XAresult res = XA_RESULT_SUCCESS;
-    XAuint32 newidx = 0;
+
     DEBUG_API("->XAMetadataExtractionItfImpl_GetValueSize");
 
     impl = GetImpl(self);
@@ -309,17 +254,7 @@
         }
     else
         {
-        /* check index and return unfiltered index */
-        if (CheckAndUnfilterIndex(impl, index, &newidx) != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataExtractionItfImpl_GetValueSize");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-
-        /* size = size of struct + size of data - 1 (struct size already includes one char) */
-        *pValueSize = sizeof(XAMetadataInfo)
-                + impl->currentTags.mdeValues[newidx]->size - 1;
+        res = XA_RESULT_PARAMETER_INVALID;
         }
 
     DEBUG_API_A1("<-XAMetadataExtractionItfImpl_GetValueSize (%d)", (int)res);
@@ -340,11 +275,7 @@
     {
     XAMetadataExtractionItfImpl *impl = NULL;
     XAresult res = XA_RESULT_SUCCESS;
-    XAuint32 newidx = 0;
 
-    XAuint32 neededsize = 0;
-
-    XAuint32 newdatasize = 0;
     DEBUG_API("->XAMetadataExtractionItfImpl_GetValue");
 
     impl = GetImpl(self);
@@ -372,36 +303,7 @@
         }
     else
         {
-        /* check index and return unfiltered index */
-        if (CheckAndUnfilterIndex(impl, index, &newidx) != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataExtractionItfImpl_GetValue");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-
-        /* needed size = size of struct + size of data - 1 (struct size already includes one char) */
-        neededsize = sizeof(XAMetadataInfo)
-                + impl->currentTags.mdeValues[newidx]->size - 1;
-        if (valueSize < neededsize)
-            { /* cannot fit all of key data */
-            newdatasize = impl->currentTags.mdeValues[newidx]->size
-                    - (neededsize - valueSize);
-            DEBUG_ERR("XA_RESULT_BUFFER_INSUFFICIENT");
-            res = XA_RESULT_BUFFER_INSUFFICIENT;
-            }
-        else
-            {
-            newdatasize = impl->currentTags.mdeValues[newidx]->size;
-            res = XA_RESULT_SUCCESS;
-            }
-        /* copy data up to given size */
-        memcpy(pValue, impl->currentTags.mdeValues[newidx], valueSize - 1);
-        /* ensure null-termination */
-
-        memset(pValue->data + newdatasize - 1, 0, 1);
-
-        pValue->size = newdatasize;
+        res = XA_RESULT_PARAMETER_INVALID;
         }
 
     DEBUG_API_A1("<-XAMetadataExtractionItfImpl_GetValue (%d)",(int)res);
@@ -430,11 +332,8 @@
     {
     XAresult res = XA_RESULT_SUCCESS;
 
-    XAuint32 idx = 0;
-    XAuint8 matchMask = 0;
+    XAMetadataExtractionItfImpl *impl = NULL;
 
-    XAMetadataExtractionItfImpl *impl = NULL;
-    const XAchar* parsedkey;
     impl = GetImpl(self);
 
     DEBUG_API("->XAMetadataExtractionItfImpl_AddKeyFilter");
@@ -455,54 +354,8 @@
             }
         else
             {
-            impl->filteringOn = XA_BOOLEAN_TRUE;
-            for (idx = 0; idx < impl->currentTags.itemcount; idx++)
-                {
-                if ((filterMask & XA_METADATA_FILTER_KEY) && pKey)
-                    {
-                    parsedkey = XAMetadataAdapt_ParseKhronosKey(pKey);
-                    if (strcmp((char*) parsedkey,
-                            (char*) impl->currentTags.mdeKeys[idx]->data)
-                            == 0)
-                        {
-                        matchMask |= XA_METADATA_FILTER_KEY;
-                        }
-                    }
-                if (filterMask & XA_METADATA_FILTER_LANG && pValueLangCountry)
-                    {
-                    if (strcmp(
-                            (char*) pValueLangCountry,
-                            (char*) impl->currentTags.mdeKeys[idx]->langCountry)
-                            == 0)
-                        {
-                        matchMask |= XA_METADATA_FILTER_LANG;
-                        }
-                    }
-                if (filterMask & XA_METADATA_FILTER_ENCODING)
-                    {
-                    if (keyEncoding
-                            == impl->currentTags.mdeKeys[idx]->encoding)
-                        {
-                        matchMask |= XA_METADATA_FILTER_ENCODING;
-                        }
-                    if (valueEncoding
-                            == impl->currentTags.mdeValues[idx]->encoding)
-                        {
-                        matchMask |= XA_METADATA_FILTER_ENCODING;
-                        }
-                    }
-                /* check if all filters apply */
-                if (filterMask == matchMask)
-                    {
-                    if (impl->tagmatchesfilter[idx] == XA_BOOLEAN_FALSE)
-                        {
-                        impl->tagmatchesfilter[idx] = XA_BOOLEAN_TRUE;
-                        impl->filteredcount++;
-                        }
-                    }
-                /*reset matchmask*/
-                matchMask = 0;
-                }
+            DEBUG_API("<-XAMetadataExtractionItfImpl_AddKeyFilter Not Supported in GST");
+            res = XA_RESULT_PARAMETER_INVALID;
             }
         }
     DEBUG_API_A1("<-XAMetadataExtractionItfImpl_AddKeyFilter (%d)", (int)res);
@@ -518,8 +371,6 @@
     XAMetadataExtractionItfImpl *impl = NULL;
     XAresult res = XA_RESULT_SUCCESS;
 
-    XAuint32 idx = 0;
-
     DEBUG_API("->XAMetadataExtractionItfImpl_ClearKeyFilter");
     impl = GetImpl(self);
     if (!impl)
@@ -537,17 +388,8 @@
             }
         else
             {
-            if (impl->tagmatchesfilter)
-                {
-
-                for (idx = 0; idx < impl->currentTags.itemcount; idx++)
-                    {
-                    impl->tagmatchesfilter[idx] = XA_BOOLEAN_FALSE;
-                    }
-
-                }
-            impl->filteredcount = 0;
-            impl->filteringOn = XA_BOOLEAN_FALSE;
+            DEBUG_API("<-XAMetadataExtractionItfImpl_ClearKeyFilter Not Supported in GST");
+            res = XA_RESULT_PARAMETER_INVALID;
             }
         }
 
@@ -583,9 +425,6 @@
         self->itf.ClearKeyFilter = XAMetadataExtractionItfImpl_ClearKeyFilter;
 
         /* init variables */
-        self->filteredcount = 0;
-        self->filteringOn = XA_BOOLEAN_FALSE;
-
         self->adaptCtx = adaptCtx;
 
         if (self->adaptCtx->fwtype != FWMgrFWMMF)
@@ -608,18 +447,11 @@
 void XAMetadataExtractionItfImpl_Free(XAMetadataExtractionItfImpl* self)
     {
     DEBUG_API("->XAMetadataExtractionItfImpl_Free");
-    assert(self==self->self);
 
     if (self->adaptCtx->fwtype != FWMgrFWMMF)
         {
         XAAdaptationBase_RemoveEventHandler(self->adaptCtx,
                 &XAMetadataExtractionItfImp_AdaptCb);
-        XAMetadataAdapt_FreeImplTagList(&(self->currentTags), XA_BOOLEAN_TRUE);
-
-        if (self->tagmatchesfilter)
-            {
-            free(self->tagmatchesfilter);
-            }
         }
 
     free(self);
@@ -641,73 +473,8 @@
         DEBUG_API("<-XAMetadataExtractionItfImp_AdaptCb");
         return;
         }
-    if (event && event->eventid == XA_ADAPT_MDE_TAGS_AVAILABLE)
-        {
-        /* get the tag list */
-        XAMetadataExtractionItfAdapt_FillTagList(
-                (XAAdaptationGstCtx*) impl->adaptCtx, &(impl->currentTags));
-        if (impl->tagmatchesfilter)
-            {
-            free(impl->tagmatchesfilter);
-            }
-        impl->tagmatchesfilter = calloc(impl->currentTags.itemcount,
-                sizeof(XAboolean));
-        impl->filteredcount = 0;
-        }
-    else
-        {
-        DEBUG_INFO("unhandled");
-        }
+    DEBUG_INFO("unhandled");
     DEBUG_API("<-XAMetadataExtractionItfImp_AdaptCb");
     }
 
-/* For given index over filtered array, return index over whole array
- */
-XAresult CheckAndUnfilterIndex(XAMetadataExtractionItfImpl *impl,
-        XAuint32 oldidx, XAuint32 *newidx)
-    {
-    DEBUG_API("->CheckAndUnfilterIndex");
 
-    if (impl->filteringOn)
-        {
-        XAint16 i = -1;
-        if (oldidx >= impl->filteredcount)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-CheckAndUnfilterIndex");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        *newidx = 0;
-        while (*newidx < impl->currentTags.itemcount)
-            {
-            if (impl->tagmatchesfilter[*newidx])
-                i++;
-            if (i < oldidx)
-                (*newidx)++;
-            else
-                break;
-            }
-        if (*newidx == impl->currentTags.itemcount)
-            {
-            /* should not end up here */
-            *newidx = 0;
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-CheckAndUnfilterIndex");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        }
-    else
-        {
-        if (oldidx >= impl->currentTags.itemcount)
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-CheckAndUnfilterIndex");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        *newidx = oldidx;
-        }
-
-    DEBUG_API("<-CheckAndUnfilterIndex");
-    return XA_RESULT_SUCCESS;
-    }
-
--- a/khronosfws/openmax_al/src/common/xametadataextractionitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xametadataextractionitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -19,7 +19,6 @@
 #define XAMETADATAEXTRACTIONITF_H
 
 #include "xaadptbasectx.h"
-#include "xametadataadaptation.h"
 
 /** MACROS **/
 
@@ -37,12 +36,6 @@
     struct XAMetadataExtractionItfImpl_* self;
 
     /* variables */
-    XAuint32 filteredcount;
-    XAboolean* tagmatchesfilter;
-    XAboolean filteringOn;
-
-    XAMetadataImplTagList currentTags;
-
     XAAdaptationBaseCtx *adaptCtx;
 
     } XAMetadataExtractionItfImpl;
@@ -81,7 +74,7 @@
 void XAMetadataExtractionItfImpl_Free(XAMetadataExtractionItfImpl* self);
 
 /* internal methods */
-XAresult CheckAndUnfilterIndex(XAMetadataExtractionItfImpl *impl,
-        XAuint32 oldidx, XAuint32 *newidx);
+/*XAresult CheckAndUnfilterIndex(XAMetadataExtractionItfImpl *impl,
+        XAuint32 oldidx, XAuint32 *newidx);*/
 
 #endif /* XAMETADATAEXTRACTIONITF_H */
--- a/khronosfws/openmax_al/src/common/xanokialinearvolumeitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xanokialinearvolumeitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 
 #include "xanlinearvolumeitf.h"
 #include "xanokialinearvolumeitfadaptationmmf.h"
@@ -277,7 +276,6 @@
 void XANokiaLinearVolumeItfImpl_Free(XANokiaLinearVolumeItfImpl* self)
     {
     DEBUG_API("->XANokiaLinearVolumeItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XANokiaLinearVolumeItfImpl_Free");
     }
@@ -310,5 +308,9 @@
                     XA_NOKIALINEARVOLUME_EVENT_VOLUME_CHANGED, eventBoolean);
             }
         }
+    else
+        {
+        /* do nothing */
+        }
     DEBUG_API("<-XANokiaLinearVolumeItfimpl_AdaptCb");
     }
--- a/khronosfws/openmax_al/src/common/xanokiavolumeextitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xanokiavolumeextitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 
 #include "xanvolumeextitf.h"
 #include "xanokiavolumeextitfadaptationmmf.h"
@@ -479,7 +478,6 @@
 void XANokiaVolumeExtItfImpl_Free(XANokiaVolumeExtItfImpl* self)
     {
     DEBUG_API("->XANokiaVolumeExtItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XANokiaVolumeExtItfImpl_Free");
     }
@@ -500,7 +498,6 @@
         DEBUG_API("<-XANokiaVolumeExtItfImpl_AdaptCb");
         return;
         }
-    assert(event);
 
     if (event->eventid == XA_ADAPT_VOLUME_MUTE_CHANGED && impl->callback)
         {
--- a/khronosfws/openmax_al/src/common/xaobjectitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xaobjectitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 
 #include "xaobjectitf.h"
 
@@ -341,8 +340,6 @@
     XAuint32 i = 0;
     DEBUG_API("->XAObjectItfImpl_Init");
 
-    assert( self && itfIIDs && doRealizeImpl && doResumeImpl && freeResourcesImpl );
-
     self->interfaceMap = (XAObjItfMapEntry*) calloc(itfCount,
             sizeof(XAObjItfMapEntry));
     if (!self->interfaceMap)
--- a/khronosfws/openmax_al/src/common/xaobjectitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xaobjectitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -33,6 +33,15 @@
 /** ENUMERATIONS **/
 
 /** STRUCTURES **/
+
+typedef struct XAObjItfCBData_
+    {
+    XAuint32 event;
+    XAresult result;
+    XAuint32 param;
+    void* interface;
+    }XAObjItfCBData;
+
 typedef struct XAObjItfMapEntry_
     {
     XAInterfaceID iid;
--- a/khronosfws/openmax_al/src/common/xaplatform.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xaplatform.c	Mon Oct 04 00:51:56 2010 +0300
@@ -19,7 +19,6 @@
 #include <semaphore.h>
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include <errno.h>
 
 #include "xaplatform.h"
@@ -45,7 +44,6 @@
 XAresult XAImpl_CreateMutex(XAImplMutexHandle *mtx)
     {
     XA_MTX *pMtx = (XA_MTX *) malloc(sizeof(XA_MTX));
-    assert(mtx);
     if (pMtx)
         {
         pthread_mutexattr_t *pAttr = NULL;
@@ -75,7 +73,6 @@
 XAresult XAImpl_LockMutex(XAImplMutexHandle mtx)
     {
     XA_MTX *pMtx = (XA_MTX*) mtx;
-    assert(pMtx);
 #ifdef _MUTEXERRORSUPPORT
     if(pthread_mutex_lock(pMtx))
         {
@@ -96,7 +93,6 @@
     XA_MTX *pMtx = (XA_MTX*) mtx;
     XAint32 mutexRet;
     XAresult ret = XA_RESULT_SUCCESS;
-    assert(pMtx);
 
 #ifdef _MUTEXERRORSUPPORT
     mutexRet = pthread_ mutex_trylock(pMtx);
@@ -141,7 +137,6 @@
 XAresult XAImpl_UnlockMutex(XAImplMutexHandle mtx)
     {
     XA_MTX *pMtx = (XA_MTX*) mtx;
-    assert(pMtx);
 #ifdef _MUTEXERRORSUPPORT
     if(pthread_mutex_lock(pMtx))
         {
@@ -180,7 +175,6 @@
 XAresult XAImpl_CreateSemaphore(XAImplSemHandle *sem)
     {
     sem_t *pSem = (sem_t*) malloc(sizeof(sem_t));
-    assert(sem);
     if (pSem)
         {
         if (sem_init(pSem, 0, 0))
@@ -201,7 +195,6 @@
 XAresult XAImpl_WaitSemaphore(XAImplSemHandle sem)
     {
     sem_t* pSem = (sem_t*) sem;
-    assert(pSem);
     sem_wait(pSem);
     return XA_RESULT_SUCCESS;
     }
@@ -209,7 +202,6 @@
 XAresult XAImpl_PostSemaphore(XAImplSemHandle sem)
     {
     sem_t *pSem = (sem_t*) sem;
-    assert(pSem);
     sem_post(pSem);
     return XA_RESULT_SUCCESS;
     }
@@ -231,7 +223,6 @@
 XAresult XAImpl_CreateThreadHandle(XAImplThreadHandle *thd)
     {
     pthread_t *pThd = (pthread_t*) malloc(sizeof(pthread_t));
-    assert(thd);
     if (!pThd)
         {
         return XA_RESULT_MEMORY_FAILURE;
@@ -244,7 +235,6 @@
         XAImplThreadFunction thdfunc, void* thdfuncargs)
     {
     pthread_t *pThd = (pthread_t*) thd;
-    assert(thd);
     if (pthread_create(pThd, thdattrib, thdfunc, thdfuncargs))
         {
         return XA_RESULT_INTERNAL_ERROR;
--- a/khronosfws/openmax_al/src/common/xastreaminformationitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xastreaminformationitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,10 +15,7 @@
  *
  */
 
-#include <assert.h>
-
 #include "xastreaminformationitf.h"
-
 #include "xastreaminformationitfadaptationmmf.h"
 
 /* XAStreamInformationItfImpl* GetImpl
@@ -191,6 +188,12 @@
     impl->cbcontext = pContext;
     impl->cbPtrToSelf = self;
 
+	
+    if (impl->adapCtx->fwtype == FWMgrFWMMF)
+    {
+    	ret = XAStreamInformationItfAdaptMMF_RegisterCallback(impl->adapCtx, callback);
+    }
+
     DEBUG_API("-<XAStreamInformationItfImpl_RegisterStreamChangeCallback");
     return ret;
     }
@@ -210,7 +213,7 @@
         return XA_RESULT_PARAMETER_INVALID;
         }
 
-    if (impl->adapCtx->fwtype == FWMgrFWGST)
+    if (impl->adapCtx->fwtype == FWMgrFWMMF)
         {
         ret = XAAdaptationBase_ThreadEntry(impl->adapCtx);
         if (ret == XA_RESULT_PARAMETER_INVALID)
@@ -272,7 +275,7 @@
  * Description: Allocate and initialize PlayItfImpl
  **/
 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(
-        XAAdaptationBaseCtx *adapCtx)
+        XAMediaPlayerImpl* impl)
     {
     XAStreamInformationItfImpl *self;
 
@@ -301,9 +304,12 @@
         self->cbPtrToSelf = NULL;
         self->callback = NULL;
         self->cbcontext = NULL;
-        self->adapCtx = adapCtx;
+        self->adapCtx = impl->curAdaptCtx;
 
         self->self = self;
+		
+        XAAdaptationBase_AddEventHandler( 	self->adapCtx, 
+											&XAStreamInformationItfImpl_AdaptCb, XA_STREAMINFOEVENTS, self );
         }
 
     DEBUG_API("<-XAStreamInformationItfImpl_Create");
@@ -317,10 +323,30 @@
     {
     DEBUG_API("->XAStreamInformationItfImpl_Free");
     if(self)
-        {
-        assert(self==self->self);
+    {
+        XAAdaptationBase_RemoveEventHandler( (XAAdaptationBaseCtx*)self->adapCtx, &XAStreamInformationItfImpl_AdaptCb );
         free(self);
-        }
+    }
     DEBUG_API("<-XAStreamInformationItfImpl_Free");
     }
 
+void XAStreamInformationItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event )
+{
+	XAStreamInformationItfImpl* impl = (XAStreamInformationItfImpl*)pHandlerCtx;
+	DEBUG_API("->XAPrefetchStatusItfImpl_AdaptCb");
+	if(!impl)
+	{
+		DEBUG_ERR("XAPrefetchStatusItfImpl_AdaptCb, invalid context pointer!");
+		DEBUG_API("<-XAPrefetchStatusItfImpl_AdaptCb");
+		return;
+	}
+	
+	if (impl->adapCtx->fwtype == FWMgrFWMMF)
+	{
+		impl->callback(impl->cbPtrToSelf, XA_STREAMCBEVENT_PROPERTYCHANGE, event->eventid, NULL, impl->cbcontext);
+	}
+	
+	DEBUG_API("<-XAPrefetchStatusItfImpl_AdaptCb");
+	return;
+}
+
--- a/khronosfws/openmax_al/src/common/xastreaminformationitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xastreaminformationitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -20,6 +20,8 @@
 
 #include "openmaxalwrapper.h"
 #include "xaadptbasectx.h"
+#include "xamediaplayer.h"
+
 
 /** MACROS **/
 
@@ -75,7 +77,10 @@
 
 /* XAStreamInformationItfImpl -specific methods */
 XAStreamInformationItfImpl* XAStreamInformationItfImpl_Create(
-        XAAdaptationBaseCtx *adapCtx);
+        XAMediaPlayerImpl* impl);
 void XAStreamInformationItfImpl_Free(XAStreamInformationItfImpl* self);
 
+void XAStreamInformationItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event );
+
+
 #endif /* XASTREAMINFORMATIONITF_H */
--- a/khronosfws/openmax_al/src/common/xathreadsafety.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xathreadsafety.c	Mon Oct 04 00:51:56 2010 +0300
@@ -61,7 +61,8 @@
                     {
                     break;
                     }
-                DEBUG_INFO_A2("Created %s:%x",MEDIAOBJECTNAME(i), threadSafety->mutexTable[i] );
+                DEBUG_INFO_A1_STR("Created for [%s]", MEDIAOBJECTNAME(i));
+                DEBUG_INFO_A1("Object pointer in mutex table: %x", (int)threadSafety->mutexTable[i] );
                 }
             }
         else
@@ -90,11 +91,13 @@
             {
             for (i = 0; i < XATSCount; i++)
                 {
-                DEBUG_INFO_A2("Free %s:%x",MEDIAOBJECTNAME(i), threadSafety->mutexTable[i] );
+                DEBUG_INFO_A1_STR("Free for [%s]", MEDIAOBJECTNAME(i));
+                DEBUG_INFO_A1("Object pointer in mutex table: %x", (int)threadSafety->mutexTable[i] );
                 XAImpl_DeleteMutex(threadSafety->mutexTable[i]);
                 }
             }
         free(threadSafety);
+        threadSafety = NULL;
         }
     else
         {
@@ -124,7 +127,8 @@
             ret = XAImpl_UnlockMutex(threadSafety->mutexTable[mediaObject]);
             if (ret == XA_RESULT_SUCCESS)
                 {
-                DEBUG_INFO_A2("Released lock for %s:%x",MEDIAOBJECTNAME(mediaObject), threadSafety->mutexTable[mediaObject] );
+                DEBUG_INFO_A1_STR("Released lock for [%s]", MEDIAOBJECTNAME(mediaObject));
+                DEBUG_INFO_A1("Object pointer in mutex table: %x", (int)threadSafety->mutexTable[mediaObject] );
                 }
             }
         }
@@ -153,7 +157,8 @@
             ret = XAImpl_TryLockMutex(threadSafety->mutexTable[mediaObject]);
             if (ret == XA_RESULT_SUCCESS)
                 {
-                DEBUG_INFO_A2("Locked %s:%x",MEDIAOBJECTNAME(mediaObject), threadSafety->mutexTable[mediaObject] );
+                DEBUG_INFO_A1_STR("Obtained lock for [%s]", MEDIAOBJECTNAME(mediaObject));
+                DEBUG_INFO_A1("Object pointer in mutex table: %x", (int                                                                                                                              )threadSafety->mutexTable[mediaObject] );
                 }
             }
         }
--- a/khronosfws/openmax_al/src/common/xathreadsafety.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xathreadsafety.h	Mon Oct 04 00:51:56 2010 +0300
@@ -54,7 +54,7 @@
         DEBUG_INFO("Thread safety - invalid mutex reference index");                    \
         return XA_RESULT_PARAMETER_INVALID;                                             \
     }                                                                                   \
-    DEBUG_INFO_A1("Thread safety entry for %s",MEDIAOBJECTNAME(mediaObject));           \
+    DEBUG_INFO_A1_STR("Thread safety entry for %s",MEDIAOBJECTNAME(mediaObject));       \
     mutexRet = XAThreadSafety_TryLock( mediaObject );                                   \
     if ( mutexRet == XA_RESULT_PERMISSION_DENIED )                                      \
     {                                                                                   \
@@ -77,7 +77,7 @@
         DEBUG_INFO("Thread safety - invalid mutex reference index");                    \
         return;                                                                         \
     }                                                                                   \
-    DEBUG_INFO_A1("Thread safety entry for %s",MEDIAOBJECTNAME(mediaObject));           \
+    DEBUG_INFO_A1_STR("Thread safety entry for %s",MEDIAOBJECTNAME(mediaObject));       \
     mutexRet = XAThreadSafety_TryLock( mediaObject );                                   \
     if ( mutexRet == XA_RESULT_PERMISSION_DENIED )                                      \
     {                                                                                   \
@@ -107,11 +107,11 @@
         DEBUG_INFO("Thread safety - invalid mutex reference index");                    \
         return XA_RESULT_PARAMETER_INVALID;                                             \
     }                                                                                   \
-    DEBUG_INFO_A1("Thread safety exit for %s",MEDIAOBJECTNAME(mediaObject));            \
+    DEBUG_INFO_A1_STR("Thread safety exit for %s",MEDIAOBJECTNAME(mediaObject));        \
     mutexRet = XAThreadSafety_Unlock( mediaObject );                                    \
     if ( mutexRet != XA_RESULT_SUCCESS)                                                 \
     {                                                                                   \
-        DEBUG_INFO("Unable to unlock media object!")                                    \
+        DEBUG_INFO("Unable to unlock media object!");                                   \
         return XA_RESULT_INTERNAL_ERROR;                                                \
     }                                                                                   \
 }                                                                                       \
@@ -124,11 +124,11 @@
         DEBUG_INFO("Thread safety - invalid mutex reference index");                    \
         return;                                                                         \
     }                                                                                   \
-    DEBUG_INFO_A1("Thread safety exit for %s",MEDIAOBJECTNAME(mediaObject));            \
+    DEBUG_INFO_A1_STR("Thread safety exit for %s",MEDIAOBJECTNAME(mediaObject));        \
     mutexRet = XAThreadSafety_Unlock( mediaObject );                                    \
     if ( mutexRet != XA_RESULT_SUCCESS)                                                 \
     {                                                                                   \
-        DEBUG_INFO("Unable to unlock media object!")                                    \
+        DEBUG_INFO("Unable to unlock media object!");                                   \
         return;                                                                         \
     }                                                                                   \
 }                                                                                       \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/common/xavideopostprocessingitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,352 @@
+/*
+* 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: 
+*
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include "xavideopostprocessingitf.h"
+ 
+#include "xavideopostprosessingitfadaptationmmf.h"
+
+/**
+ * XAVideoPostProcessingItfImpl* GetImpl(XAVideoPostProcessingItf self)
+ * Description: Validated interface pointer and cast it to implementations pointer.
+ **/
+static XAVideoPostProcessingItfImpl* GetImpl(XAVideoPostProcessingItf self)
+{
+    if(self)
+    {
+        XAVideoPostProcessingItfImpl* impl = (XAVideoPostProcessingItfImpl*)(*self);
+        if(impl && (impl == impl->self))
+        {
+            return impl;
+        }
+    }
+    return NULL;
+}
+
+/**
+ * Base interface XAVideoPostProcessingItf implementation
+ */
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_SetRotation(XAVideoPostProcessingItf self,
+ *                                                   XAmillidegree rotation)
+ * Description: Sets post-prosessing options for rotation.
+ **/
+XAresult XAVideoPostProcessingItfImpl_SetRotation(XAVideoPostProcessingItf self,
+                                                  XAmillidegree rotation)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    XAboolean isSupported = XA_BOOLEAN_FALSE;
+    DEBUG_API("->XAVideoPostProcessingItfImpl_SetRotation");
+
+    if(!impl)
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_SetRotation");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    /* Check is arbitrary rotation supported */
+    ret = XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported( self, &isSupported );
+
+    if(ret == XA_RESULT_SUCCESS)
+    {
+        if( isSupported == XA_BOOLEAN_FALSE )
+        {
+            /* check that wanted angle is integer multiple of 90 degrees */
+            if( rotation % 90000 != 0 )
+            {
+                /* feature unsupported */
+                ret = XA_RESULT_FEATURE_UNSUPPORTED;
+                return ret;
+            }
+        }
+
+        impl->rotation = rotation;
+        impl->isRotate = XA_BOOLEAN_TRUE;
+    }
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_SetRotation");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported(XAVideoPostProcessingItf self,
+ *                                                                    XAboolean *pSupported)
+ * Description: Determines if arbitrary rotation angles are supported by the implementation.
+ */
+XAresult XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported(XAVideoPostProcessingItf self,
+                                                                   XAboolean *pSupported)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported");
+    if(!impl || !pSupported)
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    impl->supported = XA_BOOLEAN_FALSE;
+    *pSupported = XA_BOOLEAN_FALSE;
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_SetScaleOptions(XAVideoPostProcessingItf self,
+ *                                                       XAuint32 scaleOptions,
+ *                                                       XAuint32 backgroundColor,
+ *                                                       XAuint32 renderingHints)
+ * Description: Sets the options for scaling
+ */
+XAresult XAVideoPostProcessingItfImpl_SetScaleOptions(XAVideoPostProcessingItf self,
+                                                      XAuint32 scaleOptions,
+                                                      XAuint32 backgroundColor,
+                                                      XAuint32 renderingHints)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_SetScaleOptions");
+
+    if(!impl || (scaleOptions != XA_VIDEOSCALE_STRETCH && scaleOptions != XA_VIDEOSCALE_FIT
+        && scaleOptions != XA_VIDEOSCALE_CROP))
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_SetScaleOptions");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    impl->scaleOptions = scaleOptions;
+    impl->backgroundColor = backgroundColor;
+    impl->renderingHints = renderingHints;
+    impl->isScaleOptions = XA_BOOLEAN_TRUE;
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_SetScaleOptions");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_SetSourceRectangle(XAVideoPostProcessingItf self,
+ *                                                          const XARectangle *pSrcRect)
+ * Description: Defines the rectangle in the original frame that is to be used for further processing
+ */
+XAresult XAVideoPostProcessingItfImpl_SetSourceRectangle(XAVideoPostProcessingItf self,
+                                                         const XARectangle *pSrcRect)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_SetSourceRectangle");
+
+    if(!impl || !pSrcRect)
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_SetSourceRectangle");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    impl->srcRect = *pSrcRect;
+    impl->isSrcRect = XA_BOOLEAN_TRUE;
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_SetSourceRectangle");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_SetDestinationRectangle(XAVideoPostProcessingItf self,
+ *                                                               const XARectangle *pDestRect)
+ *
+ * Description:  Defines the destination rectangle for the processed frame. This rectangle,
+ * in conjunction with the scaling options used  (fit, crop, stretch) determines
+ * the scaling applied to the frame.
+ */
+XAresult XAVideoPostProcessingItfImpl_SetDestinationRectangle(XAVideoPostProcessingItf self,
+                                                              const XARectangle *pDestRect)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_SetDestinationRectangle");
+
+    if(!impl || !pDestRect)
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_SetDestinationRectangle");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    impl->destRect = *pDestRect;
+    impl->isDestRect = XA_BOOLEAN_TRUE;
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_SetDestinationRectangle");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_SetMirror(XAVideoPostProcessingItf self,
+ *                                                 XAuint32 mirror)
+ * Description: Sets post-prosessing options for mirroring.
+ */
+XAresult XAVideoPostProcessingItfImpl_SetMirror(XAVideoPostProcessingItf self,
+                                                XAuint32 mirror)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_SetMirror");
+
+    if(!impl )
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_SetMirror");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    switch (mirror)
+    {
+        case XA_VIDEOMIRROR_NONE:
+            ret = XA_RESULT_SUCCESS;
+            break;
+        case XA_VIDEOMIRROR_VERTICAL:
+        case XA_VIDEOMIRROR_HORIZONTAL:
+        case XA_VIDEOMIRROR_BOTH:
+        default:
+            ret = XA_RESULT_PARAMETER_INVALID;
+            break;
+    }
+
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_SetMirror");
+    return ret;
+}
+
+/**
+ * XAresult XAVideoPostProcessingItfImpl_Commit(XAVideoPostProcessingItf self)
+ * Description: Commit all video post-processing changes since the last Commit().
+ */
+XAresult XAVideoPostProcessingItfImpl_Commit(XAVideoPostProcessingItf self)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAVideoPostProcessingItfImpl* impl = GetImpl(self);
+    DEBUG_API("->XAVideoPostProcessingItfImpl_Commit");
+    if(!impl)
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfImpl_Commit");
+        /* invalid parameter */
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+ 
+    ret = XAAdaptationBase_ThreadEntry(impl->adapCtx);
+    if( ret == XA_RESULT_PARAMETER_INVALID || ret == XA_RESULT_PRECONDITIONS_VIOLATED )
+    {
+    	DEBUG_API("<-XAVideoPostProcessingItfImpl_Commit");
+    	return ret;
+    }
+
+    ret = XAVideoPostProcessingItfAdapt_Commit((XAAdaptationMMFCtx*)impl->adapCtx,
+                                               impl->rotation,
+                                               impl->scaleOptions,
+                                               impl->backgroundColor,
+                                               impl->renderingHints,
+                                               &impl->srcRect,
+                                               &impl->destRect,
+                                               impl->mirror,
+                                               impl->isMirror,
+                                               impl->isRotate,
+                                               impl->isDestRect,
+											   impl->isSrcRect,
+											   impl->isScaleOptions);
+
+    if( ret == XA_RESULT_SUCCESS )
+    {
+        impl->isMirror = XA_BOOLEAN_FALSE;
+        impl->isRotate = XA_BOOLEAN_FALSE;
+		impl->isDestRect = XA_BOOLEAN_FALSE;
+		impl->isSrcRect = XA_BOOLEAN_FALSE;
+		impl->isScaleOptions = XA_BOOLEAN_FALSE;
+    }
+
+    XAAdaptationBase_ThreadExit(impl->adapCtx);
+  
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_Commit");
+    return ret;
+}
+
+/**
+ * XAVideoPostProcessingItfImpl -specific methods
+ **/
+/**
+ * XAVideoPostProcessingItfImpl* XAVideoPostProcessingItfImpl_Create()
+ * @return  XAVideoPostProcessingItfImpl* - Pointer to  VideoPostProcessingItf interface implementation
+ **/
+XAVideoPostProcessingItfImpl* XAVideoPostProcessingItfImpl_Create(XAAdaptationBaseCtx *adapCtx)
+{
+    XAVideoPostProcessingItfImpl* self = (XAVideoPostProcessingItfImpl*)
+        calloc(1,sizeof(XAVideoPostProcessingItfImpl));
+    DEBUG_API("->XAVideoPostProcessingItfImpl_Create");
+    if(self)
+    {
+        XARectangle emptyRect = {0,0,0,0};
+        /* init itf default implementation */
+        self->itf.Commit = XAVideoPostProcessingItfImpl_Commit;
+        self->itf.IsArbitraryRotationSupported = XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported;
+        self->itf.SetDestinationRectangle = XAVideoPostProcessingItfImpl_SetDestinationRectangle;
+        self->itf.SetMirror = XAVideoPostProcessingItfImpl_SetMirror;
+        self->itf.SetRotation = XAVideoPostProcessingItfImpl_SetRotation;
+        self->itf.SetScaleOptions = XAVideoPostProcessingItfImpl_SetScaleOptions;
+        self->itf.SetSourceRectangle = XAVideoPostProcessingItfImpl_SetSourceRectangle;
+
+        /* init variables */
+        self->rotation = 0;
+        self->scaleOptions = XA_VIDEOSCALE_FIT;
+        self->mirror = XA_VIDEOMIRROR_NONE;
+        self->backgroundColor = 0;
+        self->renderingHints = XA_RENDERINGHINT_NONE;
+        self->adapCtx = adapCtx;
+        self->srcRect = emptyRect;
+        self->destRect = emptyRect;
+        self->isMirror = XA_BOOLEAN_FALSE;
+        self->isRotate = XA_BOOLEAN_FALSE;
+        self->isDestRect = XA_BOOLEAN_FALSE;
+        self->isSrcRect = XA_BOOLEAN_FALSE;
+        self->isScaleOptions = XA_BOOLEAN_FALSE;
+
+        self->self = self;
+    }
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_Create");
+    return self;
+}
+
+/**
+ * void XAVideoPostProcessingItfImpl_Free(XAVideoPostProcessingItfImpl* self);
+ * @param  XAVideoPostProcessingItfImpl* self -
+ **/
+void XAVideoPostProcessingItfImpl_Free(XAVideoPostProcessingItfImpl* self)
+{
+    DEBUG_API("->XAVideoPostProcessingItfImpl_Free");
+    free(self);
+    DEBUG_API("<-XAVideoPostProcessingItfImpl_Free");
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/common/xavideopostprocessingitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,87 @@
+/*
+* 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: 
+*
+*/
+
+#ifndef XAVIDEOPOSTPROCESSINGITF_H
+#define XAVIDEOPOSTPROCESSINGITF_H
+
+#include "xaadptbasectx.h"
+
+/** MACROS **/
+
+/** TYPES **/
+
+/** ENUMERATIONS **/
+
+/** STRUCTURES **/
+/* Definition of XAVideoPostProcessingItf implementation */
+typedef struct XAVideoPostProcessingItfImpl_
+{
+    /* parent interface */
+    struct XAVideoPostProcessingItf_ itf;
+    /* pointer to self */
+    struct XAVideoPostProcessingItfImpl_* self;
+
+    /* variables */
+    XAboolean       supported;
+    XARectangle     srcRect;
+    XARectangle     destRect;
+    XAuint32        scaleOptions;
+    XAuint32        backgroundColor;
+    XAuint32        renderingHints;
+    XAuint32        mirror;
+    XAmillidegree   rotation;
+    XAboolean       isRotate;
+    XAboolean       isMirror;
+    XAboolean		isDestRect;
+    XAboolean		isSrcRect;
+    XAboolean		isScaleOptions;
+
+    /*Adaptation variables*/
+    XAAdaptationBaseCtx *adapCtx;
+
+} XAVideoPostProcessingItfImpl;
+
+/** METHODS **/
+
+/* Base interface XAVideoPostProcessingItf implementation */
+XAresult XAVideoPostProcessingItfImpl_SetRotation(XAVideoPostProcessingItf self,
+                                                  XAmillidegree rotation);
+
+XAresult XAVideoPostProcessingItfImpl_IsArbitraryRotationSupported(XAVideoPostProcessingItf self,
+                                                                   XAboolean *pSupported);
+
+XAresult XAVideoPostProcessingItfImpl_SetScaleOptions(XAVideoPostProcessingItf self,
+                                                      XAuint32 scaleOptions,
+                                                      XAuint32 backgroundColor,
+                                                      XAuint32 renderingHints);
+
+XAresult XAVideoPostProcessingItfImpl_SetSourceRectangle(XAVideoPostProcessingItf self,
+                                                         const XARectangle *pSrcRect);
+
+XAresult XAVideoPostProcessingItfImpl_SetDestinationRectangle(XAVideoPostProcessingItf self,
+                                                              const XARectangle *pDestRect);
+
+XAresult XAVideoPostProcessingItfImpl_SetMirror(XAVideoPostProcessingItf self,
+                                                XAuint32 mirror);
+
+XAresult XAVideoPostProcessingItfImpl_Commit(XAVideoPostProcessingItf self);
+ 
+/* XAVideoPostProcessingItfImpl -specific methods */
+XAVideoPostProcessingItfImpl* XAVideoPostProcessingItfImpl_Create(XAAdaptationBaseCtx *adapCtx);
+void XAVideoPostProcessingItfImpl_Free(XAVideoPostProcessingItfImpl* self);
+
+#endif /* XAVIDEOPOSTPROCESSINGITF_H */
--- a/khronosfws/openmax_al/src/common/xavolumeitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/common/xavolumeitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,8 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
-
 #include "xavolumeitf.h"
 
 #include "xanokiavolumeextitfadaptationmmf.h"
@@ -414,7 +412,6 @@
 void XAVolumeItfImpl_Free(XAVolumeItfImpl* self)
     {
     DEBUG_API("->XAVolumeItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XAVolumeItfImpl_Free");
     }
--- a/khronosfws/openmax_al/src/engine/xaaudioencodercapabilitiesitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaaudioencodercapabilitiesitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include <string.h>
 
 #include "xaglobals.h"
@@ -69,8 +68,8 @@
             { /* query array of encoders */
             if (*pNumEncoders < impl->numCodecs)
                 {
-                DEBUG_ERR("XA_RESULT_BUFFER_INSUFFICIENT");
-                res = XA_RESULT_BUFFER_INSUFFICIENT;
+                DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+                res = XA_RESULT_PARAMETER_INVALID;
                 }
             else
                 {
@@ -85,10 +84,6 @@
                             &temp);
                     pEncoderIds[i] = temp.xaid;
                     }
-
-                pEncoderIds[0] = XA_AUDIOCODEC_AMR;
-                pEncoderIds[1] = XA_AUDIOCODEC_AAC;
-                pEncoderIds[2] = XA_AUDIOCODEC_PCM;
                 }
             }
 
@@ -111,6 +106,7 @@
 
     XACapabilities temp;
 
+    XAint16 index;
     DEBUG_API("->XAAudioEncoderCapabilitiesItfImpl_GetAudioEncoderCapabilities");
 
     /*if( !impl || !pIndex || !pDescriptor )*/
@@ -123,15 +119,19 @@
         res = XA_RESULT_PARAMETER_INVALID;
         return res;
         }
-    else
+    else if(!pDescriptor)
         {
-        *pIndex = 1;
-        if (!pDescriptor)
-            {
-            return res;
-            }
+        res = XACapabilitiesMgr_GetCapsById(impl->capslist,
+                (XACapsType) (XACAP_ENCODER | XACAP_AUDIO), encoderId, &temp);
+        
+        *pIndex = temp.noOfEntries;
+
+        return res;
+
         }
-
+    
+    index = *pIndex;
+    
     /* query capabilities from adaptation using codec id */
     memset(pDescriptor, 0, sizeof(XAAudioCodecDescriptor));
  
@@ -141,8 +141,23 @@
         {
         XAAudioCodecDescriptor* desc =
                 ((XAAudioCodecDescriptor*) (temp.pEntry));
+        if(index >= temp.noOfEntries)
+            {
+            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+            res = XA_RESULT_PARAMETER_INVALID;
+            return res;
+        
+            }
+        else
+            {
+            //indexing
+            desc = desc+index;
+            }
+
         /* map applicable values to XAAudioCodecCapabilities */
         pDescriptor->maxChannels = desc->maxChannels;
+        pDescriptor->minBitsPerSample = desc->minBitsPerSample;
+        pDescriptor->maxBitsPerSample = desc->maxBitsPerSample;
         pDescriptor->minSampleRate = desc->minSampleRate ; /* milliHz */
         if (desc->maxSampleRate < (0xFFFFFFFF))
             {
@@ -152,13 +167,15 @@
             {
             pDescriptor->maxSampleRate = 0xFFFFFFFF;
             }
-        pDescriptor->minBitsPerSample = desc->minBitsPerSample;
-        pDescriptor->maxBitsPerSample = desc->maxBitsPerSample;
+
       pDescriptor->isFreqRangeContinuous=desc->isFreqRangeContinuous;
-        pDescriptor->minBitRate = desc->minBitRate;
-        pDescriptor->maxBitRate = desc->maxBitRate;
-        pDescriptor->numBitratesSupported = desc->numBitratesSupported;
+      pDescriptor->pSampleRatesSupported = desc->pSampleRatesSupported;
+      pDescriptor->numSampleRatesSupported = desc->numSampleRatesSupported;
+      pDescriptor->minBitRate = desc->minBitRate;
+      pDescriptor->maxBitRate = desc->maxBitRate;
       pDescriptor->isBitrateRangeContinuous=desc->isBitrateRangeContinuous;
+      pDescriptor->pBitratesSupported = desc->pBitratesSupported;
+      pDescriptor->numBitratesSupported = desc->numBitratesSupported;
       pDescriptor->profileSetting=desc->profileSetting;
       pDescriptor->modeSetting=desc->modeSetting; /* no chanmode for pcm defined */
     }
@@ -199,11 +216,12 @@
         self->capslist = caps;
 
         /* init variables */
-        assert( XACapabilitiesMgr_GetCapsCount( caps, (XACapsType)((XACapsType)(XACAP_ENCODER|XACAP_AUDIO)),
-                        &(self->numCodecs) ) == XA_RESULT_SUCCESS );
+        XACapabilitiesMgr_GetCapsCount( caps, (XACapsType)((XACapsType)(XACAP_ENCODER|XACAP_AUDIO)),
+                        &(self->numCodecs) );
 
         /*self->mmfEngine = (void*)mmf_capability_engine_init();*/
-        self->numCodecs = 3;
+        
+        //self->numCodecs = 3;
         self->self = self;
 
         }
@@ -218,7 +236,6 @@
         XAAudioEncoderCapabilitiesItfImpl* self)
     {
     DEBUG_API("->XAAudioEncoderCapabilitiesItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XAAudioEncoderCapabilitiesItfImpl_Free");
     }
--- a/khronosfws/openmax_al/src/engine/xaaudioiodevicecapabilitiesitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaaudioiodevicecapabilitiesitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,13 +17,12 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include <string.h>
 
 #include "xaglobals.h"
 #include "xaaudioiodevicecapabilitiesitf.h"
 #include "xacapabilitiesmgr.h"
-
+#include "xaadptbasectx.h"
 
 /* XAAudIODevCapaItfImpl* GetImpl
  * Description: Validate interface pointer and cast it to implementation pointer.
@@ -81,11 +80,12 @@
                     res = XACapabilitiesMgr_GetCapsByIdx(impl->capslist, (XACapsType)(XACAP_DEVSRC|XACAP_AUDIO), i, &temp);
                     pInputDeviceIDs[i] = temp.xaid;
                 }
-
-                pInputDeviceIDs[0] = 0xAD7E5001;
             }
         }
-        *pNumInputs = impl->numInputDevices;
+        else
+        {
+            *pNumInputs = impl->numInputDevices;
+        }
     }
     DEBUG_API("<-XAAudIODevCapaItfImpl_GetAvailableAudioInputs");
     return res;
@@ -216,11 +216,12 @@
                     res = XACapabilitiesMgr_GetCapsByIdx(impl->capslist, (XACapsType)(XACAP_DEVSNK|XACAP_AUDIO), i, &temp);
                     pOutputDeviceIDs[i] = temp.xaid;
                 }
-
-                pOutputDeviceIDs[0] = 0xAD7E5002;
             }
         }
-        *pNumOutputs = impl->numOutputDevices;
+        else
+        {
+            *pNumOutputs = impl->numOutputDevices;
+        }
     }
     DEBUG_API("<-XAAudIODevCapaItfImpl_GetAvailableAudioOutputs");
     return res;
@@ -397,39 +398,6 @@
         }
 
         *pNumAudioInputs = associatedCount;
-
-
-    if(!pAudioInputDeviceIDs)
-        {
-        switch(deviceId)
-            {
-            case 0xAD7E5001:
-                *pNumAudioInputs = 0;
-                break;
-            case 0xAD7E5002:
-                *pNumAudioInputs = 1;
-                break;
-            default:
-                res = XA_RESULT_PARAMETER_INVALID;
-                break;
-            }
-        }
-    else
-        {
-        switch(deviceId)
-            {
-            case 0xAD7E5001:
-                res = XA_RESULT_PARAMETER_INVALID;
-                break;
-            case 0xAD7E5002:
-                pAudioInputDeviceIDs[*pNumAudioInputs - 1] = 0xAD7E5001;
-                break;
-            default:
-                res = XA_RESULT_PARAMETER_INVALID;
-                break;
-            }
-        }
-
     }
 
     DEBUG_API("<-XAAudIODevCapaItfImpl_GetAssociatedAudioInputs");
@@ -493,38 +461,6 @@
         }
 
         *pNumAudioOutputs = associatedCount;
-
-
-        if(!pAudioOutputDeviceIDs)
-            {
-            switch(deviceId)
-                {
-                case 0xAD7E5002:
-                    *pNumAudioOutputs = 0;
-                    break;
-                case 0xAD7E5001:
-                    *pNumAudioOutputs = 1;
-                    break;
-                default:
-                    res = XA_RESULT_PARAMETER_INVALID;
-                    break;
-                }
-            }
-        else
-            {
-            switch(deviceId)
-                {
-                case 0xAD7E5002:
-                    res = XA_RESULT_PARAMETER_INVALID;
-                    break;
-                case 0xAD7E5001:
-                    pAudioOutputDeviceIDs[*pNumAudioOutputs - 1] = 0xAD7E5001;
-                    break;
-                default:
-                    res = XA_RESULT_PARAMETER_INVALID;
-                    break;
-                }
-            }
     }
 
     DEBUG_API("<-XAAudIODevCapaItfImpl_GetAssociatedAudioOutputs");
@@ -570,10 +506,10 @@
         switch(defaultDeviceID)
             {
             case XA_DEFAULTDEVICEID_AUDIOOUTPUT:
-                pAudioDeviceIDs[*pNumAudioDevices - 1] = 0xAD7E5002;
+                pAudioDeviceIDs[*pNumAudioDevices - 1] = XA_ADAPT_DEFAULTAUDIOOUTPUT;
                 break;
             case XA_DEFAULTDEVICEID_AUDIOINPUT:
-                pAudioDeviceIDs[*pNumAudioDevices - 1] = 0xAD7E5001;
+                pAudioDeviceIDs[*pNumAudioDevices - 1] = XA_ADAPT_DEFAULTAUDIOINPUT;
                 break;
             default:
                 res = XA_RESULT_PARAMETER_INVALID;
@@ -718,8 +654,6 @@
         self->inputCbPtrToSelf = NULL;
         self->outputCbPtrToSelf = NULL;
         self->deviceMapCbPtrToSelf = NULL;
-        self->numInputDevices = 1;
-        self->numOutputDevices = 1;
         self->self = self;
     }
     DEBUG_API("<-XAAudIODevCapaItfImpl_Create");
@@ -732,7 +666,6 @@
 void XAAudIODevCapaItfImpl_Free(XAAudIODevCapaItfImpl* self)
 {
     DEBUG_API("->XAAudIODevCapaItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XAAudIODevCapaItfImpl_Free");
 }
--- a/khronosfws/openmax_al/src/engine/xaengine.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaengine.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,8 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
-
 #include "xaengine.h"
 #include "xaobjectitf.h"
 #include "xaengineitf.h"
@@ -26,7 +24,6 @@
 #include "xadynintmgmtitf.h"
 #include "xaaudioiodevicecapabilitiesitf.h"
 #include "xaaudioencodercapabilitiesitf.h"
-#include "xaconfigextensionsitf.h"
 #include "xathreadsafety.h"
 #include "xaframeworkmgr.h"  
 
@@ -37,18 +34,8 @@
     &XA_IID_ENGINE,
     &XA_IID_DYNAMICINTERFACEMANAGEMENT,
     &XA_IID_THREADSYNC,
-    /*    &XA_IID_CONFIGEXTENSION,*/
-    /*    &XA_IID_DEVICEVOLUME,*/
     &XA_IID_AUDIOIODEVICECAPABILITIES,
-    /*    &XA_IID_AUDIODECODERCAPABILITIES,*/
     &XA_IID_AUDIOENCODERCAPABILITIES
-    /*
-    &XA_IID_CAMERACAPABILITIES,
-    &XA_IID_IMAGEDECODERCAPABILITIES,
-    &XA_IID_IMAGEENCODERCAPABILITIES,
-    &XA_IID_VIDEODECODERCAPABILITIES,
-    &XA_IID_VIDEOENCODERCAPABILITIES
-     */
     };
 
 /*****************************************************************************
@@ -331,7 +318,6 @@
     XAEngineImpl* pImpl = (XAEngineImpl*) (*self);
     XAuint8 itfIdx = 0;
     DEBUG_API("->XAEngineImpl_FreeResources");
-    assert( pObj && pImpl && pObj == pObj->self );
 
     /* free all allocated interfaces */
     for (itfIdx = 0; itfIdx < ENGINE_ITFCOUNT; itfIdx++)
--- a/khronosfws/openmax_al/src/engine/xaengine.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaengine.h	Mon Oct 04 00:51:56 2010 +0300
@@ -21,9 +21,6 @@
 #include "openmaxalwrapper.h"
 #include "xaglobals.h"
 #include "xaobjectitf.h"
-#include "xaengineadaptctx.h"
-
-#include "xaengineadaptctxmmf.h"
 #include "xaframeworkmgr.h"
 #include "xacapabilitiesmgr.h"
 
--- a/khronosfws/openmax_al/src/engine/xaengineitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaengineitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include "xaengineitf.h"
 #include "xaobjects.h"
 #include "xacapabilitiesmgr.h"
@@ -47,14 +46,7 @@
         const XAInterfaceID *pInterfaceIds,
         const XAboolean *pInterfaceRequired)
     {
-#ifdef OMAX_CAMERABIN
-    XAEngineItfImpl* impl = GetImpl(self);
-    return XACameraDeviceImpl_CreateCameraDevice( impl->mapper,impl->capabilities,
-            pDevice, deviceID,numInterfaces,
-            pInterfaceIds, pInterfaceRequired );
-#else
     return XA_RESULT_FEATURE_UNSUPPORTED;
-#endif
     }
 
 XAresult XAEngineItfImpl_CreateRadioDevice(XAEngineItf self,
@@ -62,7 +54,7 @@
         const XAInterfaceID *pInterfaceIds,
         const XAboolean *pInterfaceRequired)
     {
-    return XARadioDeviceImpl_CreateRadioDevice( /*((XAEngineItfImpl*)self)->mapper,*/
+    return XARadioDeviceImpl_CreateRadioDevice(
     pDevice, numInterfaces, pInterfaceIds, pInterfaceRequired);
     }
 
@@ -90,6 +82,13 @@
         const XAboolean *pInterfaceRequired)
     {
     XAEngineItfImpl* impl = GetImpl(self);
+    if (!impl )
+        {
+        /* invalid parameter */
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAEngineItfImpl_CreateMediaPlayer");
+        return XA_RESULT_PARAMETER_INVALID;
+        }    
     return XAMediaPlayerImpl_CreateMediaPlayer(impl->mapper,
             impl->capabilities, pPlayer, pDataSrc, pBankSrc, pAudioSnk,
             pImageVideoSnk, pVibra, pLEDArray, numInterfaces, pInterfaceIds,
@@ -103,6 +102,14 @@
         const XAboolean * pInterfaceRequired)
     {
     XAEngineItfImpl* impl = GetImpl(self);
+    if (!impl )
+        {
+        /* invalid parameter */
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAEngineItfImpl_CreateMediaRecorder");
+        return XA_RESULT_PARAMETER_INVALID;
+        }    
+
     return XAMediaRecorderImpl_CreateMediaRecorder(impl->mapper,
             impl->capabilities, pRecorder, pAudioSrc, pImageVideoSrc,
             pDataSnk, numInterfaces, pInterfaceIds, pInterfaceRequired);
@@ -121,6 +128,13 @@
         const XAboolean *pInterfaceRequired)
     {
     XAEngineItfImpl* impl = GetImpl(self);
+    if (!impl )
+        {
+        /* invalid parameter */
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAEngineItfImpl_CreateMetadataExtractor");
+        return XA_RESULT_PARAMETER_INVALID;
+        }
     return XAMetadataExtractorImpl_Create(impl->mapper, impl->capabilities,
             pMetadataExtractor, pDataSource, numInterfaces, pInterfaceIds,
             pInterfaceRequired);
@@ -186,14 +200,16 @@
         XAuint32 objectID, XAuint32 *pNumSupportedInterfaces)
     {
     XAresult res = XA_RESULT_SUCCESS;
+    XAEngineItfImpl* impl = GetImpl(self);
     DEBUG_API("->XAEngineItfImpl_QueryNumSupportedInterfaces");
 
-    if (!pNumSupportedInterfaces)
+    if (!impl || !pNumSupportedInterfaces)
         {
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
         DEBUG_API("<-XAEngineItfImpl_QueryNumSupportedInterfaces");
         return XA_RESULT_PARAMETER_INVALID;
         }
+    
     *pNumSupportedInterfaces = 0;
     switch (objectID)
         {
@@ -230,14 +246,16 @@
         XAuint32 objectID, XAuint32 index, XAInterfaceID *pInterfaceId)
     {
     XAresult res = XA_RESULT_SUCCESS;
+    XAEngineItfImpl* impl = GetImpl(self);
     DEBUG_API("->XAEngineItfImpl_QuerySupportedInterfaces");
 
-    if (!pInterfaceId)
+    if (!impl || !pInterfaceId)
         {
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
         DEBUG_API("<-XAEngineItfImpl_QuerySupportedInterfaces");
         return XA_RESULT_PARAMETER_INVALID;
         }
+    
     *pInterfaceId = XA_IID_NULL;
     switch (objectID)
         {
@@ -262,6 +280,7 @@
             break;
         default:
             res = XA_RESULT_FEATURE_UNSUPPORTED;
+            break;
         }
 
     DEBUG_API_A1("<-XAEngineItfImpl_QuerySupportedInterfaces %lu", res);
@@ -413,7 +432,6 @@
         self->itf.IsExtensionSupported = XAEngineItfImpl_IsExtensionSupported;
         self->mapper = fwkmapper;
         self->capabilities = capabilities;
-        self->xyz = 50;
         self->self = self;
         }
     DEBUG_API("<-XAEngineItfImpl_Create");
@@ -425,7 +443,6 @@
     DEBUG_API("->XAEngineItfImpl_Free");
     if(self)
         {
-        assert(self==self->self);
         free(self);
         }
     DEBUG_API("<-XAEngineItfImpl_Free");
--- a/khronosfws/openmax_al/src/engine/xaengineitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xaengineitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -41,9 +41,6 @@
     struct FrameworkMap_* mapper;
     /*Not Owned*/
     struct XACapabilities_* capabilities;
-
-    int xyz;
-
     } XAEngineItfImpl;
 
 /** METHODS **/
--- a/khronosfws/openmax_al/src/engine/xathreadsyncitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/engine/xathreadsyncitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,8 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
-
 #include "xathreadsyncitf.h"
 
 /**
@@ -130,7 +128,6 @@
     DEBUG_API("->XAThreadSyncItfImpl_Free");
     if(self)
         {
-        assert(self==self->self);
         XAImpl_DeleteMutex(self->engCriticalSection);
         free(self);
         }
--- a/khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,13 +15,14 @@
  *
  */
 
-#include <assert.h>
 #include <string.h>
 #include <gst/gst.h>
 #include <gst/gstbuffer.h>
+#include <stdlib.h>
+#ifdef INPUTSRCSELECTION_FEATURE
+#include <gst/interfaces/gstaudioinputinterface.h>
+#endif
 #include "xaobjectitf.h"
-#include "xaradiodevice.h"
-#include <stdlib.h>
 #include "xaadaptationgst.h"
 /*
  * XAAdaptationGstCtx* XAAdaptationGst_Create()
@@ -45,24 +46,25 @@
             {
             GError* gerror = 0;
             /*         Add default handler for Gst-bus messages */
-            pSelf->busCb = XAAdaptationGst_GstBusCb;
-
-            // VASU MOD BEGINS
+            //pSelf->busCb = XAAdaptationGst_GstBusCb;
             pSelf->cond_mutx_inited = XA_BOOLEAN_FALSE;
-            // VASU MOD ENDS
-
+#ifdef PROFILE_HEAP_USAGE
+            xa_heap_total_alloc_print("Before GST Init");
+#endif
             sem_init(&(pSelf->semAsyncWait), 0, 0);
-//cross check
             if ( !gst_init_check( NULL, NULL, &gerror ) )
                 {
                     DEBUG_ERR("Gst Initalization failure.");
                     return XA_RESULT_INTERNAL_ERROR;
                 }
+#ifdef PROFILE_HEAP_USAGE
+            xa_heap_total_alloc_print("After GST Init");
+#endif            
             }
         }
     else
         {
-        DEBUG_ERR("Invalid Gst Base Context.")
+        DEBUG_ERR("Invalid Gst Base Context.");
         return XA_RESULT_PARAMETER_INVALID;
         }
 
@@ -78,7 +80,6 @@
     {
     XAresult ret = XA_RESULT_SUCCESS;
     DEBUG_API("->XAAdaptationGst_PostInit");
-    // VASU MOD BEGINS
     XAAdaptationBase_PostInit(&ctx->baseObj);
 
     ctx->thread_launched = XA_BOOLEAN_FALSE;
@@ -86,7 +87,6 @@
     pthread_cond_init(&(ctx->ds_condition), NULL);
     ctx->cond_mutx_inited = XA_BOOLEAN_TRUE;
 
-    // VASU MOD ENDS
     DEBUG_API("<-XAAdaptationGst_PostInit");
     return ret;
     }
@@ -112,7 +112,7 @@
         if (gst_element_set_state(GST_ELEMENT(ctx->bin), GST_STATE_NULL)
                 != GST_STATE_CHANGE_SUCCESS)
             { /*not much we can do*/
-            DEBUG_ERR("WARNING: Failed to change to NULL state before deletion!!")
+            DEBUG_ERR("WARNING: Failed to change to NULL state before deletion!!");
             }
         }
 
@@ -130,8 +130,6 @@
         gst_object_unref(ctx->bin);
         }
 
-    //g_array_free(ctx->evtHdlrs, TRUE);
-    // VASU MOD BEGINS
     if (ctx->cond_mutx_inited == XA_BOOLEAN_TRUE)
         {
         ctx->thread_launched = XA_BOOLEAN_FALSE;
@@ -139,87 +137,11 @@
         pthread_cond_destroy(&(ctx->ds_condition));
         ctx->cond_mutx_inited = XA_BOOLEAN_FALSE;
         }
-    // VASU MOD ENDS
     XAAdaptationBase_Free(&ctx->baseObj);
 
     DEBUG_API("<-XAAdaptationGst_Free");
     }
 
-/*
- * gboolean XAAdaptationBase_GstBusCb( GstBus *bus, GstMessage *message, gpointer data )
- * Default Gst-bus message handler (Callback)
- */
-gboolean XAAdaptationGst_GstBusCb(GstBus *bus, GstMessage *message,
-        gpointer data)
-    {
-    GError *error;
-    gchar *debug;
-    DEBUG_API("->XAAdaptationGst_GstBusCb");DEBUG_INFO_A2("Received Gst callback \"%s\" from \"%s\"",
-            GST_MESSAGE_TYPE_NAME(message),
-            GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
-
-    switch (GST_MESSAGE_TYPE(message))
-        {
-        case GST_MESSAGE_ERROR:
-            gst_message_parse_error(message, &error, &debug);
-            DEBUG_INFO_A1("%s", debug)
-            ;
-            break;
-        case GST_MESSAGE_EOS:
-            break;
-        case GST_MESSAGE_UNKNOWN:
-            break;
-        case GST_MESSAGE_WARNING:
-            break;
-        case GST_MESSAGE_INFO:
-            break;
-        case GST_MESSAGE_TAG:
-            break;
-        case GST_MESSAGE_BUFFERING:
-            break;
-        case GST_MESSAGE_STATE_CHANGED:
-            break;
-        case GST_MESSAGE_STATE_DIRTY:
-            break;
-        case GST_MESSAGE_STEP_DONE:
-            break;
-        case GST_MESSAGE_CLOCK_PROVIDE:
-            break;
-        case GST_MESSAGE_CLOCK_LOST:
-            break;
-        case GST_MESSAGE_NEW_CLOCK:
-            break;
-        case GST_MESSAGE_STRUCTURE_CHANGE:
-            break;
-        case GST_MESSAGE_STREAM_STATUS:
-            break;
-        case GST_MESSAGE_APPLICATION:
-            break;
-        case GST_MESSAGE_ELEMENT:
-            break;
-        case GST_MESSAGE_SEGMENT_START:
-            break;
-        case GST_MESSAGE_SEGMENT_DONE:
-            break;
-        case GST_MESSAGE_DURATION:
-            break;
-        case GST_MESSAGE_LATENCY:
-            break;
-        case GST_MESSAGE_ASYNC_START:
-            break;
-        case GST_MESSAGE_ASYNC_DONE:
-            break;
-        case GST_MESSAGE_ANY:
-            break;
-        default:
-            DEBUG_INFO("Unhandled Gst-Bus message")
-            ;
-            break;
-        }
-    DEBUG_API("<-XAAdaptationGst_GstBusCb");
-    return TRUE;
-    }
-
 XAresult XAAdaptationGst_InitGstListener(XAAdaptationGstCtx* ctx)
     {
     int ret;
@@ -230,23 +152,21 @@
         }
     if (!ctx->bus)
         {
-        DEBUG_ERR("could not get gst bus!")
+        DEBUG_ERR("could not get gst bus!");
         return XA_RESULT_INTERNAL_ERROR;
         }
     ret = pthread_create(&(ctx->busloopThr), NULL,
             (XAAdaptationGst_LaunchGstListener), (void*) ctx);
-    // VASU MOD BEGINS
     if (ctx->thread_launched == XA_BOOLEAN_FALSE)
         {
         // Wait until the thread is created
         pthread_mutex_lock(&(ctx->ds_mutex));
         pthread_cond_wait(&(ctx->ds_condition), &(ctx->ds_mutex));
         pthread_mutex_unlock(&(ctx->ds_mutex));
-        // VASU MOD ENDS
         }
     if (ret)
         {
-        DEBUG_ERR_A1("could not create thread!! (%d)",ret)
+        DEBUG_ERR_A1("could not create thread!! (%d)",ret);
         return XA_RESULT_INTERNAL_ERROR;
         }
     DEBUG_API("<-XAAdaptationGst_InitGstListener");
@@ -257,24 +177,21 @@
     {
     XAAdaptationGstCtx* ctx = (XAAdaptationGstCtx*) args;
     DEBUG_API("->XAAdaptationGst_LaunchGstListener");
-    // VASU MOD BEGINS
     // Signal calling thread that this thread creation is completed
     ctx->thread_launched = XA_BOOLEAN_TRUE;
     pthread_mutex_lock(&(ctx->ds_mutex));
     pthread_cond_signal(&(ctx->ds_condition));
     pthread_mutex_unlock(&(ctx->ds_mutex));
-    // VASU MOD ENDS
 
     ctx->busloop = g_main_loop_new(NULL, FALSE);
     if (!ctx->busloop)
         {
         DEBUG_ERR("Glib main loop failure.");
         DEBUG_API("<-XAAdaptationGst_LaunchGstListener");
-        assert(0);
         }
     else
         {
-        DEBUG_INFO("Start Glib main loop")
+        DEBUG_INFO("Start Glib main loop");
         g_main_loop_run(ctx->busloop);
         DEBUG_INFO("Glib main loop stopped - exiting thread");
         DEBUG_API("<-XAAdaptationGst_LaunchGstListener");
@@ -397,47 +314,40 @@
  * Description: Create gst source element corresponding to XA source structure
  */
 GstElement* XAAdaptationGst_CreateGstSource(XADataSource* xaSrc,
-        const char *name, XAboolean *isobj, XAboolean *isPCM,
-        XAboolean *isRawImage)
+        const char *name, XAboolean *isPCM )
     {
     XAuint32 locType = 0;
     GstElement* gstSrc = NULL;
+#ifdef INPUTSRCSELECTION_FEATURE    
+    GstAudioInputConfigIntfc *audioInputIntfc = NULL;
+#endif
     char* fname = NULL;
     XADataLocator_URI* uri = NULL;
     XADataLocator_IODevice* ioDevice = NULL;
-#ifdef OMAX_CAMERABIN
-    XACameraDeviceImpl* cameraDevice = NULL;
-    XAObjectItfImpl* pObj = NULL;
-#endif
-    XARadioDeviceImpl* radioDevice = NULL;
 
     DEBUG_API("->XAAdaptationGst_CreateGstSource");
-    if (!xaSrc || !xaSrc->pLocator || !isobj)
+    if (!xaSrc || !xaSrc->pLocator )
         {
         return NULL;
         }
-    *isobj = XA_BOOLEAN_FALSE;
+
     if (xaSrc && xaSrc->pFormat && *((XAuint32*) (xaSrc->pFormat))
             ==XA_DATAFORMAT_PCM && isPCM)
         {
         *isPCM = XA_BOOLEAN_TRUE;
         }
-    if (xaSrc && xaSrc->pFormat && *((XAuint32*) (xaSrc->pFormat))
-            ==XA_DATAFORMAT_RAWIMAGE && isRawImage)
-        {
-        *isRawImage = XA_BOOLEAN_TRUE;
-        }
+
     locType = *((XAuint32*) (xaSrc->pLocator));
     switch (locType)
         {
         case XA_DATALOCATOR_URI:
-            DEBUG_INFO("XA_DATALOCATOR_URI")
-            ;
+            {
+            DEBUG_INFO("XA_DATALOCATOR_URI");
             uri = (XADataLocator_URI*) xaSrc->pLocator;
             gstSrc = gst_element_factory_make("filesrc", name);
             if (uri->URI != NULL)
                 {
-                DEBUG_INFO_A1("URI: %s", uri->URI);
+                DEBUG_INFO_A1_STR("URI: %s", (char *)uri->URI);
                 if (strncmp((char *) uri->URI, "file:///", 8) == 0)
                     {
                     fname = (char *) &((uri->URI)[8]);
@@ -445,7 +355,8 @@
                 else
                     {
                     fname = (char *) uri->URI;
-                    }DEBUG_INFO_A1("->filesystem path %s", fname);
+                    }
+                DEBUG_INFO_A1_STR("->filesystem path %s", (char *)fname);
                 g_object_set(G_OBJECT(gstSrc), "location", fname, NULL);
                 /*check for pcm - decodebin does not know how to handle raw PCM files */
                 if (isPCM && strstr(fname, ".pcm"))
@@ -460,10 +371,10 @@
                 return NULL;
                 }
             break; /* XA_DATALOCATOR_URI */
-
+            }
         case XA_DATALOCATOR_IODEVICE:
-            DEBUG_INFO("XA_DATALOCATOR_IODEVICE")
-            ;
+            {
+            DEBUG_INFO("XA_DATALOCATOR_IODEVICE");
             ioDevice = (XADataLocator_IODevice*) (xaSrc->pLocator);
             switch (ioDevice->deviceType)
                 {
@@ -473,96 +384,63 @@
                     DEBUG_INFO_A1("ioDevice->deviceID: %x", ioDevice->deviceID);
                     switch (ioDevice->deviceID)
                         {
-                        //case XA_ADAPTID_ALSASRC: //Krishna
-                        case XA_ADAPTID_DEVSOUNDSRC:
-                            //DEBUG_INFO("alsasrc"); //Krishna
-                            DEBUG_INFO("devsoundsrc")
-                            ;
+                        case XA_ADAPTID_DEVSOUNDSRC_MIC:
+                            DEBUG_INFO("devsoundsrc");
+                            gstSrc = gst_element_factory_make("devsoundsrc",
+                                    name);
+#ifdef INPUTSRCSELECTION_FEATURE
+                            if(gstSrc)
+                                {
+                                audioInputIntfc = GST_AUDIO_INPUT_CONFIG_GET_IFACE(gstSrc);
+                                if(audioInputIntfc)
+                                    {
+                                    audioInputIntfc->SetAudioInputs(EDefaultMicrophone);
+                                    }
+                                }
+#endif
+                            break;
+                        case XA_ADAPTID_DEVSOUNDSRC_FMRX:
+                            DEBUG_INFO("devsoundsrc");
                             gstSrc = gst_element_factory_make("devsoundsrc",
-                                    name); //Krishna - changed to devsoundsrc
-							// no need to set num-buffers		
-                            /*g_object_set(G_OBJECT (gstSrc), "num-buffers",
-                                    80, NULL);*/
+                                    name);
+#ifdef INPUTSRCSELECTION_FEATURE
+                            if(gstSrc)
+                                {
+                                audioInputIntfc = GST_AUDIO_INPUT_CONFIG_GET_IFACE(gstSrc);
+                                if(audioInputIntfc)
+                                    {
+                                    audioInputIntfc->SetAudioInputs(EFmRadio);
+                                    }
+                                }
+#endif
                             break;
+                        case XA_ADAPTID_DEVSOUNDSRC_CALL:
+                            DEBUG_INFO("devsoundsrc");
+                            gstSrc = gst_element_factory_make("devsoundsrc",
+                                    name);
+#ifdef INPUTSRCSELECTION_FEATURE
+                            if(gstSrc)
+                                {
+                                audioInputIntfc = GST_AUDIO_INPUT_CONFIG_GET_IFACE(gstSrc);
+                                if(audioInputIntfc)
+                                    {
+                                    audioInputIntfc->SetAudioInputs(EVoiceCall);
+                                    }
+                                }
+#endif
+                            break;
+
                         case XA_ADAPTID_AUDIOTESTSRC:
                             /*fall through*/
                         default:
-                            DEBUG_INFO("audiotestsrc")
-                            ;
+                            DEBUG_INFO("audiotestsrc");
                             gstSrc = gst_element_factory_make("audiotestsrc",
                                     name);
                             break;
                         }
                     break;
                     }
-#ifdef OMAX_CAMERABIN
 
-                    case XA_IODEVICE_CAMERA:
-                        {
-                        DEBUG_INFO("XA_IODEVICE_CAMERA");
-                        if ( ioDevice->device )
-                            { /*source is camera object*/
-                            DEBUG_INFO("Use camerabin as source.");
-                            /* Get camerabin from source object */
-                            pObj = (XAObjectItfImpl*)(*ioDevice->device);
-                            cameraDevice = (XACameraDeviceImpl*)(pObj);
-                            /*TODO we had to remove this line below since adaptationCtx
-                             * was  not a member of structure*/
-
-                            gstSrc = GST_ELEMENT(((XAAdaptationGstCtx*)(cameraDevice->adaptationCtx))->bin);
-                            /* refcount increase is needed to keep this not being deleted after use */
-                            gst_object_ref(GST_OBJECT(gstSrc));
-                            *isobj = XA_BOOLEAN_TRUE;
-                            }
-                        else
-                            {
-                            DEBUG_INFO_A1("ioDevice->deviceID: %x", ioDevice->deviceID);
-                            switch (ioDevice->deviceID )
-                                {
-                                case XA_ADAPTID_V4L2SRC:
-                                DEBUG_INFO("Camera deviceID: v4l2src ");
-
-                                break;
-                                case XA_ADAPTID_VIDEOTESTSRC:
-                                DEBUG_INFO("Camera deviceID: videotestsrc");
-
-                                break;
-                                default:
-                                case XA_DEFAULTDEVICEID_CAMERA:
-                                DEBUG_INFO("Camera deviceID:Default");
-
-                                break;
-                                }
-                            if ( cameraCtx )
-                                {
-                                gstSrc = GST_ELEMENT(cameraCtx->baseObj.bin);
-                                gst_object_ref(GST_OBJECT(gstSrc));
-                                *isobj = XA_BOOLEAN_TRUE;
-                                }
-                            else
-                                {
-                                DEBUG_ERR("No camera object created!");
-                                return NULL;
-                                }
-                            }
-                        break;
-                        }
-#endif                
-                case XA_IODEVICE_RADIO:
-                    DEBUG_INFO("XA_IODEVICE_RADIO")
-                    ;
-                    if (ioDevice->device)
-                        {
-                        DEBUG_INFO("Use radio pipeline as source.");
-                        /* Get radio_pipeline and set it to base context */
-                        radioDevice = (XARadioDeviceImpl*) (*ioDevice->device);
-                        /* radio does not have actual bin, only source element*/
-                        gstSrc = GST_ELEMENT(((XAAdaptationGstCtx*)radioDevice->adaptationCtx)->bin);
-                        /* refcount increase is needed to keep this not being deleted after use */
-                        gst_object_ref(GST_OBJECT(gstSrc));
-                        /**isobj = XA_BOOLEAN_TRUE;*/
-                        }
-                    break;
                 default:
                     {
                     DEBUG_ERR("Unsupported IODevice.");
@@ -570,47 +448,16 @@
                     }
                 }
             break; /* XA_DATALOCATOR_IODEVICE */
-
+            }
         case XA_DATALOCATOR_ADDRESS:
-            {
-            XADataLocator_Address* address =
-                    (XADataLocator_Address*) (xaSrc->pLocator);
-            gstSrc = gst_element_factory_make("appsrc", name);
-            /* init gst buffer from datalocator */
-            if (gstSrc)
-                {
-                /* init GST buffer from XADataLocator*/
-                GstBuffer* userBuf = gst_buffer_new();
-                if (userBuf)
-                    {
-                    userBuf->size = address->length;
-                    userBuf->data = address->pAddress;
-                    /* push the whole buffer to appsrc so it is ready for preroll */
-                    DEBUG_INFO("Pushing buffer");
-                    gst_app_src_push_buffer(GST_APP_SRC(gstSrc), userBuf);
-                    DEBUG_INFO_A1("Sent buffer at 0x%x to appsrc", userBuf );
-                    gst_app_src_end_of_stream(GST_APP_SRC(gstSrc));
-                    }
-                else
-                    {
-                    DEBUG_ERR("Failure allocating buffer!");
-                    }
-                }
-            else
-                {
-                DEBUG_ERR("Failure creating appsrc!");
-                }
-            }
-            break;
-
         default:
-            DEBUG_ERR("Incorrect data locator for source.")
+            DEBUG_ERR("Incorrect data locator for source.");
             break;
         }
 
     if (gstSrc)
         {
-        DEBUG_INFO_A1("Created gstreamer source element at %x", gstSrc);
+        DEBUG_INFO_A1("Created gstreamer source element at %x", (int)gstSrc);
         }
 
     DEBUG_API("<-XAAdaptationGst_CreateGstSource");
@@ -625,7 +472,7 @@
  * Description: Create gst sink element corresponding to XA sink structure
  */
 GstElement* XAAdaptationGst_CreateGstSink(XADataSink* xaSnk,
-        const char *name, XAboolean *isobj)
+        const char *name)
     {
     XAuint32 locType = 0;
     GstElement* gstSnk = NULL;
@@ -648,8 +495,8 @@
         switch (locType)
             {
             case XA_DATALOCATOR_URI:
-                DEBUG_INFO("XA_DATALOCATOR_URI")
-                ;
+                {
+                DEBUG_INFO("XA_DATALOCATOR_URI");
                 uri = (XADataLocator_URI*) xaSnk->pLocator;
                 gstSnk = gst_element_factory_make("filesink", name);
                 if (!gstSnk)
@@ -660,7 +507,7 @@
                 if (uri->URI != NULL)
                     {
                     XAchar *fname;
-                    DEBUG_INFO_A1("URI: %s", uri->URI);
+                    DEBUG_INFO_A1_STR("URI: %s", (char *)uri->URI);
                     if (strncmp((char *) uri->URI, "file:///", 8) == 0)
                         {
                         fname = &((uri->URI)[8]);
@@ -668,7 +515,8 @@
                     else
                         {
                         fname = uri->URI;
-                        }DEBUG_INFO_A1("->filesystem path %s", fname);
+                        }
+                    DEBUG_INFO_A1_STR("->filesystem path %s", (char *)fname);
                     g_object_set(G_OBJECT(gstSnk), "location", fname,
                             "async", FALSE, "qos", FALSE, "max-lateness",
                             (gint64) (-1), NULL);
@@ -679,737 +527,35 @@
                     return NULL;
                     }
                 break;
+                }
+/*            case XA_DATALOCATOR_ADDRESS:
             case XA_DATALOCATOR_NATIVEDISPLAY:
-                DEBUG_INFO("Sink locator type - XA_DATALOCATOR_NATIVEDISPLAY")
-                ;
-#ifdef USE_NGA_SURFACES
-                gstSnk = gst_element_factory_make("devvideosink",
-                        "devvideosink");
-#else
-                gstSnk = gst_element_factory_make("ximagesink",name);
-#endif /*USE_NGA_SURFACES*/
-                if (!gstSnk)
-                    {
-                    DEBUG_ERR("Cannot create sink!");
-                    return NULL;
-                    }
-                g_object_set(G_OBJECT(gstSnk), "force-aspect-ratio", TRUE,
-                        "async", FALSE, "qos", FALSE, "handle-events", TRUE,
-                        "handle-expose", TRUE, "max-lateness", (gint64) (-1),
-                        NULL);
-                break;
             case XA_DATALOCATOR_OUTPUTMIX:
-                DEBUG_INFO("Sink locator type - XA_DATALOCATOR_OUTPUTMIX");
-                    {
-                    }
-                break;
-
-            case XA_DATALOCATOR_ADDRESS:
-                {
-                gstSnk = gst_element_factory_make("appsink", name);
-                /* Not actually object sink, but attribute used to notify recorder
-                 * about appsink (no object sinks applicable in this use case)
-                 **/
-                *isobj = TRUE;
-                }
-                break;
-            case XA_DATALOCATOR_IODEVICE:
+            case XA_DATALOCATOR_IODEVICE:*/
                 /* when only valid IOdevice sinks vibra and LED sinks implemented
                  * at adaptation level, add handling here (in this implementation,
                  * no handling needed as only dummy implementations for those)
                  **/
             default:
-                DEBUG_ERR("Incorrect data locator for sink.")
+                DEBUG_ERR("Incorrect data locator for sink.");
                 break;
             }
         }
     if (gstSnk)
         {
-        DEBUG_INFO_A1("Created gstreamer sink element at %x", gstSnk);
+        DEBUG_INFO_A1("Created gstreamer sink element at %x", (int)gstSnk);
         }
     DEBUG_API("<-XAAdaptationGst_CreateGstSink");
     return gstSnk;
     }
 
-/**
- * GstElement* XAAdaptationGst_CreateVideoPP( )
- * @return GstElement* - return newly created gst pipeline element
- * Description: Create video processing pipeline
- */
-GstElement* XAAdaptationGst_CreateVideoPP()
-    {
-    GstElement *vpp;
-    DEBUG_API("->XAAdaptationGst_CreateVideoPP");
-    vpp = gst_pipeline_new("videopp");
-    if (vpp)
-        {
-        GstPad *ghostsink, *ghostsrc;
-        GstElement *col1, *col2, *rotate, *mirror, *box, *crop, *gamma,
-                *balance, *scale, *scale2,
-#ifdef USE_NGA_SURFACES
-                *identity,
-#endif /*USE_NGA_SURFACES*/
-                *queue;
-
-        /* Crete ffmpegcolorspace to convert stream to correct format */
-        col1 = gst_element_factory_make("ffmpegcolorspace", "pp_colsp1");
-        if (col1)
-            {
-            DEBUG_INFO("Created ffmpegcolorspace element");
-            gst_bin_add(GST_BIN(vpp), col1);
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(col1, "sink");
-            if (ghostsink)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_sink",
-                        ghostsink));
-                gst_object_unref(GST_OBJECT(ghostsink));
-                }
-            }
-
-        /* create video crop, this will be sink for videoPP pipeline */
-        crop = gst_element_factory_make("videocrop", "pp_crop");
-        if (crop)
-            {
-            DEBUG_INFO("Created crop element");
-            gst_bin_add(GST_BIN(vpp), crop);
-            }
-
-        /* create video rotate */
-        rotate = gst_element_factory_make("videoflip", "pp_rotate");
-        if (rotate)
-            {
-            DEBUG_INFO("Created rotate element");
-            g_object_set(G_OBJECT(rotate), "method", FLIP_NONE, NULL);
-            gst_bin_add(GST_BIN(vpp), rotate);
-            }
-
-        /* create video mirror */
-        mirror = gst_element_factory_make("videoflip", "pp_mirror");
-        if (mirror)
-            {
-            DEBUG_INFO("Created mirror element");
-            g_object_set(G_OBJECT(mirror), "method", FLIP_NONE, NULL);
-            gst_bin_add(GST_BIN(vpp), mirror);
-            }
-
-        /* create video box */
-        box = gst_element_factory_make("videobox", "pp_box");
-        if (box)
-            {
-            DEBUG_INFO("Created videobox element");
-            gst_bin_add(GST_BIN(vpp), box);
-            }
-
-        /* create video balance */
-        balance = gst_element_factory_make("videobalance", "pp_balance");
-        if (balance)
-            {
-            DEBUG_INFO("Created balance element");
-            gst_bin_add(GST_BIN(vpp), balance);
-            }
-
-        /* create video gamma */
-        gamma = gst_element_factory_make("gamma", "pp_gamma");
-        if (gamma)
-            {
-            DEBUG_INFO("Created gamma element");
-            gst_bin_add(GST_BIN(vpp), gamma);
-            }
-
-        /* Create videoscale element to scale postprocessed output to correct size */
-        scale = gst_element_factory_make("videoscale", "pp_scale");
-        if (scale)
-            {
-            DEBUG_INFO("Created videoscale element");
-            gst_bin_add(GST_BIN(vpp), scale);
-            }
-        scale2 = gst_element_factory_make("videoscale", "pp_scale2");
-        if (scale2)
-            {
-            GstPad *pad = NULL;
-            GstCaps *caps = NULL;
-            DEBUG_INFO("Created videoscale element");
-            pad = gst_element_get_static_pad(scale2, "src");
-            caps = gst_caps_new_simple("video/x-raw-yuv", "width",
-                    G_TYPE_INT, 0, "height", G_TYPE_INT, 0, NULL);
-            gst_pad_set_caps(pad, caps);
-            gst_bin_add(GST_BIN(vpp), scale2);
-            }
-
-        /* create video queue */
-        queue = gst_element_factory_make("queue", "vpp_queue");
-        if (queue)
-            {
-            DEBUG_INFO("Created queue element");
-            gst_bin_add(GST_BIN(vpp), queue);
-#ifdef USE_NGA_SURFACES
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(queue, "sink");
-            if (ghostsink)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_src",
-                        ghostsink));
-                gst_object_unref(GST_OBJECT(ghostsink));
-                }
-#endif /*USE_NGA_SURFACES*/
-            }
-
-        /* Crete ffmpegcolorspace to convert stream to correct format */
-        col2 = gst_element_factory_make("ffmpegcolorspace", "pp_colsp2");
-        if (col2)
-            {
-            DEBUG_INFO("Created ffmpegcolorspace element");
-            gst_bin_add(GST_BIN(vpp), col2);
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(col2, "src");
-            if (ghostsrc)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_src",
-                        ghostsrc));
-                gst_object_unref(GST_OBJECT(ghostsrc));
-                }
-            }
-
-#ifdef USE_NGA_SURFACES
-        //shyward
-        /* create identity element */
-        identity = gst_element_factory_make("identity", "identity");
-        if (identity)
-            {
-            DEBUG_INFO("Created identity element");
-            gst_bin_add(GST_BIN(vpp), identity);
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(identity, "src");
-            if (ghostsrc)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_sink",
-                        ghostsrc));
-                gst_object_unref(GST_OBJECT(ghostsrc));
-                }
-            }
-        if (!(gst_element_link_many(queue, identity, NULL)))
-#else
-        //shyward - thins code assumes all the elements will have been created, which is not true
-        if( !(gst_element_link_many(col1,
-                                scale,
-                                crop,
-                                rotate,
-                                mirror,
-                                box,
-                                balance,
-                                gamma,
-                                queue,
-                                scale2,
-#ifdef USE_NGA_SURFACES
-                                identity,
-#endif /*USE_NGA_SURFACES*/
-                                col2,
-                                NULL)
-                ) )
-#endif /*USE_NGA_SURFACES*/
-            {
-            DEBUG_ERR("Could not link videopp elements!!");
-            gst_object_unref(vpp);
-            vpp = NULL;
-            }
-        }
-    DEBUG_API("<-XAAdaptationGst_CreateVideoPP");
-    return vpp;
-    }
-
-/**
- * GstElement* XAAdaptationGst_CreateFixedSizeRecordVideoPP( )
- * @return GstElement* - return newly created gst pipeline element
- * Description: Create video processing pipeline with fixed output size
- *  to TEST_VIDEO_WIDTH x TEST_VIDEO_HEIGHT
- *              experimental implementation for changing recorder output size
- */
-GstElement* XAAdaptationGst_CreateFixedSizeVideoPP()
-    {
-    GstElement *vpp;
-    DEBUG_API("->XAAdaptationGst_CreateFixedSizeVideoPP");
-    vpp = gst_pipeline_new("videopp");
-    if (vpp)
-        {
-        GstPad *ghostsink, *ghostsrc;
-        GstElement *col1, *col2, *rotate, *mirror, *box, *crop, *gamma,
-                *balance, *scale, *scale2, *filter, *queue;
-
-        /* Crete ffmpegcolorspace to convert stream to correct format */
-        col1 = gst_element_factory_make("ffmpegcolorspace", "pp_colsp1");
-        if (col1)
-            {
-            DEBUG_INFO("Created ffmpegcolorspace element");
-            gst_bin_add(GST_BIN(vpp), col1);
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(col1, "sink");
-            if (ghostsink)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_sink",
-                        ghostsink));
-                gst_object_unref(GST_OBJECT(ghostsink));
-                }
-            }
-
-        /* create video crop, this will be sink for videoPP pipeline */
-        crop = gst_element_factory_make("videocrop", "pp_crop");
-        if (crop)
-            {
-            DEBUG_INFO("Created crop element");
-            gst_bin_add(GST_BIN(vpp), crop);
-            }
-
-        /* create video rotate */
-        rotate = gst_element_factory_make("videoflip", "pp_rotate");
-        if (rotate)
-            {
-            DEBUG_INFO("Created rotate element");
-            g_object_set(G_OBJECT(rotate), "method", FLIP_NONE, NULL);
-            gst_bin_add(GST_BIN(vpp), rotate);
-            }
-
-        /* create video mirror */
-        mirror = gst_element_factory_make("videoflip", "pp_mirror");
-        if (mirror)
-            {
-            DEBUG_INFO("Created mirror element");
-            g_object_set(G_OBJECT(mirror), "method", FLIP_NONE, NULL);
-            gst_bin_add(GST_BIN(vpp), mirror);
-            }
-
-        /* create video box */
-        box = gst_element_factory_make("videobox", "pp_box");
-        if (box)
-            {
-            DEBUG_INFO("Created videobox element");
-            gst_bin_add(GST_BIN(vpp), box);
-            }
-
-        /* create video balance */
-        balance = gst_element_factory_make("videobalance", "pp_balance");
-        if (balance)
-            {
-            DEBUG_INFO("Created balance element");
-            gst_bin_add(GST_BIN(vpp), balance);
-            }
-
-        /* create video gamma */
-        gamma = gst_element_factory_make("gamma", "pp_gamma");
-        if (gamma)
-            {
-            DEBUG_INFO("Created gamma element");
-            gst_bin_add(GST_BIN(vpp), gamma);
-            }
-
-        /* Create videoscale element to scale postprocessed output to correct size */
-        scale = gst_element_factory_make("videoscale", "pp_scale");
-        if (scale)
-            {
-            DEBUG_INFO("Created videoscale element");
-            gst_bin_add(GST_BIN(vpp), scale);
-            }
-        scale2 = gst_element_factory_make("videoscale", "pp_scale2");
-        if (scale2)
-            {
-            GstPad *pad = NULL;
-            GstCaps *caps = NULL;
-            DEBUG_INFO("Created videoscale element");
-            pad = gst_element_get_static_pad(scale2, "src");
-            caps = gst_caps_new_simple("video/x-raw-yuv", "width",
-                    G_TYPE_INT, 0, "height", G_TYPE_INT, 0, NULL);
-            gst_pad_set_caps(pad, caps);
-            gst_bin_add(GST_BIN(vpp), scale2);
-            }
-
-        /* create capsfilter for fixed video size */
-        filter = gst_element_factory_make("capsfilter", "pp_filter");
-        if (filter)
-            {
-
-            g_object_set(G_OBJECT(filter), "caps", gst_caps_new_simple(
-                    "video/x-raw-yuv", "width", G_TYPE_INT, TEST_VIDEO_WIDTH,
-                    "height", G_TYPE_INT, TEST_VIDEO_HEIGHT, NULL), NULL);
-            gst_bin_add(GST_BIN(vpp), filter);
-            }
-
-        /* create video queue */
-        queue = gst_element_factory_make("queue", "vpp_queue");
-        if (queue)
-            {
-            gst_bin_add(GST_BIN(vpp), queue);
-            }
-
-        /* Crete ffmpegcolorspace to convert stream to correct format */
-        col2 = gst_element_factory_make("ffmpegcolorspace", "pp_colsp2");
-        if (col2)
-            {
-            DEBUG_INFO("Created ffmpegcolorspace element");
-            gst_bin_add(GST_BIN(vpp), col2);
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(col2, "src");
-            if (ghostsrc)
-                {
-                gst_element_add_pad(vpp, gst_ghost_pad_new("videopp_src",
-                        ghostsrc));
-                gst_object_unref(GST_OBJECT(ghostsrc));
-                }
-            }
-        if (!(gst_element_link_many(col1, scale, crop, rotate, mirror, box,
-                balance, gamma, queue, scale2, filter, col2, NULL)))
-            {
-            DEBUG_ERR("Could not link videopp elements!!");
-            gst_object_unref(vpp);
-            vpp = NULL;
-            }
-        }
-    DEBUG_API("<-XAAdaptationGst_CreateFixedSizeVideoPP");
-    return vpp;
-    }
-
-/**
- * GstElement* XAAdaptationGst_CreateVideoPPBlackScr( )
- * @return GstElement* - return newly created gst pipeline element
- * Description: Create video processing pipeline for black screen
- */
-GstElement* XAAdaptationGst_CreateVideoPPBlackScr()
-    {
-    GstElement *vppBScr;
-    DEBUG_API("->XAAdaptationGst_CreateVideoPPBlackScr");
-    vppBScr = gst_pipeline_new("videoppBScr");
-    if (vppBScr)
-        {
-        GstPad *ghostsrc = NULL;
-        GstElement *testVideo = NULL, *scale = NULL;
-        GstElement *ffmpegcolorspace = NULL;
-
-        testVideo = gst_element_factory_make("videotestsrc", "videotest");
-        if (testVideo)
-            {
-            DEBUG_INFO("Created videotestsrc element");
-
-            g_object_set(G_OBJECT(testVideo), "pattern", (gint) 2,
-                    "num-buffers", (gint) 1, NULL);
-            gst_bin_add(GST_BIN(vppBScr), testVideo);
-            }
-
-        scale = gst_element_factory_make("videoscale", "BSrc_scale");
-        if (scale)
-            {
-            DEBUG_INFO("Created videoscale element");
-            gst_bin_add(GST_BIN(vppBScr), scale);
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(scale, "src");
-            if (ghostsrc)
-                {
-                gst_element_add_pad(vppBScr, gst_ghost_pad_new(
-                        "videoppBSrc_src", ghostsrc));
-                gst_object_unref(GST_OBJECT(ghostsrc));
-                }
-            }
-        ffmpegcolorspace = gst_element_factory_make("ffmpegcolorspace",
-                "BlackScrFfmpeg");
-        gst_bin_add(GST_BIN(vppBScr), ffmpegcolorspace);
-        if (!(gst_element_link_many(testVideo, ffmpegcolorspace, scale, NULL)))
-            {
-            DEBUG_ERR("Could not link videoppBSrc elements!!");
-            gst_object_unref(vppBScr);
-            vppBScr = NULL;
-            }
-        }
-    DEBUG_API("<-XAAdaptationGst_CreateVideoPPBlackScr");
-    return vppBScr;
-    }
-
-/**
- * GstElement* XAAdaptationGst_CreateInputSelector( )
- * @return GstElement* - return newly created input selector
- * Description: Create input selector to processing between black screen and video screen
- */
-GstElement* XAAdaptationGst_CreateInputSelector()
-    {
-    GstElement *inputSelector;
-    DEBUG_API("->XAAdaptationGst_CreateInputSelector");
-    inputSelector = gst_element_factory_make("input-selector",
-            "input-selector");
-    if (inputSelector)
-        {
-        g_object_set(G_OBJECT(inputSelector), "select-all", TRUE, NULL);
-        }
-    DEBUG_API("<-XAAdaptationGst_CreateInputSelector");
-    return inputSelector;
-    }
-
-/**
- * GstElement* XAAdaptationGst_CreateAudioPP( )
- * @return GstElement* - return newly created gst pipeline element
- * Description: Create video processing pipeline
- */
-GstElement* XAAdaptationGst_CreateAudioPP()
-    {
-    GstElement *app;
-    gboolean ok = TRUE;
-    DEBUG_API("->XAAdaptationGst_CreateAudioPP");
-    app = gst_pipeline_new("audiopp");
-    if (app)
-        {
-        GstPad *ghostsink, *ghostsrc;
-        GstElement *ac, *vol, *eq, *queue, *pan, *ac2;
-
-        /* first and last elements should be audioconverts to
-         *  match sink and encoder formats */
-        ac = gst_element_factory_make("audioconvert", "pp_ac");
-        if (ac)
-            {
-            ok = gst_bin_add(GST_BIN(app), ac);
-            /* make this bin link point*/
-            if (ok)
-                {
-                ghostsink = gst_element_get_static_pad(ac, "sink");
-                ok = gst_element_add_pad(app, gst_ghost_pad_new("sink",
-                        ghostsink));
-                gst_object_unref(GST_OBJECT(ghostsink));
-                }
-            }
-        ac2 = gst_element_factory_make("audioconvert", "pp_ac2");
-        if (ac2 && ok)
-            {
-            ok = gst_bin_add(GST_BIN(app), ac2);
-            /* make this bin link point*/
-            if (ok)
-                {
-                ghostsrc = gst_element_get_static_pad(ac2, "src");
-                ok = gst_element_add_pad(app, gst_ghost_pad_new("src",
-                        ghostsrc));
-                gst_object_unref(GST_OBJECT(ghostsrc));
-                }
-            }
-
-        vol = gst_element_factory_make("volume", "pp_vol");
-        /* create volume controller */
-        if (vol && ok)
-            {
-            ok = gst_bin_add(GST_BIN(app), vol);
-            g_object_set(G_OBJECT(vol), "volume", (gdouble) 1, NULL);
-            }
-        /* create 10-band equalizer */
-        eq = gst_element_factory_make("equalizer-10bands", "pp_equ");
-        if (eq && ok)
-            {
-            ok = gst_bin_add(GST_BIN(app), eq);
-            }
-        /* create audio queue */
-        queue = gst_element_factory_make("queue", "app_queue");
-        if (queue && ok)
-            {
-            ok = gst_bin_add(GST_BIN(app), queue);
-            g_object_set(G_OBJECT (queue), "max-size-buffers", 2, NULL);
-            }
-        /* create audio pan effect */
-        pan = gst_element_factory_make("audiopanorama", "pp_pan");
-        if (pan && ok)
-            {
-            ok = gst_bin_add(GST_BIN(app), pan);
-            }
-
-        if (ac && ok)
-            {
-            if (queue)
-                {
-                ok = gst_element_link(ac, queue);
-                }
-            else if (vol)
-                {
-                ok = gst_element_link(ac, vol);
-                }
-            else if (pan)
-                {
-                ok = gst_element_link(ac, pan);
-                }
-            else if (eq)
-                {
-                ok = gst_element_link(ac, eq);
-                }
-            else if (ac2)
-                {
-                ok = gst_element_link(ac, ac2);
-                }
-            }
-        if (queue && ok)
-            {
-            if (vol)
-                {
-                ok = gst_element_link(queue, vol);
-                }
-            else if (pan)
-                {
-                ok = gst_element_link(queue, pan);
-                }
-            else if (eq)
-                {
-                ok = gst_element_link(queue, eq);
-                }
-            else if (ac2)
-                {
-                ok = gst_element_link(queue, ac2);
-                }
-            }
-        if (vol && ok)
-            {
-            if (pan)
-                {
-                ok = gst_element_link(vol, pan);
-                }
-            else if (eq)
-                {
-                ok = gst_element_link(vol, eq);
-                }
-            else if (ac2)
-                {
-                ok = gst_element_link(vol, ac2);
-                }
-            }
-        if (pan && ok)
-            {
-            if (eq)
-                {
-                ok = gst_element_link(pan, eq);
-                }
-            else if (ac2)
-                {
-                ok = gst_element_link(pan, ac2);
-                }
-            }
-        if (eq && ok)
-            {
-            if (ac2)
-                {
-                ok = gst_element_link(eq, ac2);
-                }
-            }
-
-        if (ac)
-            {
-            // ghost sink above
-            }
-        else if (queue && ok)
-            {
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(queue, "sink");
-            ok = gst_element_add_pad(app,
-                    gst_ghost_pad_new("sink", ghostsink));
-            gst_object_unref(GST_OBJECT(ghostsink));
-            }
-        else if (vol && ok)
-            {
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(vol, "sink");
-            ok = gst_element_add_pad(app,
-                    gst_ghost_pad_new("sink", ghostsink));
-            gst_object_unref(GST_OBJECT(ghostsink));
-            }
-        else if (pan && ok)
-            {
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(pan, "sink");
-            ok = gst_element_add_pad(app,
-                    gst_ghost_pad_new("sink", ghostsink));
-            gst_object_unref(GST_OBJECT(ghostsink));
-            }
-        else if (eq && ok)
-            {
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(eq, "sink");
-            ok = gst_element_add_pad(app,
-                    gst_ghost_pad_new("sink", ghostsink));
-            gst_object_unref(GST_OBJECT(ghostsink));
-            }
-        else if (ac2 && ok)
-            {
-            /* make this bin link point*/
-            ghostsink = gst_element_get_static_pad(ac2, "sink");
-            ok = gst_element_add_pad(app,
-                    gst_ghost_pad_new("sink", ghostsink));
-            gst_object_unref(GST_OBJECT(ghostsink));
-            }
-
-        if (ac2)
-            {
-            // ghost src above
-            }
-        else if (eq && ok)
-            {
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(eq, "src");
-            ok = gst_element_add_pad(app, gst_ghost_pad_new("src", ghostsrc));
-            gst_object_unref(GST_OBJECT(ghostsrc));
-            }
-        else if (pan && ok)
-            {
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(pan, "src");
-            ok = gst_element_add_pad(app, gst_ghost_pad_new("src", ghostsrc));
-            gst_object_unref(GST_OBJECT(ghostsrc));
-            }
-        else if (vol && ok)
-            {
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(vol, "src");
-            ok = gst_element_add_pad(app, gst_ghost_pad_new("src", ghostsrc));
-            gst_object_unref(GST_OBJECT(ghostsrc));
-            }
-        else if (queue && ok)
-            {
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(queue, "src");
-            ok = gst_element_add_pad(app, gst_ghost_pad_new("src", ghostsrc));
-            gst_object_unref(GST_OBJECT(ghostsrc));
-            }
-        else if (ac && ok)
-            {
-            /* make this bin link point*/
-            ghostsrc = gst_element_get_static_pad(ac, "src");
-            ok = gst_element_add_pad(app, gst_ghost_pad_new("src", ghostsrc));
-            gst_object_unref(GST_OBJECT(ghostsrc));
-            }
-
-        //        if( !(gst_element_link_many(ac, queue, vol, ac2, NULL)) )
-        //        if( !(gst_element_link_many(ac, queue, vol, pan, eq, ac2, NULL)) )
-        if (!ok)
-            {
-            DEBUG_ERR("Could not link audiopp elements!!");
-            gst_object_unref(app);
-            app = NULL;
-            }
-        }
-
-    DEBUG_API("<-XAAdaptationGst_CreateAudioPP");
-    return app;
-    }
-
 /* called when pad is actually blocking/ gets unblocked*/
 void XAAdaptationGst_PadBlockCb(GstPad *pad, gboolean blocked,
         gpointer user_data)
     {
-    DEBUG_API_A2("->XAAdaptationGst_PadBlockCb   pad \"%s\" of \"%s\" ",
+    DEBUG_API_A2_STR("->XAAdaptationGst_PadBlockCb   pad \"%s\" of \"%s\" ",
             GST_OBJECT_NAME(pad),
             GST_OBJECT_NAME(gst_pad_get_parent_element(pad)) );
     DEBUG_API_A1("<-XAAdaptationGst_PadBlockCb   blocked:%d",blocked);
     }
 
-/* utility to set same fields for all media types in caps */
-void XAAdaptationGst_SetAllCaps(GstCaps * caps, char *field, ...)
-    {
-    GstStructure *structure;
-    va_list var_args;
-    int i;
-
-    for (i = 0; i < gst_caps_get_size(caps); i++)
-        {
-        structure = gst_caps_get_structure(caps, i);
-        va_start (var_args, field);
-        gst_structure_set_valist(structure, field, var_args);
-        va_end (var_args);
-        }
-    }
-
--- a/khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xaadaptationgst.h	Mon Oct 04 00:51:56 2010 +0300
@@ -22,71 +22,19 @@
 #include <semaphore.h>
 #include <string.h>
 #include <unistd.h>
+#include <stdlib.h>
 #include <gst/gst.h>
-#include <gst/app/gstappsrc.h>
-#include <gst/app/gstappsink.h>
-#include <gst/app/gstappbuffer.h>
 #include "openmaxalwrapper.h"
-#include "xaglobals.h"
-#include "xaplatform.h"
 #include "xaadptbasectx.h"
-#include <stdlib.h>
+
 
 #ifdef XA_IMPL_MEASURE_GST_DELAY
 #include <time.h>
 #endif /* XA_IMPL_MEASURE_GST_DELAY */
 
-/* MACROS */
-#define FLIP_NONE               0
-#define FLIP_CLOCKWISE          1 /* Rotate clockwise 90 degrees */
-#define FLIP_ROTATE_180         2 /* Rotate 180 degrees */
-#define FLIP_COUNTERCLOCKWISE   3 /* Rotate counter-clockwise 90 degrees */
-#define FLIP_HORIZONTAL         4 /* Flip image horizontally */
-#define FLIP_VERTICAL           5 /* Flip image vertically */
-
 /* TYPEDEFS */
 typedef gboolean (*GstBusCb)(GstBus *bus, GstMessage *message, gpointer data);
 
-#define CONTENT_PIPE_BUFFER_SIZE 1000
-#define TEST_VIDEO_WIDTH     640
-#define TEST_VIDEO_HEIGHT    480
-
-/*typedef enum
- {
- XA_AUDIO_WAVENC = 0,
- XA_AUDIO_VORBISENC,
- XA_AUDIO_PCM,
- XA_NUM_OF_AUDIOENCODERS  Do not move this line 
- } XAAudioEnc;*/
-
-/*typedef enum
- {
- XA_VIDEO_JPEGENC = 0,
- XA_VIDEO_THEORAENC,
- XA_NUM_OF_VIDEOENCODERS  Do not move this line 
- } XAVideoEnc;*/
-
-/*typedef enum CP_STATE
- {
- CPStateNull =0,
- CPStateInitialized,
- CPStatePrerolling,
- CPStateStarted,
- CPStateRunning,
- CPStatePaused,
- CPStateStopped,
- CPStateWaitForData,
- CPStateEOS,
- CPStateError
- }CP_STATE;*/
-
-/*typedef enum
- {
- XA_IMAGE_JPEGENC = 0,
- XA_IMAGE_RAW,
- XA_NUM_OF_IMAGEENCODERS  Do not move this line 
- } XAImageEnc;*/
-
 /* STRUCTURES */
 
 /* Forward declaration of adaptation basecontext */
@@ -108,7 +56,8 @@
     GMainLoop *busloop; /** Gst-bus listener loop **/
     pthread_t busloopThr;
     GstBusCb busCb; /** Gst-Bus callback funtion*/
-
+    GError* busError;
+    
     XAboolean waitingasyncop;
     sem_t semAsyncWait;
     guint asynctimer;
@@ -151,19 +100,11 @@
 void XAAdaptationGst_CompleteAsyncWait(XAAdaptationGstCtx* ctx);
 
 GstElement* XAAdaptationGst_CreateGstSource(XADataSource* xaSrc,
-        const char *name, XAboolean *isobj, XAboolean *isPCM,
-        XAboolean *isRawImage);
+        const char *name, XAboolean *isPCM );
 GstElement* XAAdaptationGst_CreateGstSink(XADataSink* xaSrc,
-        const char *name, XAboolean *isobj);
-GstElement* XAAdaptationGst_CreateVideoPP(void);
+        const char *name);
 
-GstElement* XAAdaptationGst_CreateVideoPPBlackScr(void);
-GstElement* XAAdaptationGst_CreateInputSelector(void);
-GstElement* XAAdaptationGst_CreateAudioPP(void);
 void XAAdaptationGst_PadBlockCb(GstPad *pad, gboolean blocked,
         gpointer user_data);
-void XAAdaptationGst_SetAllCaps(GstCaps * caps, char *field, ...);
-
-/*XAresult XAMetadataAdapt_TryWriteTags(XAAdaptationGstCtx* mCtx, GstBin* binToWriteTo);*/
 
 #endif /* XAADAPTATIONGST_H_ */
--- a/khronosfws/openmax_al/src/gst_adaptation/xaengineadaptctx.c	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,176 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#include <string.h>
-#include <gst/gst.h>
-#include "xaengineadaptctx.h"
-#include "xaadaptationgst.h"
-
-/*
- * gboolean XAEngineAdapt_GstBusCb( GstBus *bus, GstMessage *message, gpointer data )
- * MediaPlayer Gst-bus message handler (Callback)
- */
-gboolean XAEngineAdapt_GstBusCb( GstBus *bus, GstMessage *message, gpointer data )
-{
-    XAEngineAdaptationCtx* mCtx = (XAEngineAdaptationCtx*)data;
-    DEBUG_API("->XAEngineAdapt_GstBusCb");
-
-    /* only listen to pipeline messages */
-    if(GST_MESSAGE_SRC(message)==(GstObject*)(mCtx->baseObj.bin) )
-    {
-        DEBUG_API_A2("->XAEngineAdapt_GstBusCb:\"%s\" from object \"%s\"",
-                        GST_MESSAGE_TYPE_NAME(message), GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
-    }
-
-    DEBUG_API("<-XAEngineAdapt_GstBusCb");
-    return TRUE;
-}
-
-/*
- * XAAdaptationGstCtx* XAEngineAdapt_Create()
- * Allocates memory for Engine Adaptation Context and makes 1st phase initialization
- * @returns XAEngineAdaptationCtx* - Pointer to created context
- */
-XAAdaptationGstCtx* XAEngineAdapt_Create()
-{
-    XAEngineAdaptationCtx *pSelf = NULL;
-    DEBUG_API("->XAEngineAdapt_Create");
-
-    pSelf = (XAEngineAdaptationCtx*)calloc(1, sizeof(XAEngineAdaptationCtx));
-    if ( pSelf)
-    {
-        if( XAAdaptationBase_Init(&(pSelf->baseObj.baseObj),XAEngineAdaptation)
-                    != XA_RESULT_SUCCESS )
-            {
-                DEBUG_ERR("Failed to init base context!!!");
-                free(pSelf);
-                pSelf = NULL;
-            }
-            else
-            {
-                /* Init internal variables */
-            }
-    }
-
-    DEBUG_API("<-XAEngineAdapt_Create");
-    return (XAAdaptationGstCtx*)pSelf;
-}
-
-/*
- * XAresult XAEngineAdapt_PostInit()
- * 2nd phase initialization of engine Adaptation Context
- */
-XAresult XAEngineAdapt_PostInit(XAAdaptationGstCtx* bCtx)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    GstStateChangeReturn gret = GST_STATE_CHANGE_SUCCESS;
-    XAEngineAdaptationCtx* ctx = NULL;
-
-    DEBUG_API("->XAEngineAdapt_PostInit");
-    if( !bCtx || bCtx->baseObj.ctxId != XAEngineAdaptation )
-    {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        DEBUG_API("<-XAEngineAdapt_PostInit");
-        return XA_RESULT_PARAMETER_INVALID;
-    }
-    ctx = (XAEngineAdaptationCtx*)bCtx;
-
-    if ( !ctx )
-    {
-        DEBUG_ERR("XA_RESULT_INTERNAL_ERROR");
-        DEBUG_API("<-XAEngineAdapt_PostInit");
-        return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    XAAdaptationBase_PostInit( &(ctx->baseObj.baseObj) );
-
-    ctx->baseObj.bin = gst_pipeline_new("engine");
-   // gst_bin_add(GST_BIN(ctx->baseObj.bin), gst_element_factory_make( "alsamixer", "alsamixer"));
-
-    if ( !ctx->baseObj.bin )
-    {
-        DEBUG_ERR("Failed to create alsamixer");
-        DEBUG_ERR("XA_RESULT_INTERNAL_ERROR");
-        DEBUG_API("<-XAEngineAdapt_PostInit");
-        return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    /* Create Gst bus listener. */
-    ret = XAAdaptationGst_InitGstListener(&(ctx->baseObj));
-    if( ret!=XA_RESULT_SUCCESS )
-    {
-        DEBUG_ERR_A1("Bus listener creation failed!! - (%d)", ret);
-        DEBUG_API("<-XAEngineAdapt_PostInit");
-        return ret;
-    }
-
-    /* Add Engine specific handler */
-    if(ctx->baseObj.bus)
-    {
-        ctx->baseObj.busCb = XAEngineAdapt_GstBusCb;
-    }
-    else
-    {
-        DEBUG_ERR("Failed to create message bus");
-        DEBUG_ERR("XA_RESULT_INTERNAL_ERROR");
-        DEBUG_API("<-XAEngineAdapt_PostInit");
-        return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    /* roll up bin */
-    ctx->baseObj.binWantedState = GST_STATE_PAUSED;
-    XAAdaptationGst_PrepareAsyncWait(&(ctx->baseObj));
-    gret = gst_element_set_state( GST_ELEMENT(ctx->baseObj.bin), ctx->baseObj.binWantedState);
-    if( gret == GST_STATE_CHANGE_ASYNC )
-    {
-        DEBUG_INFO("Wait for preroll");
-        XAAdaptationGst_StartAsyncWait(&(ctx->baseObj));
-        DEBUG_INFO("Preroll ready");
-    }
-    ctx->baseObj.waitingasyncop = XA_BOOLEAN_FALSE;
-
-    //ret = XAStaticCapsAdapt_InitCaps();
-
-    DEBUG_API("<-XAEngineAdapt_PostInit");
-    return ret;
-}
-
-/*
- * void XAEngineAdapt_Destroy(XAEngineAdaptationCtx* ctx)
- * Destroys Engine Adaptation Context
- * @param ctx - Engine Adaptation context to be destroyed
- */
-void XAEngineAdapt_Destroy(XAAdaptationGstCtx* bCtx)
-{
-	XAEngineAdaptationCtx* ctx = NULL;
-
-	DEBUG_API("->XAEngineAdapt_Destroy");
-	if( !bCtx || bCtx->baseObj.ctxId != XAEngineAdaptation )
-	{
-		DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-		DEBUG_API("<-XAEngineAdapt_Destroy");
-		return;
-	}
-	ctx = (XAEngineAdaptationCtx*)bCtx;
-
-    XAAdaptationBase_Free(&(ctx->baseObj.baseObj));
-
-    free(ctx);
-    ctx = NULL;
-
-    DEBUG_API("<-XAEngineAdapt_Destroy");
-}
--- a/khronosfws/openmax_al/src/gst_adaptation/xaengineadaptctx.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#ifndef XAENGINEADAPTCTX_H_
-#define XAENGINEADAPTCTX_H_
-
-#include "xaadaptationgst.h"
-//#include "XAStaticCapsAdaptation.h"
-
-/* TYPEDEFS */
-
-typedef struct XAEngineAdaptationCtx_ XAEngineAdaptationCtx;
-
-typedef struct XAEngineAdaptationCtx_
-{
-    /* Parent*/
-    XAAdaptationGstCtx_    baseObj;
-
-} XAEngineAdaptationCtx_;
-
-/* FUNCTIONS */
-XAAdaptationGstCtx* XAEngineAdapt_Create(void);
-XAresult XAEngineAdapt_PostInit(XAAdaptationGstCtx* bCtx);
-void XAEngineAdapt_Destroy(XAAdaptationGstCtx* bCtx);
-
-#endif /* XAENGINEADAPTCTX_H_ */
--- a/khronosfws/openmax_al/src/gst_adaptation/xagstcapabilitiesmgr.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xagstcapabilitiesmgr.c	Mon Oct 04 00:51:56 2010 +0300
@@ -19,8 +19,6 @@
 #include <stdio.h>
 #include <string.h>
 #include <strings.h>
-#include <gst/gst.h>
-#include <gobject_global.h>
 
 #include "xagstcapabilitiesmgr.h"
 #include "xaframeworkmgr.h"
@@ -31,225 +29,11 @@
         XACapabilities **ppNode);
 static XAresult XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities(
         XACapabilities **ppNode);
-static XAresult XAGSTCapabilitiesMgr_GetCapabilities_FromGstElement(
-        XAAudioCodecDescriptor **entries, XAuint32 type);
 
-/* XAresult XAGSTCapabilitiesMgr_UpdateCapabilitieList
- * Description: Update the capabilities list supported by GStreamer framework.
+/* XAresult XAGSTCapabilitiesMgr_UpdateCapabilitieList(
+ *       FrameworkMap *frameworkMap, XACapabilities **ppListHead)
+ * Description: Append capabilities supported by Gstreamer framework.
  */
-static gboolean populate_field(GQuark field, const GValue * value,
-        gpointer pfx)
-    {
-    gchar *field_name;
-    gpointer *pfxd = (gpointer*) pfx;
-    XAAudioCodecDescriptor *ctxx = (XAAudioCodecDescriptor *) pfxd;
-
-    field_name = (gchar*) g_quark_to_string(field);
-
-    if ((strcasecmp((const char*) field_name, "channels") == 0))
-        {
-        if (GST_VALUE_HOLDS_INT_RANGE(value) == TRUE)
-            {
-            (ctxx)->maxChannels = gst_value_get_int_range_max(value);
-            }
-        else
-            (ctxx)->maxChannels = g_value_get_int(value);
-        }
-    if ((strcasecmp((const char*) field_name, "depth") == 0))
-        {
-        if (GST_VALUE_HOLDS_INT_RANGE(value) == TRUE)
-            {
-            (ctxx)->minBitsPerSample = gst_value_get_int_range_min(value);
-            }
-        else
-            (ctxx)->minBitsPerSample = g_value_get_int(value);
-        }
-    if ((strcasecmp((const char*) field_name, "bitrate") == 0))
-        {
-        if (GST_VALUE_HOLDS_INT_RANGE(value) == TRUE)
-            {
-            (ctxx)->minBitRate = gst_value_get_int_range_min(value);
-            (ctxx)->maxBitRate = gst_value_get_int_range_max(value);
-            }
-        else
-            {
-            (ctxx)->minBitRate = g_value_get_int(value);
-            (ctxx)->maxBitRate = g_value_get_int(value);
-            }
-        }
-    if ((strcasecmp((const char*) field_name, "width") == 0))
-        {
-        if (GST_VALUE_HOLDS_INT_RANGE(value) == TRUE)
-            {
-            (ctxx)->maxBitsPerSample = gst_value_get_int_range_max(value);
-            }
-        else
-            (ctxx)->maxBitsPerSample = g_value_get_int(value);
-        }
-    if ((strcasecmp((const char*) field_name, "rate") == 0))
-        {
-        if (GST_VALUE_HOLDS_INT_RANGE(value) == TRUE)
-            {
-            (ctxx)->minSampleRate = gst_value_get_int_range_min(value) * 1000;
-            (ctxx)->maxSampleRate = gst_value_get_int_range_max(value) * 1000;
-            }
-        else
-            {
-            (ctxx)->minSampleRate = g_value_get_int(value) * 1000;
-            (ctxx)->maxSampleRate = g_value_get_int(value) * 1000;
-            }
-        }
-
-    return TRUE;
-    }
-
-XAresult XAGSTCapabilitiesMgr_GetCapabilities_FromGstElement(
-        XAAudioCodecDescriptor **entries, XAuint32 type)
-    {
-    int i = 0;
-    GstElement *element = NULL;
-    GstPad *elementpad = NULL;
-    GstCaps *elementcaps = NULL;
-    GstStructure *s = NULL;
-    GParamSpec *elementproperty;
-    GParamSpecInt *pint;
-    GParamSpecEnum *penum;
-    gchar *findamr = "\0";
-    gpointer *myentries;
-
-
-    if (type == XA_AUDIOCODEC_AAC)
-        {
-        element = gst_element_factory_make("nokiaaacenc", "encoderelement");
-        if (element)
-            {
-            elementpad = gst_element_get_static_pad(element, "sink");
-            if (!elementpad)
-                {
-                DEBUG_ERR("no pad found for AAC Encoder");
-                return XA_RESULT_INTERNAL_ERROR;
-                }
-            elementcaps = gst_pad_get_caps(elementpad);
-            s = gst_caps_get_structure(elementcaps, 0);
-
-            myentries = (gpointer*) *entries;
-            gst_structure_foreach(s, populate_field, (gpointer) myentries);
-
-            elementproperty = g_object_class_find_property(
-                    G_OBJECT_GET_CLASS (element), "bitrate");
-            if (elementproperty)
-                {
-                pint = G_PARAM_SPEC_INT (elementproperty);
-                (*entries)->minBitRate = pint->minimum;
-                (*entries)->maxBitRate = pint->maximum;
-                }
-            elementproperty = g_object_class_find_property(
-                    G_OBJECT_GET_CLASS (element), "profile");
-            if (elementproperty)
-                {
-                penum = G_PARAM_SPEC_ENUM(elementproperty);
-                (*entries)->modeSetting = penum->default_value;
-                }
-
-            (*entries)->profileSetting = XA_AUDIOPROFILE_AAC_AAC;
-            (*entries)->isFreqRangeContinuous = XA_BOOLEAN_TRUE;
-            (*entries)->isBitrateRangeContinuous = XA_BOOLEAN_TRUE;
-            }
-        else
-            {
-            DEBUG_ERR("failed to get the AACencoder element");
-            }
-        }
-    else if (type == XA_AUDIOCODEC_AMR)
-        {
-        element = gst_element_factory_make("devsoundsrc", "encoderelement");
-        if (element)
-            {
-            elementpad = gst_element_get_pad(element, "src");
-            if (!elementpad)
-                {
-                DEBUG_ERR("no source pad for Devsound(amr) element");
-                return XA_RESULT_INTERNAL_ERROR;
-                }
-
-            elementcaps = gst_pad_get_caps(elementpad);
-            while (!(strcasecmp(findamr, "audio/amr") == 0) && i
-                    < elementcaps->structs->len)
-                {
-                s = gst_caps_get_structure(elementcaps, i);
-                findamr = (char*) gst_structure_get_name(s);
-                i++;
-                }
-
-            //populating the Other Values
-            myentries = (gpointer*) *entries;
-            gst_structure_foreach(s, populate_field, (gpointer) myentries);
-
-            elementproperty = g_object_class_find_property(
-                    G_OBJECT_GET_CLASS (element), "speechbitrate");
-            if (elementproperty)
-                {
-                pint = G_PARAM_SPEC_INT (elementproperty);
-                (*entries)->minBitRate = pint->minimum;
-                (*entries)->maxBitRate = pint->maximum;
-                }
-
-            (*entries)->profileSetting = XA_AUDIOPROFILE_AMR;
-            (*entries)->modeSetting = 0;
-            (*entries)->isFreqRangeContinuous = XA_BOOLEAN_TRUE;
-            (*entries)->isBitrateRangeContinuous = XA_BOOLEAN_TRUE;
-
-            }
-        else
-            {
-            DEBUG_ERR("failed to get the Devsoundsrc(amr encoder) element");
-            }
-        }
-
-    else if (type == XA_AUDIOCODEC_PCM)
-        {
-        element = gst_element_factory_make("wavenc", "encoderelement");
-        if (element)
-            {
-            elementpad = gst_element_get_pad(element, "sink");
-            if (!elementpad)
-                {
-                DEBUG_ERR("failed to get Sink pad on Wave encoder element");
-                return XA_RESULT_INTERNAL_ERROR;
-                }
-            elementcaps = gst_pad_get_caps(elementpad);
-            s = gst_caps_get_structure(elementcaps, 2);
-            myentries = (gpointer*) *entries;
-            gst_structure_foreach(s, populate_field, (gpointer) myentries);
-            elementproperty = g_object_class_find_property(
-                    G_OBJECT_GET_CLASS (element), "bitrate");
-            if (elementproperty)
-                {
-                pint = G_PARAM_SPEC_INT (elementproperty);
-                (*entries)->minBitRate = pint->minimum;
-                (*entries)->maxBitRate = pint->maximum;
-                }
-
-            (*entries)->profileSetting = XA_AUDIOPROFILE_PCM;
-            (*entries)->modeSetting = 0;
-            (*entries)->isFreqRangeContinuous = XA_BOOLEAN_TRUE;
-            (*entries)->isBitrateRangeContinuous = XA_BOOLEAN_TRUE;
-            }
-        else
-            {
-            DEBUG_ERR("failed to get the wavencoder element");
-            }
-        }
-
-    if (elementcaps != NULL)
-        gst_caps_unref(elementcaps);
-    if (elementpad != NULL)
-        gst_object_unref(elementpad);
-    if (element != NULL)
-        gst_object_unref(element);
-
-    return XA_RESULT_SUCCESS;
-    }
 XAresult XAGSTCapabilitiesMgr_UpdateCapabilitieList(
         FrameworkMap *frameworkMap, XACapabilities **ppListHead)
 
@@ -258,167 +42,244 @@
     XACapabilities *newNode = NULL;
     FWMgrFwType fwtype = FWMgrFWUknown;
     char *uri = NULL;
-    XACapabilities *lastNode;
-    XACapabilities *firstNode;
+    XACapabilities *lastNode = NULL;
+    XACapabilities *firstNode = NULL;
 
     DEBUG_API("->XAGSTCapabilitiesMgr_UpdateCapabilitieList");
 
     if (!frameworkMap || !ppListHead)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
-        }
-
-    lastNode = firstNode = *ppListHead;
-
-    /* traverse and point to the last node in the list */
-    while (lastNode && lastNode->next)
-        {
-        lastNode = lastNode->next;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     uri = "file:///c:/test.mp4";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWGST)
         {
-        GError* gerror = 0;
-        //initialize gstreamer
-        //AL_PROFILING_BEGIN;
-        if (!gst_init_check(NULL, NULL, &gerror))
-            {
-            DEBUG_ERR("Gst Initalization failure.");
-            return XA_RESULT_INTERNAL_ERROR;
-            }
-        //AL_PROFILING_END_PRINT("gst_init_check");
-
-        }
-
-    if (fwtype == FWMgrFWGST)
-        {
-        /* Add codec capabilities */
-        newNode = NULL;
         res = XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        if (!firstNode)
             {
-            lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                firstNode = newNode;
+            firstNode = newNode;
             lastNode = newNode;
             }
         }
 
     uri = "file:///c:/test.amr";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWGST)
         {
-        newNode = NULL;
         res = XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        if (!firstNode)
+            {
+            firstNode = newNode;
+            lastNode = newNode;
+            }
+        else
             {
             lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                firstNode = newNode;
             lastNode = newNode;
             }
         }
 
     uri = "file:///c:/test.wav";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWGST)
         {
-        newNode = NULL;
         res = XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        if (!firstNode)
+            {
+            firstNode = newNode;
+            lastNode = newNode;
+            }
+        else
             {
             lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                firstNode = newNode;
             lastNode = newNode;
             }
         }
-    /* if empty list, then append first node as the head */
-    if (!(*ppListHead))
+
+    /* if we have some capabilities supported by Gstreamer framework */
+    if (firstNode)
         {
-        *ppListHead = firstNode;
+        /* if empty list, then append first node as the head */
+        if (!(*ppListHead))
+            {
+            *ppListHead = firstNode;
+            }
+        else /* traverse to the last item in the list and link firstNode to it */
+            {
+            lastNode = *ppListHead;
+            while(lastNode->next)
+                {
+                lastNode = lastNode->next;
+                }
+            lastNode->next = firstNode;
+            }
         }
     DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
     return res;
     }
 
+/* XAresult XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities(
+        XACapabilities **ppNode)
+ * Description: If return value is XA_RESULT_SUCCESS, Creats a new XACapabilities
+ * node and update ppNode to contain pointer to it.
+ * Otherwise return error code for failure.
+ */
 XAresult XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities(
         XACapabilities **ppNode)
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
     XAchar aacencelement[] = "nokiaaacenc";
     int strLen = 0;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_AAC;
-    newNode->noOfEntries = 1;
 
     strLen = strlen((char*) aacencelement);
     newNode->adaptId = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
     if (!newNode->adaptId)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     strncpy((char*) newNode->adaptId, (char*) aacencelement, strLen);
     newNode->adaptId[strLen] = '\0'; /*Null terminate it*/
 
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
+    /* create XAAudioCodecDescriptor for AAC and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(2, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    newNode->noOfEntries = 2;
+    newNode->pEntry = (void *)codecDesc;
+
+    codecDesc->maxChannels = 2;
+    (codecDesc+1)->maxChannels = 2;
+    codecDesc->minBitsPerSample = 16;
+    (codecDesc+1)->minBitsPerSample = 16;
+    codecDesc->maxBitsPerSample = 16;
+    (codecDesc+1)->maxBitsPerSample = 16;
+    codecDesc->minSampleRate = 8000000;
+    (codecDesc+1)->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 48000000;
+    (codecDesc+1)->maxSampleRate = 48000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    (codecDesc+1)->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = (XAmilliHertz*)calloc(5, sizeof(XAmilliHertz));
+    if (!(codecDesc->pSampleRatesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    (codecDesc+1)->pSampleRatesSupported = (XAmilliHertz*)calloc(5, sizeof(XAmilliHertz));
+    if (!((codecDesc+1)->pSampleRatesSupported))
+        {
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    codecDesc->pSampleRatesSupported[0] = 8000000;
+    (codecDesc+1)->pSampleRatesSupported[0] = 8000000;
+    codecDesc->pSampleRatesSupported[1] = 16000000;
+    (codecDesc+1)->pSampleRatesSupported[1] = 16000000;
+    codecDesc->pSampleRatesSupported[2] = 24000000;
+    (codecDesc+1)->pSampleRatesSupported[2] = 24000000;
+    codecDesc->pSampleRatesSupported[3] = 32000000;
+    (codecDesc+1)->pSampleRatesSupported[3] = 32000000;
+    codecDesc->pSampleRatesSupported[4] = 48000000;
+    (codecDesc+1)->pSampleRatesSupported[4] = 48000000;
+    codecDesc->numSampleRatesSupported = 5;
+    (codecDesc+1)->numSampleRatesSupported = 5;
+    codecDesc->minBitRate = 32000;
+    (codecDesc+1)->minBitRate = 32000;
+    codecDesc->maxBitRate = 256000;
+    (codecDesc+1)->maxBitRate = 256000;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    (codecDesc+1)->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = (XAuint32 *)calloc(8, sizeof(XAuint32));;
+    if (!(codecDesc->pBitratesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-
-    newNode->pEntry = (void*) entries;
-
-    res = XAGSTCapabilitiesMgr_GetCapabilities_FromGstElement(&entries,
-            newNode->xaid);
-
-    newNode->pEntry = (void*) entries;
+    (codecDesc+1)->pBitratesSupported = (XAuint32 *)calloc(8, sizeof(XAuint32));;
+    if (!((codecDesc+1)->pBitratesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    codecDesc->pBitratesSupported[0] = 32000;
+    (codecDesc+1)->pBitratesSupported[0] = 32000;
+    codecDesc->pBitratesSupported[1] = 64000;
+    (codecDesc+1)->pBitratesSupported[1] = 64000;
+    codecDesc->pBitratesSupported[2] = 96000;
+    (codecDesc+1)->pBitratesSupported[2] = 96000;
+    codecDesc->pBitratesSupported[3] = 128000;
+    (codecDesc+1)->pBitratesSupported[3] = 128000;
+    codecDesc->pBitratesSupported[4] = 160000;
+    (codecDesc+1)->pBitratesSupported[4] = 160000;
+    codecDesc->pBitratesSupported[5] = 192000;
+    (codecDesc+1)->pBitratesSupported[5] = 192000;
+    codecDesc->pBitratesSupported[6] = 224000;
+    (codecDesc+1)->pBitratesSupported[6] = 224000;
+    codecDesc->pBitratesSupported[7] = 256000;
+    (codecDesc+1)->pBitratesSupported[7] = 256000;
+    codecDesc->numBitratesSupported = 8;    
+    (codecDesc+1)->numBitratesSupported = 8;    
+    codecDesc->profileSetting = XA_AUDIOPROFILE_AAC_AAC;
+    (codecDesc+1)->profileSetting = XA_AUDIOPROFILE_AAC_AAC;
+    codecDesc->modeSetting = XA_AUDIOMODE_AAC_HE;
+    (codecDesc+1)->modeSetting = XA_AUDIOMODE_AAC_LC;
 
     *ppNode = newNode;
+
+    DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAACEncoderCapabilities");
     return res;
     }
 
@@ -427,37 +288,89 @@
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
+    XAchar amrencelement[] = "devsoundsrc";
+    int strLen = 0;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_AMR;
-    newNode->noOfEntries = 1;
-
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
+    
+    strLen = strlen((char*) amrencelement);
+    newNode->adaptId = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
+    if (!newNode->adaptId)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
-    newNode->pEntry = (void*) entries;
+    strncpy((char*) newNode->adaptId, (char*) amrencelement, strLen);
+    newNode->adaptId[strLen] = '\0'; /*Null terminate it*/
+    
+    /* create XAAudioCodecDescriptor for AMR and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(1, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    newNode->noOfEntries = 1;
+    newNode->pEntry = (void *)codecDesc;
 
-    XAGSTCapabilitiesMgr_GetCapabilities_FromGstElement(&entries,
-            newNode->xaid);
+    codecDesc->maxChannels = 1;
+    codecDesc->minBitsPerSample = 8;
+    codecDesc->maxBitsPerSample = 8;
+    codecDesc->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 8000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = (XAmilliHertz*)calloc(1, sizeof(XAmilliHertz));
+    if (!(codecDesc->pSampleRatesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    codecDesc->pSampleRatesSupported[0] = 8000000;
+    codecDesc->numSampleRatesSupported = 1;
+    codecDesc->minBitRate = 4750;
+    codecDesc->maxBitRate = 12200;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = (XAuint32 *)calloc(8, sizeof(XAuint32));;
+    if (!(codecDesc->pBitratesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    codecDesc->pBitratesSupported[0] = 4750;
+    codecDesc->pBitratesSupported[1] = 5150;
+    codecDesc->pBitratesSupported[2] = 5900;
+    codecDesc->pBitratesSupported[3] = 6700;
+    codecDesc->pBitratesSupported[4] = 7400;
+    codecDesc->pBitratesSupported[5] = 7950;
+    codecDesc->pBitratesSupported[6] = 10200;
+    codecDesc->pBitratesSupported[7] = 12200;    
+    codecDesc->numBitratesSupported = 8;
+    codecDesc->profileSetting = XA_AUDIOPROFILE_AMR;
+    codecDesc->modeSetting = 0;
+    
+    *ppNode = newNode;
 
-    newNode->pEntry = (void*) entries;
-
-    *ppNode = newNode;
+    DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioAMREncoderCapabilities");
     return res;
     }
 
@@ -466,36 +379,77 @@
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
+    XAchar wavencelement[] = "wavenc";
+    int strLen = 0;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_PCM;
-    newNode->noOfEntries = 1;
-
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
+    
+    strLen = strlen((char*) wavencelement);
+    newNode->adaptId = (XAchar *) calloc(strLen + 1, sizeof(XAchar));
+    if (!newNode->adaptId)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
-    newNode->pEntry = (void*) entries;
+    strncpy((char*) newNode->adaptId, (char*) wavencelement, strLen);
+    newNode->adaptId[strLen] = '\0'; /*Null terminate it*/
+
+    /* create XAAudioCodecDescriptor for PCM and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(1, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    newNode->noOfEntries = 1;
+    newNode->pEntry = (void *)codecDesc;
 
-    XAGSTCapabilitiesMgr_GetCapabilities_FromGstElement(&entries,
-            newNode->xaid);
+    codecDesc->maxChannels = 2;
+    codecDesc->minBitsPerSample = 16;
+    codecDesc->maxBitsPerSample = 16;
+    codecDesc->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 48000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = (XAmilliHertz*)calloc(12, sizeof(XAmilliHertz));
+    if (!(codecDesc->pSampleRatesSupported))
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
+    codecDesc->pSampleRatesSupported[0] = 8000000;
+    codecDesc->pSampleRatesSupported[1] = 16000000;
+    codecDesc->pSampleRatesSupported[2] = 24000000;
+    codecDesc->pSampleRatesSupported[3] = 32000000;
+    codecDesc->pSampleRatesSupported[4] = 48000000;
+    codecDesc->numSampleRatesSupported = 5;
+    codecDesc->minBitRate = 0;
+    codecDesc->maxBitRate = 0;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = NULL;
+    codecDesc->numBitratesSupported = 0;
+    codecDesc->profileSetting = XA_AUDIOPROFILE_PCM;
+    codecDesc->modeSetting = 0;
+    
+    *ppNode = newNode;
 
-    newNode->pEntry = (void*) entries;
-
-    *ppNode = newNode;
+    DEBUG_API("<-XAGSTCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
     return res;
     }
--- a/khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.c	Mon Oct 04 00:51:56 2010 +0300
@@ -16,22 +16,16 @@
 */
 
 #include <string.h>
-#include <assert.h>
 #include <gst/gst.h>
-#include <gst/app/gstappsink.h>
 #include "xacapabilitiesmgr.h"
 #include "xamediarecorderadaptctx.h"
-
+#include "xaobjectitf.h"
 /*forward declarations*/
 GstElement* XAMediaRecorderAdapt_CreateEncodeBin(
         XAMediaRecorderAdaptationCtx* ctx);
 XAresult XAMediaRecorderAdapt_CreatePipeline(
         XAMediaRecorderAdaptationCtx* ctx);
-void XAMediaRecorderAdapt_BufferAvailable(GstElement* sink,
-        gpointer user_data);
 
-/** Creates the caps gst element */
-/*static XAresult XAMediaRecorderAdapt_CreateCapsFilter( XAMediaRecorderAdaptationCtx* ctx );*/
 
 /*
  * gboolean XAMediaRecorderAdapt_GstBusCb( GstBus *bus, GstMessage *message, gpointer data )
@@ -39,112 +33,120 @@
  */
 gboolean XAMediaRecorderAdapt_GstBusCb(GstBus *bus, GstMessage *message,
         gpointer data)
-{
+    {
     XAAdaptationGstCtx* bCtx = (XAAdaptationGstCtx*) data;
+    XAMediaRecorderAdaptationCtx* mCtx = (XAMediaRecorderAdaptationCtx*)data;
+
     /* only listen to pipeline messages */
-    if (GST_MESSAGE_SRC(message)==GST_OBJECT(bCtx->bin))
-    {
-        XAMediaRecorderAdaptationCtx* mCtx = NULL;
-        DEBUG_API_A2("->XAMediaRecorderAdapt_GstBusCb:\"%s\" from object \"%s\"",
-                        GST_MESSAGE_TYPE_NAME(message), GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
-        mCtx = (XAMediaRecorderAdaptationCtx*)data;
+    DEBUG_API_A2_STR("->XAMediaRecorderAdapt_GstBusCb:\"%s\" from object \"%s\"",
+                    GST_MESSAGE_TYPE_NAME(message), GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
 
-        switch( GST_MESSAGE_TYPE(message))
+    switch( GST_MESSAGE_TYPE(message))
         {
-            case GST_MESSAGE_EOS:
+        case GST_MESSAGE_EOS:
             {
+            if (GST_MESSAGE_SRC(message)==GST_OBJECT(bCtx->bin))
+                {
                 /* stop position tracking */
                 if(mCtx->runpositiontimer > 0)
-                {
+                    {
                     g_source_remove(mCtx->runpositiontimer);
-                    mCtx->runpositiontimer = 0;
-                }
+                    mCtx->runpositiontimer=0;
+                    }
 
                 /* complete any ongoing client async operations */
                 XAAdaptationGst_CompleteAsyncWait(bCtx);
 
-                /* send needed events */
-                {
-                    XAAdaptEvent event = {XA_RECORDITFEVENTS, XA_RECORDEVENT_HEADATLIMIT, 0, NULL };
-                    XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
-                }
                 if(mCtx->positionCb)
-                {
+                    {
                     mCtx->positionCb(bCtx);
-                }
+                    }
                 bCtx->binWantedState = GST_STATE_PAUSED;
-                break;
-            }
-            case GST_MESSAGE_STATE_CHANGED:
-            {
-                GstState oldstate, newstate, pendingstate, gsttargetstate;
-                gst_message_parse_state_changed(message, &oldstate, &newstate, &pendingstate);
-                gsttargetstate = GST_STATE_TARGET(bCtx->bin);
-                DEBUG_INFO_A4("old %d -> new %d (-> pending %d -> gsttarget %d)",
-                               oldstate, newstate, pendingstate, gsttargetstate);
-                if(gsttargetstate!=bCtx->binWantedState)
-                {
-                    DEBUG_ERR_A1("WARNING: Gst target is not wanted target [%d]!!!", bCtx->binWantedState);
-                }
-                /* print out some more info */
-                if( pendingstate == GST_STATE_VOID_PENDING )
-                {
-                    if( newstate != bCtx->binWantedState )
+                
+                if(bCtx->busError)
                     {
-                        DEBUG_INFO_A2("Gst in intermediate state transition (curr %d, target %d)",
-                                    newstate,bCtx->binWantedState);
-                    }
-                    else
-                    {
-                        DEBUG_INFO_A1("Gst in wanted target state (%d)",newstate);
+                    XAObjItfCBData objdata = {XA_OBJECT_EVENT_RESOURCES_LOST, XA_RESULT_RESOURCE_ERROR, XA_OBJECT_STATE_UNREALIZED, NULL};
+                    XAAdaptEvent event = {XA_OBJECTITFEVENTS, 0, sizeof(objdata), NULL };
+                    event.data = &objdata;
+                    /* send needed events */
+                    
+                    XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
                     }
                 }
-                if( oldstate!=GST_STATE_PLAYING && newstate==GST_STATE_PLAYING )
+            break;
+            }
+        case GST_MESSAGE_STATE_CHANGED:
+            {
+            if (GST_MESSAGE_SRC(message)==GST_OBJECT(bCtx->bin))
                 {
-                    XAAdaptEvent event = {XA_RECORDITFEVENTS, XA_RECORDEVENT_HEADMOVING, 0, NULL };
-                    /* send needed events */
-                    XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
-                    /* enable position tracking if needed */
-                    if( mCtx->runpositiontimer==0 && mCtx->trackpositionenabled && mCtx->positionCb )
+                    GstState oldstate, newstate, pendingstate, gsttargetstate;
+                    gst_message_parse_state_changed(message, &oldstate, &newstate, &pendingstate);
+                    gsttargetstate = GST_STATE_TARGET(bCtx->bin);
+                    DEBUG_INFO_A4("old %d -> new %d (-> pending %d -> gsttarget %d)",
+                                   oldstate, newstate, pendingstate, gsttargetstate);
+                    if(gsttargetstate!=bCtx->binWantedState)
+                    {
+                        DEBUG_ERR_A1("WARNING: Gst target is not wanted target [%d]!!!", bCtx->binWantedState);
+                    }
+                    /* print out some more info */
+                    if( pendingstate == GST_STATE_VOID_PENDING )
                     {
-                        mCtx->runpositiontimer = g_timeout_add(XA_ADAPT_PU_INTERVAL, mCtx->positionCb, mCtx);
+                        if( newstate != bCtx->binWantedState )
+                        {
+                            DEBUG_INFO_A2("Gst in intermediate state transition (curr %d, target %d)",
+                                        newstate,bCtx->binWantedState);
+                        }
+                        else
+                        {
+                            DEBUG_INFO_A1("Gst in wanted target state (%d)",newstate);
+                        }
+                    }
+                    if( oldstate!=GST_STATE_PLAYING && newstate==GST_STATE_PLAYING )
+                    {
+                        XAAdaptEvent event = {XA_RECORDITFEVENTS, XA_RECORDEVENT_HEADMOVING, 0, NULL };
+                        /* send needed events */
+                        XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
+                        /* enable position tracking if needed */
+                        if( mCtx->runpositiontimer==0 && mCtx->trackpositionenabled && mCtx->positionCb )
+                        {
+                            mCtx->runpositiontimer = g_timeout_add(XA_ADAPT_PU_INTERVAL, mCtx->positionCb, mCtx);
+                        }
                     }
                 }
                 break;
             }
 
-            case GST_MESSAGE_ASYNC_DONE:
+        case GST_MESSAGE_ASYNC_DONE:
             {
                 /* some async sequence ended */
                 XAAdaptationGst_CompleteAsyncWait(bCtx);
                 break;
             }
 
-            case GST_MESSAGE_ERROR:
+        case GST_MESSAGE_ERROR:
             {
-                GError* error;
                 gchar* debug;
-                gst_message_parse_error(message, &error, &debug);
-                DEBUG_ERR_A1("Gst reports error \"%s\"", debug);
+                gst_message_parse_error(message, &(bCtx->busError), &debug);
+                DEBUG_ERR_A1_STR("Gst reports error \"%s\"", debug);
+                
                 /* stop waiting any ongoing async operations */
                 XAAdaptationGst_CompleteAsyncWait(bCtx);
                 break;
             }
-            case GST_MESSAGE_WARNING:
+        case GST_MESSAGE_WARNING:
             {
                 GError* error;
                 gchar* debug;
                 gst_message_parse_warning(message, &error, &debug);
-                DEBUG_ERR_A1("Gst reports warning \"%s\"", debug);
+                DEBUG_ERR_A1_STR("Gst reports warning \"%s\"", debug);
                 /* stop waiting any ongoing async operations */
                 XAAdaptationGst_CompleteAsyncWait(bCtx);
                 break;
             }
-            default:
-                break;
+        default:
+            break;
         }
     DEBUG_API("<-XAMediaRecorderAdapt_GstBusCb");
-    }
     return TRUE;
     }
 
@@ -158,46 +160,34 @@
  */
 XAAdaptationBaseCtx* XAMediaRecorderAdapt_Create(XADataSource* pAudioSrc,
         XADataSource* pImageVideoSrc, XADataSink* pDataSnk, XAuint8 recModes)
-{
+    {
     XAMediaRecorderAdaptationCtx *pSelf = NULL;
     DEBUG_API("->XAMediaRecorderAdapt_Create");
 
     pSelf = (XAMediaRecorderAdaptationCtx*)calloc(1, sizeof(XAMediaRecorderAdaptationCtx));
     if (pSelf)
-    {
+        {
         if (XAAdaptationGst_Init(&(pSelf->baseObj),
                 XAMediaRecorderAdaptation) != XA_RESULT_SUCCESS)
-        {
+            {
             DEBUG_ERR("Failed to init base context!!!");
             free(pSelf);
             pSelf = NULL;
             DEBUG_API("<-XAMediaRecorderAdapt_Create");
             return NULL;
-        }
+            }
         else
-        {
+            {
             pSelf->baseObj.baseObj.fwtype = FWMgrFWGST;
             pSelf->xaAudioSource = pAudioSrc;
             pSelf->xaVideoSource = pImageVideoSrc;
             pSelf->xaSink = pDataSnk;
-/*            pSelf->baseObj.pipeSinkThrCtx.state = CPStateNull;*/
             pSelf->xaRecordState = XA_RECORDSTATE_STOPPED;
-            pSelf->curMirror = XA_VIDEOMIRROR_NONE;
-            pSelf->curRotation = 0;
             pSelf->recModes = recModes;
             pSelf->isRecord = XA_BOOLEAN_FALSE;
 
             /* defaults from API spec */
-            pSelf->imageEncSettings.width = 640;
-            pSelf->imageEncSettings.height = 480;
-            pSelf->imageEncSettings.compressionLevel = 0;
-            pSelf->imageEncSettings.encoderId = XA_IMAGECODEC_JPEG;
-            pSelf->imageEncSettings.colorFormat = XA_COLORFORMAT_UNUSED;
             /* no specified defaults for rest, determined later from container type */
-            pSelf->videoEncSettings.encoderId = XA_ADAPTID_UNINITED;
-            pSelf->videoEncSettings.width = 640;
-            pSelf->videoEncSettings.height = 480;
-            pSelf->videoEncSettings.frameRate = 15;
             pSelf->audioEncSettings.encoderId = XA_ADAPTID_UNINITED;
             pSelf->audioEncSettings.channelsIn = 0;
             pSelf->audioEncSettings.channelsOut = 0;
@@ -211,12 +201,12 @@
             pSelf->audioEncSettings.streamFormat = 0;
             pSelf->audioEncSettings.encodeOptions = 0;
             pSelf->audioEncSettings.blockAlignment = 0;
+            }
         }
-    }
 
     DEBUG_API("<-XAMediaRecorderAdapt_Create");
     return (XAAdaptationBaseCtx*) &pSelf->baseObj;
-}
+    }
 
 /*
  * XAresult XAMediaRecorderAdapt_PostInit()
@@ -225,26 +215,26 @@
  * @return XAresult - Success value
  */
 XAresult XAMediaRecorderAdapt_PostInit(XAAdaptationGstCtx* bCtx)
-{
+    {
     GstStateChangeReturn gret;
 
     XAresult ret = XA_RESULT_SUCCESS;
     XAMediaRecorderAdaptationCtx* ctx = NULL;
     DEBUG_API("->XAMediaRecorderAdapt_PostInit");
     if (bCtx == NULL || bCtx->baseObj.ctxId != XAMediaRecorderAdaptation)
-    {
+        {
         DEBUG_ERR("Invalid parameter!!");
         DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
         return XA_RESULT_PARAMETER_INVALID;
-    }
+        }
     ctx = (XAMediaRecorderAdaptationCtx*) bCtx;
 
     ret = XAAdaptationGst_PostInit(bCtx);
     if (ret != XA_RESULT_SUCCESS)
-    {
+        {
         DEBUG_ERR("Gst context postinit failed!!");
         return ret;
-    }
+        }
 
     /* top level bin for media recorder */
     bCtx->bin = gst_pipeline_new("media_recorder");
@@ -252,13 +242,13 @@
     /* Create Gst bus listener. */
     ret = XAAdaptationGst_InitGstListener(bCtx);
     if (ret != XA_RESULT_SUCCESS)
-    {
+        {
         DEBUG_ERR("Bus listener creation failed!!");
         return ret;
-    }
+        }
     /* Add Media Recorder specific handler */
     if (bCtx->bus)
-    {
+        {
         bCtx->busCb = XAMediaRecorderAdapt_GstBusCb;
         gst_bus_add_signal_watch(bCtx->bus);
         g_signal_connect(bCtx->bus, "message::eos", G_CALLBACK(bCtx->busCb), ctx );
@@ -267,53 +257,52 @@
         g_signal_connect(bCtx->bus, "message::state-changed", G_CALLBACK(bCtx->busCb), ctx );
         g_signal_connect(bCtx->bus, "message::segment-done", G_CALLBACK(bCtx->busCb), ctx );
         g_signal_connect(bCtx->bus, "message::async-done", G_CALLBACK(bCtx->busCb), ctx );
-    }
+        }
     else
-    {
+        {
         DEBUG_ERR("Failed to create message bus");
         return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    XAMetadataAdapt_PreInit(bCtx);
+        }
 
     /* create pipeline */
     ret = XAMediaRecorderAdapt_CreatePipeline(ctx);
     if (ret != XA_RESULT_SUCCESS)
-    {
+        {
         DEBUG_ERR("Failed to create recorder pipeline");
         return XA_RESULT_INTERNAL_ERROR;
-    }
+        }
 
 #ifdef XA_IMPL_MEASURE_GST_DELAY
     bCtx->startTime = clock();
 #endif /* XA_IMPL_MEASURE_GST_DELAY */
+    
     /* roll up bin */
-    bCtx->binWantedState = GST_STATE_PAUSED;
+    bCtx->binWantedState = GST_STATE_READY;
     XAAdaptationGst_PrepareAsyncWait(bCtx);
     gret = gst_element_set_state(GST_ELEMENT(bCtx->bin), bCtx->binWantedState);
     if (gret == GST_STATE_CHANGE_ASYNC)
-    {
+        {
         DEBUG_INFO("Wait for preroll");
         XAAdaptationGst_StartAsyncWait(bCtx);DEBUG_INFO("Preroll ready");
-    }
+        }
     else if (gret == GST_STATE_CHANGE_FAILURE)
-    {
+        {
         DEBUG_ERR("Preroll FAILED");
         /*ret = XA_RESULT_INTERNAL_ERROR;*/
-    }
+        }
 #ifdef XA_IMPL_MEASURE_GST_DELAY
     bCtx->endTime = clock();
     double diff = bCtx->endTime - bCtx->startTime;
     diff = diff / CLOCKS_PER_SEC;
     DEBUG_API_A1( "Starting up bin took %.4lf secs",diff);
 #endif /* XA_IMPL_MEASURE_GST_DELAY */
-    XAMetadataAdapt_PostInit(bCtx);
+
 
     bCtx->waitingasyncop = XA_BOOLEAN_FALSE;
 
     DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
     return ret;
-}
+    }
 
 /*
  * void XAMediaRecorderAdapt_Destroy( XAAdaptationGstCtx* bCtx )
@@ -321,407 +310,168 @@
  * @param ctx - Media Recorder Adaptation context to be destroyed
  */
 void XAMediaRecorderAdapt_Destroy(XAAdaptationGstCtx* bCtx)
-{
+    {
     XAMediaRecorderAdaptationCtx* ctx = NULL;
     char* fname = NULL;
     DEBUG_API("->XAMediaRecorderAdapt_Destroy");
 
     if (bCtx == NULL || bCtx->baseObj.ctxId != XAMediaRecorderAdaptation)
-    {
+        {
         DEBUG_ERR("Invalid parameter!!");
         DEBUG_API("<-XAMediaRecorderAdapt_Destroy");
         return;
-    }
+        }
     ctx = (XAMediaRecorderAdaptationCtx*) bCtx;
 
     if (ctx->isRecord == XA_BOOLEAN_FALSE)
-    {
+        {
         DEBUG_INFO("Removing unnecessary file.");
-        if (ctx->xaSink && *((XAuint32*) (ctx->xaSink->pLocator)) == XA_DATALOCATOR_URI)
-        {
-            if (strncmp( (char *)((XADataLocator_URI*)(ctx->xaSink->pLocator))->URI, "file:///", 8) == 0)
+
+        if (ctx->xaSink && *((XAuint32*) (ctx->xaSink->pLocator))
+                == XA_DATALOCATOR_URI)
             {
-                fname = (char *) &(((XADataLocator_URI*) (ctx->xaSink->pLocator))->URI[8]);
-            }
+            if (strncmp(
+                    (char *) ((XADataLocator_URI*) (ctx->xaSink->pLocator))->URI,
+                    "file:///", 8) == 0)
+                {
+                fname
+                        = (char *) &(((XADataLocator_URI*) (ctx->xaSink->pLocator))->URI[8]);
+                }
             else
-            {
-                fname = (char *) ((XADataLocator_URI*) (ctx->xaSink->pLocator))->URI;
-            }
+                {
+                fname
+                        = (char *) ((XADataLocator_URI*) (ctx->xaSink->pLocator))->URI;
+                }
+
             if (remove(fname) != 0)
-            {
-                DEBUG_ERR_A1("Cannot remove file %s", fname);
+                {
+                DEBUG_ERR_A1_STR("Cannot remove file %s", (char *)fname);
+                }
             }
         }
-    }
 
-    if (ctx->isobjvsrc && ctx->videosource)
-    { /* external source, unlink now */
-        gst_element_unlink(ctx->videosource, ctx->codecbin);
-        GST_OBJECT_FLAG_SET(GST_OBJECT(ctx->videosource),GST_OBJECT_FLOATING);
-    }
     if (bCtx->bus)
-    {
+        {
         gst_bus_remove_signal_watch(bCtx->bus);
-    }
+        }
     XAAdaptationGst_CancelAsyncWait(bCtx);
 
     if (ctx->runpositiontimer)
-    {
+        {
         g_source_remove(ctx->runpositiontimer);
-    }
-
+        }
+    
     XAAdaptationGst_Free(bCtx);
 
     free(ctx);
     ctx = NULL;
 
     DEBUG_API("<-XAMediaRecorderAdapt_Destroy");
-}
+    }
 
 /***************** INTERNAL FUNCTIONS *******************************/
 
-/*
- * void XAMediaRecorderAdapt_CreatePipeline( XAMediaRecorderAdaptationCtx* ctx );
- */
+    /*
+     * void XAMediaRecorderAdapt_CreatePipeline( XAMediaRecorderAdaptationCtx* ctx );
+     */
 XAresult XAMediaRecorderAdapt_CreatePipeline(
         XAMediaRecorderAdaptationCtx* ctx)
-{
+    {
     XAresult ret = XA_RESULT_SUCCESS;
     DEBUG_API("->XAMediaRecorderAdapt_CreatePipeline");
 
     /* Create the audio src */
     if ( ctx->xaAudioSource )
-    {
+        {
         /* create audio pipe source */
         ctx->audiosource = XAAdaptationGst_CreateGstSource( ctx->xaAudioSource, "audiosource",
-                &(ctx->isobjasrc), NULL, NULL );
-
+                NULL );
+    
         if( ctx->audiosource )
-        {
+            {
             if (gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->audiosource))
-            {
+                {
                 DEBUG_API("Added audiosource to bin");
-            }
+                }
             else
-            {
+                {
                 DEBUG_API("Could not add audiosource to bin");
                 return XA_RESULT_INTERNAL_ERROR;
+                }
+            }
+        else
+            {
+            DEBUG_ERR("Could not create audio source!!!!");
+            return XA_RESULT_INTERNAL_ERROR;
             }
         }
-        else
-        {
-            DEBUG_ERR("Could not create audio source!!!!");
-            return XA_RESULT_INTERNAL_ERROR;
-        }
-    }
 
     /* create and add video pipeline */
     ctx->codecbin = XAMediaRecorderAdapt_CreateEncodeBin(ctx);
     if (ctx->codecbin)
-    {
+        {
         if (gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->codecbin))
-        {
+            {
             DEBUG_API("->XAMediaRecorderAdapt_CreatePipeline: gst_bin_add success");
-        }
+            }
         else
-        {
+            {
             DEBUG_ERR("Could not add codec bin");
             return XA_RESULT_INTERNAL_ERROR;
+            }
         }
-    }
     else
-    {
+        {
         DEBUG_ERR("Could not create encoding bin!!!");
         return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    /* create and add video pipeline if video source available and codec supports video */
-    if (ctx->xaVideoSource
-            && gst_element_get_pad(ctx->codecbin, "v_sink"))
-    {
-        /* create video pipe source */
-        ctx->videosource = XAAdaptationGst_CreateGstSource(
-                ctx->xaVideoSource, "videosource", &(ctx->isobjvsrc),
-                NULL, NULL );
-        if (!ctx->videosource)
-        {
-            DEBUG_ERR("Could not create video source!!!!");
-            return XA_RESULT_INTERNAL_ERROR;
         }
 
-        if (!ctx->isobjvsrc)
-        { /* Add other than camera sources to media recorder bin */
-            gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->videosource);
-        }
-        else
-        { /* Don't add camera source to media recorder bin */
-            GstCaps * encSrcCaps;
-            encSrcCaps = gst_caps_new_simple( "video/x-raw-yuv",
-            "format", GST_TYPE_FOURCC,GST_MAKE_FOURCC('I','4','2','0'),
-            "framerate", GST_TYPE_FRACTION, ctx->videoEncSettings.frameRate, 1,
-                    NULL);
-            DEBUG_INFO_A1("new camera encoding filter: %s",gst_caps_to_string(encSrcCaps));
-            g_object_set( G_OBJECT(ctx->videosource), "filter-caps",encSrcCaps,NULL);
-            gst_caps_unref(encSrcCaps);
-        }
-        /* create video filter for video encoder settings */
-        ctx->videofilter = gst_element_factory_make("capsfilter", "videofilter");
-        if( ctx->videofilter )
-        {
-            GstCaps* encSrcCaps;
-            gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->videofilter);
-            encSrcCaps = gst_caps_new_simple("video/x-raw-yuv",
-                    "width", G_TYPE_INT, ctx->videoEncSettings.width,
-                    "height", G_TYPE_INT, ctx->videoEncSettings.height,
-                    "framerate", GST_TYPE_FRACTION, ctx->videoEncSettings.frameRate, 1,
-                    NULL);
-            DEBUG_INFO_A1("video encoder config from settings: %s",gst_caps_to_string(encSrcCaps));
-            g_object_set( G_OBJECT(ctx->videofilter), "caps",encSrcCaps,NULL);
-            gst_caps_unref(encSrcCaps);
-            if ( ! ctx->isobjvsrc )
-            {
-                if(!gst_element_link(ctx->videosource, ctx->videofilter))
-                {
-                    DEBUG_ERR("Could not link videopp to videofilter!!");
-                    return XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-            else
-            { /* For camera source used ghost-pads for linking, because elements are in different bins */
-                GstStateChangeReturn gret;
-                GstElement *camTee=NULL;
-                GstPad *cameraBinGhostPad=NULL;
-                GstPad *ghost=NULL;
-                GstPad *mrGhostSink=NULL;
-
-                DEBUG_INFO("Set ext-source PAUSED for pipeline manipulation");
-                gret = gst_element_set_state( GST_ELEMENT(ctx->videosource), GST_STATE_READY);
-                if(gret == GST_STATE_CHANGE_SUCCESS)
-                {
-                    gret = gst_element_get_state( GST_ELEMENT(ctx->videosource), NULL,NULL,XA_ADAPT_ASYNC_TIMEOUT_SHORT_NSEC);
-                }
-
-                /* Add new ghost-pad to external camera source */
-                camTee = gst_bin_get_by_name( GST_BIN(ctx->videosource), "CamTee");
-                if ( !camTee )
-                {
-                    DEBUG_ERR("Could not get tee-element from camera");
-                }
-                cameraBinGhostPad = gst_element_get_request_pad( camTee, "src%d" );
-                if ( !cameraBinGhostPad )
-                {
-                    DEBUG_ERR("Could not get new src-pad from CamTee element");
-                }
-                gst_element_add_pad(ctx->videosource, gst_ghost_pad_new("MRObjSrc",cameraBinGhostPad));
-                ghost = gst_element_get_static_pad( GST_ELEMENT(ctx->videosource), "MRObjSrc" );
-                DEBUG_INFO_A2("Setting element:%s pad:%s to blocking.",
-                        gst_element_get_name(ctx->baseObj.bin),
-                        gst_pad_get_name(ghost));
-                /* Set newly created pad to blocking */
-                gst_pad_set_blocked_async(ghost, TRUE, XAAdaptationGst_PadBlockCb, NULL);
-
-                mrGhostSink = gst_element_get_static_pad( GST_ELEMENT(ctx->videofilter), "sink");
-                gst_element_add_pad(ctx->baseObj.bin, gst_ghost_pad_new("MRObjSink",mrGhostSink));
-                if ( !gst_element_link_pads( GST_ELEMENT(ctx->videosource), "MRObjSrc",
-                                GST_ELEMENT(ctx->baseObj.bin), "MRObjSink") )
-                {
-                    DEBUG_ERR("Could not link camera:MRObjSrc to videofilter:MRObjSink");
-                    return XA_RESULT_INTERNAL_ERROR;
-                }
-
-                if ( cameraBinGhostPad )
-                {
-                    gst_object_unref( cameraBinGhostPad );
-                }
-                if ( ghost )
-                {
-                    gst_object_unref( ghost );
-                }
-                if ( mrGhostSink )
-                {
-                    gst_object_unref( mrGhostSink );
-                }
-                if ( camTee )
-                {
-                    gst_object_unref( camTee );
-                }
-            }
-        }
-        /* create video processing pipeline */
-#ifdef XA_IMPL_FIXED_VIDEO_SIZE
-        ctx->videoppbin = XAAdaptationGst_CreateFixedSizeVideoPP( );
-#else
-        ctx->videoppbin = XAAdaptationGst_CreateVideoPP( );
-#endif
-        if( ctx->videoppbin )
-        {
-            gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->videoppbin);
-            if(!gst_element_link(ctx->videofilter, ctx->videoppbin))
-            {
-                DEBUG_ERR("Could not link videofilter to videopp!!");
-                return XA_RESULT_INTERNAL_ERROR;
-            }
-        }
-        else
-        {
-            DEBUG_ERR("Could not create video pp bin!!!!");
-            return XA_RESULT_INTERNAL_ERROR;
-        }
-        /* create identity to extract buffers from */
-        ctx->videoextract = gst_element_factory_make("identity", "videoextract");
-        if( ctx->videoextract )
-        {
-            gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->videoextract);
-            if(!gst_element_link(ctx->videoppbin, ctx->videoextract))
-            {
-                DEBUG_ERR("Could not link videopp to videoextract!!");
-                return XA_RESULT_INTERNAL_ERROR;
-            }
-        }
-        else
-        {
-            DEBUG_ERR("Could not create videoextract!!!!");
-            return XA_RESULT_INTERNAL_ERROR;
-        }
-        if( ctx->videoextract )
-        {
-            if( !gst_element_link_pads(ctx->videoextract, "src", ctx->codecbin, "v_sink") )
-            {
-                DEBUG_INFO("Warning: could not link videoextract to codec!!");
-            }
-        }
-    }
-    else
-    {
-        DEBUG_INFO("No video input");
-    }
-
     /* create and add audio pipeline */
     if ( ctx->audiosource )
-    {
-#ifdef USE_AUDIO_PP
-        /* create audio processing pipeline */
-        ctx->audioppbin = XAAdaptationGst_CreateAudioPP( );
-        if( ctx->audioppbin )
-        {
-            if (gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->audioppbin))
-            {
-                DEBUG_INFO("Added audioppbin to bin");
-            }
-            else
-            {
-                DEBUG_ERR("Could not add audioppbin to bin");
-                return XA_RESULT_INTERNAL_ERROR;
-            }
-            if(!gst_element_link(ctx->audiosource, ctx->audioppbin))
+        {    
+        //if(!gst_element_link(ctx->audiofilter, ctx->codecbin ))
+        if(!gst_element_link(ctx->audiosource, ctx->codecbin ))
             {
-                DEBUG_ERR("Could not link audiofilter to audiopp!!");
-                return XA_RESULT_INTERNAL_ERROR;
-            }
-        }
-        else
-        {
-            DEBUG_ERR("Could not create audio pp bin!!!!");
-            return XA_RESULT_INTERNAL_ERROR;
-        }
-#endif //USE_AUDIO_PP
-
-        /* create audio filter for audio encoder settings */
-
-//        ret = XAMediaRecorderAdapt_CreateCapsFilter(ctx);
-//
-//        if ( XA_RESULT_SUCCESS != ret )
-//        {
-//            DEBUG_ERR("cannot create caps filter");
-//            return ret;
-//        }
-//
-//        /*LINK : audiosource -> audiofilter */
-//        if(!gst_element_link(ctx->audiosource, ctx->audiofilter))
-//        {
-//            DEBUG_ERR("Could not link audiosource to audiofilter!!");
-//            return XA_RESULT_INTERNAL_ERROR;
-//        }
-
-/*            if( !gst_element_link_pads_filtered(ctx->audiofilter, "src", ctx->codecbin, "sink", encSrcCaps) )
-            {
-            DEBUG_INFO("Warning: could not link audiopp to codec!!");
+            DEBUG_ERR("Could not link audiosource to codecbin!!");
             return XA_RESULT_INTERNAL_ERROR;
             }
-*/
-#ifdef USE_AUDIO_PP
-            if (!gst_element_link_filtered( ctx->audiofilter , ctx->audioppbin ,encSrcCaps))
+        else
             {
-                DEBUG_INFO("Warning: could not link audiosource to audiopp!!");
-                return XA_RESULT_INTERNAL_ERROR;
-            }
-            if(!gst_element_link(ctx->audioppbin, ctx->codecbin))
-            {
-                DEBUG_INFO("Warning: could not link audioppbin to codecbin!!");
-                return XA_RESULT_INTERNAL_ERROR;
+            DEBUG_INFO("Warning: link audiosource to codecbin is successfull with muxcaps!!");
             }
-#else
-        //if(!gst_element_link(ctx->audiofilter, ctx->codecbin ))
-        if(!gst_element_link(ctx->audiosource, ctx->codecbin ))
-        {
-            DEBUG_ERR("Could not link audiosource to codecbin!!");
-            return XA_RESULT_INTERNAL_ERROR;
         }
-        else
+    else
         {
-            DEBUG_INFO("Warning: link audiosource to codecbin is successfull with muxcaps!!");
+        DEBUG_INFO("No audio input");
         }
-#endif // USE_AUDIO_PP
-    }
-    else
-    {
-        DEBUG_INFO("No audio input");
-    }
 
     /* create and add data sink */
-    ctx->datasink = XAAdaptationGst_CreateGstSink( ctx->xaSink, "datasink", &(ctx->isobjsink) );
+    ctx->datasink = XAAdaptationGst_CreateGstSink( ctx->xaSink, "datasink" );
     if( ctx->datasink )
-    {
-        if ( GST_IS_APP_SINK(ctx->datasink) )
         {
-            gst_app_sink_set_emit_signals( GST_APP_SINK(ctx->datasink), TRUE );
-        }
         if (gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->datasink))
-        {
+            {
             DEBUG_INFO("Added datasink to bin");
-        }
+            }
         else
-        {
+            {
             DEBUG_ERR("Could not add datasink to bin");
             return XA_RESULT_INTERNAL_ERROR;
-        }
+            }
         if(!gst_element_link(ctx->codecbin, ctx->datasink))
-        {
+            {
             DEBUG_ERR("Could not link codec to sink!!");
             return XA_RESULT_INTERNAL_ERROR;
+            }
         }
-        /* NOTE: no actual object sinks applicable, variable used to imply appsrc (recording to memory)*/
-        if(ctx->isobjsink)
+    else
         {
-            g_signal_connect(ctx->datasink, "new-buffer",
-                    G_CALLBACK (XAMediaRecorderAdapt_BufferAvailable),ctx);
-
-            ret = XAImpl_CreateSemaphore( &(ctx->recThrCtx.bufInsufficientSem));
-            if ( ret != XA_RESULT_SUCCESS )
-            {
-                DEBUG_ERR("WARN: Could not create semaphore for recorder event handler!");
-            }
-            XAImpl_CreateThreadHandle( &(ctx->recordingEventThr) );
-        }
-    }
-    else
-    {
         DEBUG_ERR("Could not create data sink!!!");
         return XA_RESULT_INTERNAL_ERROR;
-    }
+        }
     DEBUG_API("<-XAMediaRecorderAdapt_CreatePipeline");
     return ret;
-}
+    }
 
 /*
  * XAresult XAMediaRecorderAdapt_CheckCodec( XAMediaRecorderAdaptationCtx_* mCtx );
@@ -730,7 +480,7 @@
 XAresult XAMediaRecorderAdapt_CheckCodec( XAMediaRecorderAdaptationCtx_* mCtx, XACapsType encType, XAuint32 encoderId )
     {
     XAresult ret = XA_RESULT_SUCCESS;
-    XAuint32 format;
+    XAuint32 format = 0;
     XACapabilities temp;
 
     DEBUG_API("->XAMediaRecorderAdapt_CheckCodec");
@@ -739,257 +489,138 @@
     ret = XACapabilitiesMgr_GetCapsById(mCtx->baseObj.baseObj.capslist,(XACapsType)(XACAP_ENCODER|encType), encoderId, &temp);
 
     if( ret==XA_RESULT_SUCCESS )
-    {
+        {
         if(encType & (XACAP_VIDEO|XACAP_AUDIO))
-        {
-            if(mCtx->xaSink && mCtx->xaSink->pFormat)
             {
+            if(mCtx->xaSink && mCtx->xaSink->pFormat)
+                {
                 format = *(XAuint32*)(mCtx->xaSink->pFormat);
-            }
+                }
             else
-            {
+                {
                 ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                }
             }
-        }
-        else
-        {
-            if(mCtx->snapshotVars.xaSink && mCtx->snapshotVars.xaSink->pFormat)
-            {
-                format = *(XAuint32*)(mCtx->snapshotVars.xaSink->pFormat);
-            }
-            else
-            {
-                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-            }
-        }
+        
         if(ret==XA_RESULT_SUCCESS)
-        {
-             switch ( format )
-            {
-                case XA_DATAFORMAT_PCM:
-                if ( (encType == XACAP_AUDIO) && (encoderId == XA_AUDIOCODEC_PCM) )
-                {
-                    ret=XA_RESULT_SUCCESS;
-                }
-                else
-                {
-                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                }
-                break;
-    
-                case XA_DATAFORMAT_RAWIMAGE:
-                if ( (encType == XACAP_IMAGE) && (encoderId == XA_IMAGECODEC_RAW) )
-                {
-                    ret=XA_RESULT_SUCCESS;
-                }
-                else
-                {
-                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                }
-                break;
-    
-                case XA_DATAFORMAT_MIME:
-                DEBUG_INFO("XA_DATAFORMAT_MIME ");
+            { 
+            switch ( format )
                 {
-                    XADataFormat_MIME* mime = ((XADataFormat_MIME*)mCtx->xaSink->pFormat);
-                    DEBUG_INFO_A1("mime->containerType:%u",(int)mime->containerType);
-                    DEBUG_INFO_A1("mime->mimeType:%s",mime->mimeType);
-                    switch ( mime->containerType )
-                    {
-                        case XA_CONTAINERTYPE_RAW:
-                        if( ((encType == XACAP_AUDIO) && (encoderId == XA_AUDIOCODEC_PCM)) ||
-                                ((encType == XACAP_VIDEO) && (encoderId == XA_ADAPTID_RAWVIDEO)) ||
-                                ((encType == XACAP_IMAGE) && (encoderId == XA_IMAGECODEC_RAW)) )
+                case XA_DATAFORMAT_PCM:
+                    if ( (encType == XACAP_AUDIO) && (encoderId == XA_AUDIOCODEC_PCM) )
+                        {
+                        ret=XA_RESULT_SUCCESS;
+                        }
+                    else
                         {
-                            ret=XA_RESULT_SUCCESS;
+                        ret=XA_RESULT_FEATURE_UNSUPPORTED;
                         }
-                        else
+                    break;
+
+                case XA_DATAFORMAT_MIME:
+                    DEBUG_INFO("XA_DATAFORMAT_MIME ");
                         {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
-                        break;
-    
-                        case XA_CONTAINERTYPE_AVI:
-                        if(encType == XACAP_VIDEO)
-                        {
-                            switch(encoderId)
+                        XADataFormat_MIME* mime = ((XADataFormat_MIME*)mCtx->xaSink->pFormat);
+                        DEBUG_INFO_A1("mime->containerType:%u",(int)mime->containerType);
+                    DEBUG_INFO_A1_STR("mime->mimeType:%s", (char *)mime->mimeType);
+                        switch ( mime->containerType )
                             {
-                                case XA_ADAPTID_MOTIONJPEG:
-                                case XA_ADAPTID_RAWVIDEO:
-                                ret=XA_RESULT_SUCCESS;
-                                break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                            case XA_CONTAINERTYPE_RAW:
+                                if((encType == XACAP_AUDIO) && (encoderId == XA_AUDIOCODEC_PCM))
+                                    {
+                                    ret=XA_RESULT_SUCCESS;
+                                    }
+                                else
+                                    {
+                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                    }
                                 break;
-                            }
-                        }
-                        else if(encType == XACAP_AUDIO)
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_AUDIOCODEC_PCM:
-                                ret=XA_RESULT_SUCCESS;
+
+                            case XA_CONTAINERTYPE_WAV:
+                                if(encType == XACAP_AUDIO)
+                                    {
+                                    switch(encoderId)
+                                        {
+                                        case XA_AUDIOCODEC_PCM:
+                                            ret=XA_RESULT_SUCCESS;
+                                            break;
+                                        default:
+                                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                            break;
+                                        }
+                                    }
+                                else
+                                    {
+                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                    }
                                 break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
+
+                            case XA_CONTAINERTYPE_UNSPECIFIED:
+                                    {
+                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                    }
                                 break;
-                            }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
-                        break;
-    
-                        case XA_CONTAINERTYPE_WAV:
-                        if(encType == XACAP_AUDIO)
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_AUDIOCODEC_PCM:
-                                ret=XA_RESULT_SUCCESS;
+                            case XA_CONTAINERTYPE_AMR:
+                                if(encType == XACAP_AUDIO)
+                                    {
+                                    switch(encoderId)
+                                        {
+                                        case XA_AUDIOCODEC_AMR:
+                                            ret=XA_RESULT_SUCCESS;
+                                            break;
+                                        default:
+                                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                        break;
+                                        }
+                                    }
+                                else
+                                    {
+                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                    }
                                 break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                            case XA_CONTAINERTYPE_MP4:
+                                if(encType == XACAP_AUDIO )
+                                    {
+                                    switch(encoderId)
+                                        {
+                                        case XA_AUDIOCODEC_AAC:
+                                            ret=XA_RESULT_SUCCESS;
+                                            break;
+                                        default:
+                                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                            break;
+                                        }
+                                    }
+                                else
+                                    {
+                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
+                                    }
+                                break;
+                            default: /*switch (containertype)*/
+                                ret = XA_RESULT_FEATURE_UNSUPPORTED;
                                 break;
                             }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
                         break;
-    
-                        case XA_CONTAINERTYPE_JPG:
-                        if(encType == XACAP_VIDEO)
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_ADAPTID_MOTIONJPEG:
-                                ret=XA_RESULT_SUCCESS;
-                                break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                break;
-                            }
-                        }
-                        else if(encType == XACAP_IMAGE)
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_IMAGECODEC_JPEG:
-                                ret=XA_RESULT_SUCCESS;
-                                break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                break;
-                            }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
                         }
-                        break;
-    
-                        case XA_CONTAINERTYPE_UNSPECIFIED:
-                        if(strstr( (char *) mime->mimeType, "/ogg") != 0)
-                        {
-                            if(encType == XACAP_VIDEO)
-                            {
-                                switch(encoderId)
-                                {
-                                    case XA_ADAPTID_THEORA:
-                                    ret=XA_RESULT_SUCCESS;
-                                    break;
-                                    default:
-                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                    break;
-                                }
-                            }
-                            else if(encType == XACAP_AUDIO)
-                            {
-                                switch(encoderId)
-                                {
-                                    case XA_ADAPTID_VORBIS:
-                                    ret=XA_RESULT_SUCCESS;
-                                    break;
-                                    default:
-                                    ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                    break;
-                                }
-                            }
-                            else
-                            {
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                            }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
-                        break;
-                        case XA_CONTAINERTYPE_AMR:
-                        if(encType == XACAP_AUDIO)
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_AUDIOCODEC_AMR:
-                                ret=XA_RESULT_SUCCESS;
-                                break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                break;
-                            }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
-                        break;
-                        case XA_CONTAINERTYPE_MP4:
-                        if(encType == XACAP_AUDIO )
-                        {
-                            switch(encoderId)
-                            {
-                                case XA_AUDIOCODEC_AAC:
-                                ret=XA_RESULT_SUCCESS;
-                                break;
-                                default:
-                                ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                                break;
-                            }
-                        }
-                        else
-                        {
-                            ret=XA_RESULT_FEATURE_UNSUPPORTED;
-                        }
-                        break;
-                        default: /*switch (containertype)*/
-                        ret = XA_RESULT_FEATURE_UNSUPPORTED;
-                        break;
-                    }
+                default: /*switch (format)*/
+                    ret = XA_RESULT_FEATURE_UNSUPPORTED;
                     break;
                 }
-                default: /*switch (format)*/
-                ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                break;
             }
         }
-    }
     if( ret!=XA_RESULT_SUCCESS )
-    {
+        {
         DEBUG_ERR("cannot accommodate given codec & datasink pair!!!");
-    }
+        }
     DEBUG_API("<-XAMediaRecorderAdapt_CheckCodec");
     return ret;
-}
-
+    }
 /*
  * XAresult XAMediaRecorderAdapt_ChangeEncoders( XAMediaRecorderAdaptationCtx* mCtx );
  * re-create encodebin based on new encoder settings
  */
 XAresult XAMediaRecorderAdapt_ChangeEncoders( XAMediaRecorderAdaptationCtx* mCtx )
-{
+    {
     XAresult ret = XA_RESULT_SUCCESS;
     GstElement  *encoderelement = NULL;
     XAAdaptationGstCtx* bCtx = &(mCtx->baseObj);
@@ -997,15 +628,13 @@
     DEBUG_API("->XAMediaRecorderAdapt_ChangeEncoders");
     /* check state */
     if(GST_STATE(mCtx->baseObj.bin)<GST_STATE_PLAYING)
-    {
+        {
         GstElement* newBin = XAMediaRecorderAdapt_CreateEncodeBin(mCtx);
         if(newBin)
-        { /* replace old bin with new */
+            { /* replace old bin with new */
             GstStateChangeReturn gret;
             GstPad *asink=NULL, *linkedasrc=NULL;
-            GstPad *vsink=NULL, *linkedvsrc=NULL;
             GstPad *src=NULL, *linkedsink=NULL;
-            GstPad *moSrc=NULL, *moSink=NULL;
             GstCaps* encSrcCaps = NULL;
             GstPad *afiltsrc=NULL, *afiltsink=NULL;
 
@@ -1013,106 +642,75 @@
             DEBUG_INFO("Unroll pipeline");
             bCtx->binWantedState = GST_STATE_READY;
             gret = gst_element_set_state( GST_ELEMENT(bCtx->bin), bCtx->binWantedState);
+            if(gret == GST_STATE_CHANGE_FAILURE)
+                {
+                DEBUG_ERR("Failed to Unroll Pipeline!!");
+                return XA_RESULT_INTERNAL_ERROR;
+                }
+            
             gret = gst_element_get_state( GST_ELEMENT(bCtx->bin), NULL, NULL, XA_ADAPT_ASYNC_TIMEOUT_SHORT_NSEC);
 
-            /*set new stream settings*/
-            if( mCtx->videofilter )
-            {
-                encSrcCaps = gst_caps_new_simple("video/x-raw-yuv",
-                        "format", GST_TYPE_FOURCC,GST_MAKE_FOURCC('I','4','2','0'),
-                        "width", G_TYPE_INT, mCtx->videoEncSettings.width,
-                        "height", G_TYPE_INT, mCtx->videoEncSettings.height,
-                        "framerate", GST_TYPE_FRACTION, mCtx->videoEncSettings.frameRate, 1,
-                        NULL);
-                DEBUG_INFO_A1("new video encoder config from settings: %s",gst_caps_to_string(encSrcCaps));
-                g_object_set( G_OBJECT(mCtx->videofilter), "caps",encSrcCaps,NULL);
-                gst_caps_unref(encSrcCaps);
-            }
             if(!mCtx ->audiofilter)
-            {
-               //creating caps filter
-               mCtx->audiofilter = gst_element_factory_make("capsfilter", "audiofilter");
-               if ( mCtx->audiofilter )
-               {
-                   gst_bin_add(GST_BIN(bCtx->bin), mCtx->audiofilter);
-                   encSrcCaps = gst_caps_new_full(
-                   gst_structure_new("audio/x-raw-int",
-                           "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
-                           "rate", G_TYPE_INT, (mCtx->audioEncSettings.sampleRate / 1000),
-                           "depth", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
-                           "signed",G_TYPE_BOOLEAN, TRUE,
-                           "endianness",G_TYPE_INT, mCtx->audioEncSettings.blockAlignment,
-                           NULL),
-                   gst_structure_new("audio/amr",
-                          "signed",G_TYPE_BOOLEAN, TRUE,
-                          "endianness",G_TYPE_INT, mCtx->audioEncSettings.blockAlignment,
-                          "depth", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
-                          "rate", G_TYPE_INT, (mCtx->audioEncSettings.sampleRate / 1000),
-                          "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
-                          NULL),
-                    gst_structure_new("audio/x-raw-float",
-                           "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
-                           "width", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
-                           "rate", G_TYPE_INT , mCtx->audioEncSettings.sampleRate / 1000,
-                           NULL),
-                           NULL);
-                   DEBUG_INFO_A1("new audio encoder config from settings: %s",gst_caps_to_string(encSrcCaps));
-                   g_object_set( G_OBJECT(mCtx->audiofilter), "caps",encSrcCaps,NULL);
+                {
+                   //creating caps filter 
+                   mCtx->audiofilter = gst_element_factory_make("capsfilter", "audiofilter");
+                   if ( mCtx->audiofilter )
+                    {
+                       gst_bin_add(GST_BIN(bCtx->bin), mCtx->audiofilter);
+                       encSrcCaps = gst_caps_new_full(
+                       gst_structure_new("audio/x-raw-int",
+                               "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
+                               "rate", G_TYPE_INT, (mCtx->audioEncSettings.sampleRate / 1000),
+                               "depth", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
+                               "signed",G_TYPE_BOOLEAN, TRUE,
+                               "endianness",G_TYPE_INT, mCtx->audioEncSettings.blockAlignment,
+                               NULL),
+                       gst_structure_new("audio/amr",
+                              "signed",G_TYPE_BOOLEAN, TRUE,
+                              "endianness",G_TYPE_INT, mCtx->audioEncSettings.blockAlignment,
+                              "depth", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
+                              "rate", G_TYPE_INT, (mCtx->audioEncSettings.sampleRate / 1000),
+                              "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
+                              NULL),
+                        gst_structure_new("audio/x-raw-float",
+                               "channels", G_TYPE_INT, mCtx->audioEncSettings.channelsOut,
+                               "width", G_TYPE_INT, mCtx->audioEncSettings.bitsPerSample,
+                               "rate", G_TYPE_INT , mCtx->audioEncSettings.sampleRate / 1000,
+                               NULL),
+                               NULL);
+                       DEBUG_INFO_A1_STR("new audio encoder config from settings: %s",gst_caps_to_string(encSrcCaps));
+                       g_object_set( G_OBJECT(mCtx->audiofilter), "caps",encSrcCaps,NULL);
+                                                             
+                       gst_caps_unref(encSrcCaps);
 
-                   gst_caps_unref(encSrcCaps);
-                }
-                else
-                {
-                    DEBUG_ERR("cannot create caps filter");
-                    return XA_RESULT_INTERNAL_ERROR;
+                    }else
+                        {
+                        DEBUG_ERR("cannot create caps filter");
+                        return XA_RESULT_INTERNAL_ERROR;
+                        }
+                    
                 }
-            }
-
-            if(mCtx->isobjvsrc)
-            {
-                moSrc = gst_element_get_static_pad(mCtx->videosource,"MRObjSrc");
-                moSink = gst_pad_get_peer(moSrc);
-                if(moSink)
-                {
-                    gst_pad_unlink(moSrc,moSink);
-                }
-                encSrcCaps = gst_caps_new_simple("video/x-raw-yuv",
-                        "format", GST_TYPE_FOURCC,GST_MAKE_FOURCC('I','4','2','0'),
-                        "framerate", GST_TYPE_FRACTION, mCtx->videoEncSettings.frameRate, 1,
-                        NULL);
-                DEBUG_INFO_A1("new camera encoding filter: %s",gst_caps_to_string(encSrcCaps));
-                g_object_set( G_OBJECT(mCtx->videosource), "filter-caps",encSrcCaps,NULL);
-                gst_caps_unref(encSrcCaps);
-            }
 
             DEBUG_INFO("Unlink and remove old encodebin");
             asink = gst_element_get_static_pad(mCtx->codecbin,"sink");
             if(asink)
-            {
+                {
                 linkedasrc = gst_pad_get_peer(asink);
                 if(linkedasrc)
-                {
+                    {
                     gst_pad_unlink(linkedasrc,asink);
+                    }
                 }
-            }
-            vsink = gst_element_get_static_pad(mCtx->codecbin,"v_sink");
-            if(vsink)
-            {
-                linkedvsrc = gst_pad_get_peer(vsink);
-                if(linkedvsrc)
-                {
-                    gst_pad_unlink(linkedvsrc,vsink);
-                }
-            }
+
             src = gst_element_get_static_pad(mCtx->codecbin,"src");
             if(src)
-            {
+                {
                 linkedsink = gst_pad_get_peer(src);
                 if(linkedsink)
-                {
+                    {
                     gst_pad_unlink(src,linkedsink);
+                    }
                 }
-            }
 
             gst_element_set_state( GST_ELEMENT(mCtx->codecbin), GST_STATE_NULL );
             gst_element_get_state( GST_ELEMENT(mCtx->codecbin),NULL,NULL,1000 );
@@ -1129,111 +727,73 @@
             afiltsink = gst_element_get_static_pad(mCtx->audiofilter,"sink");
             afiltsrc = gst_element_get_static_pad(mCtx->audiofilter,"src");
             if(linkedasrc && afiltsink)
-            {
-                if(gst_pad_link(linkedasrc , afiltsink ) != GST_PAD_LINK_OK)
-                {
-                    DEBUG_ERR("Could not link audiosource to audiofilter!!");
-                    return XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-            if(asink && afiltsrc)
-            {
-                if(gst_pad_link(afiltsrc , asink) != GST_PAD_LINK_OK)
                 {
-                    DEBUG_ERR("Could not link audiosource to audiofilter!!");
-                    return XA_RESULT_INTERNAL_ERROR;
+                    if(gst_pad_link(linkedasrc , afiltsink ) != GST_PAD_LINK_OK)
+                        {
+                        DEBUG_ERR("Could not link audiosource to audiofilter!!");
+                        return XA_RESULT_INTERNAL_ERROR;
+                        }
                 }
-            }
-            vsink = gst_element_get_static_pad(mCtx->codecbin,"v_sink");
-            if(vsink && linkedvsrc)
-            {
-                if(gst_pad_link(linkedvsrc,vsink) != GST_PAD_LINK_OK)
+            if(asink && afiltsrc)
+                {
+                    if(gst_pad_link(afiltsrc , asink) != GST_PAD_LINK_OK)
                         {
-                            DEBUG_ERR("Could not link linkedvsrc to vsink!!");
-                            return XA_RESULT_INTERNAL_ERROR;
+                        DEBUG_ERR("Could not link audiosource to audiofilter!!");
+                        return XA_RESULT_INTERNAL_ERROR;
                         }
-            }
+                }
             src = gst_element_get_static_pad(mCtx->codecbin,"src");
             if(src && linkedsink)
-            {
-                if(gst_pad_link(src,linkedsink) != GST_PAD_LINK_OK)
                 {
-                    DEBUG_ERR("Could not link codecbin src pad  to linkedsink!!");
-                    return XA_RESULT_INTERNAL_ERROR;
+                        if(gst_pad_link(src,linkedsink) != GST_PAD_LINK_OK)
+                            {
+                            DEBUG_ERR("Could not link codecbin src pad  to linkedsink!!");
+                            return XA_RESULT_INTERNAL_ERROR;
+                            }
                 }
-            }
-
-            if(mCtx->isobjvsrc)
-            {
-                moSrc = gst_element_get_static_pad(mCtx->videosource,"MRObjSrc");
-                if(moSink&&moSrc)
-                {
-                    if(gst_pad_link(moSrc,moSink) != GST_PAD_LINK_OK)
-                    {
-                        DEBUG_ERR("Could not link codecbin src pad  to linkedsink!!");
-                        return XA_RESULT_INTERNAL_ERROR;
-                    }
-                }
-            }
-
 
             //setting the Bitrate and other properties for elements
-            if(mCtx->audioEncSettings.encoderId == XA_AUDIOCODEC_AAC)
-            {
-                encoderelement = gst_bin_get_by_name((GstBin*)mCtx->codecbin, "audioenc") ;
-                if(encoderelement)
-                {
-                    g_object_set(G_OBJECT(encoderelement),"bitrate" , mCtx->audioEncSettings.bitRate , NULL );
-                    g_object_set(G_OBJECT(encoderelement),"profile", mCtx->audioEncSettings.levelSetting , NULL );
-                    g_object_set(G_OBJECT(encoderelement),"output-format", mCtx->audioEncSettings.streamFormat , NULL );
-                    gst_object_unref (encoderelement);
-                 }
-                 else
-                 {
-                    DEBUG_ERR("Encoder Element not found for AAC");
-                 }
+                if(mCtx->audioEncSettings.encoderId == XA_AUDIOCODEC_AAC)
+                    {   
+                    encoderelement = gst_bin_get_by_name((GstBin*)mCtx->codecbin, "audioenc") ;
+                    if(encoderelement)
+                        {
+                        g_object_set(G_OBJECT(encoderelement),"bitrate" , mCtx->audioEncSettings.bitRate , NULL );
+                        g_object_set(G_OBJECT(encoderelement),"profile", mCtx->audioEncSettings.levelSetting , NULL );
+                        g_object_set(G_OBJECT(encoderelement),"output-format", mCtx->audioEncSettings.streamFormat , NULL );
+                        gst_object_unref (encoderelement);
+                        }
+                    else
+                        {
+                         DEBUG_ERR("Encoder Element not found for AAC");
+                        }
+                    }
+                else if(mCtx->audioEncSettings.encoderId == XA_AUDIOCODEC_AMR)
+                    {
+                    g_object_set(G_OBJECT(mCtx->audiosource),"speechbitrate", mCtx->audioEncSettings.bitRate , NULL );
+                    }
+                else
+                    {
+                    DEBUG_INFO("No properties for PCM or Wav");
+                    }       
+                
+            DEBUG_INFO_A1_STR("Pipeline in state %s",gst_element_state_get_name(GST_STATE(bCtx->bin)));
             }
-            else if(mCtx->audioEncSettings.encoderId == XA_AUDIOCODEC_AMR)
-            {
-                g_object_set(G_OBJECT(mCtx->audiosource),"speechbitrate", mCtx->audioEncSettings.bitRate , NULL );
-            }
-            else
+        else
             {
-                DEBUG_INFO("No properties for PCM or Wav")
-            }
-
-            /*re-roll*/
-            DEBUG_INFO("Reroll pipeline");
-            bCtx->binWantedState = GST_STATE_PAUSED;
-            gret = gst_element_set_state( GST_ELEMENT(bCtx->bin), bCtx->binWantedState);
-            if( gret == GST_STATE_CHANGE_ASYNC )
-            {
-                DEBUG_INFO("Wait for reroll");
-                XAAdaptationGst_StartAsyncWait(bCtx);
-            }
-            else if( gret == GST_STATE_CHANGE_FAILURE )
-            {
-                DEBUG_ERR("reroll FAILED");
-                ret = XA_RESULT_INTERNAL_ERROR;
-            }
-            bCtx->waitingasyncop = XA_BOOLEAN_FALSE;
-            DEBUG_INFO_A1("Pipeline in state %s",gst_element_state_get_name(GST_STATE(bCtx->bin)));
-        }
-        else
-        {
             /* could not support wanted encoders */
             DEBUG_ERR("Failed to create encodebin with new settings, using old one!");
             ret = XA_RESULT_FEATURE_UNSUPPORTED;
+            }
         }
-    }
     else
-    { /* n/a while playing */
+        { /* n/a while playing */
         DEBUG_ERR("Cannot change encoder when recording ongoing!");
         ret = XA_RESULT_PRECONDITIONS_VIOLATED;
-    }
+        }
     DEBUG_API("<-XAMediaRecorderAdapt_ChangeEncoders");
     return ret;
-}
+    }
 
 /**
  * GstElement* XAMediaRecorderAdapt_CreateEncodeBin( XAMediaRecorderAdaptationCtx* ctx )
@@ -1241,398 +801,173 @@
  * Decription: Create encoder/muxer element based on given format and encoder settings
  */
 GstElement* XAMediaRecorderAdapt_CreateEncodeBin( XAMediaRecorderAdaptationCtx* ctx )
-{
+    {
     XAresult ret = XA_RESULT_SUCCESS;
-    GstElement *audioenc = NULL, *videoenc=NULL, *mux=NULL;
+    GstElement *audioenc = NULL, *mux=NULL;
     GstElement *codecbin = gst_bin_new( "mrcodecbin" );
-    GstPad *ghostsrc = NULL, *ghostaudiosink = NULL, *ghostvideosink = NULL;
+    GstPad *ghostsrc = NULL, *ghostaudiosink = NULL;
     XAuint32 format;
     XACapabilities temp;
 
     DEBUG_API("->XAMediaRecorderAdapt_CreateEncodeBin");
     if(ctx->recModes & XA_RECMODE_STREAM)
-    {
+        {
         if(ctx->xaSink && ctx->xaSink->pFormat)
-        {
+            {
             format = *(XAuint32*)(ctx->xaSink->pFormat);
             switch ( format )
-            {
+                {
                 case XA_DATAFORMAT_PCM:
-                DEBUG_INFO("XA_DATAFORMAT_PCM");
-                {
-                    XADataFormat_PCM* pcm = ((XADataFormat_PCM*)ctx->xaSink->pFormat);
-                    if(!ctx->xaAudioSource)
-                    {
-                        DEBUG_ERR("Unsupported dataformat for given data sources");
-                        return NULL;
-                    }
-                    /* no need for codec, just pass data on */
-                    mux = gst_element_factory_make("identity", "mux");
-                    gst_bin_add(GST_BIN(codecbin), mux);
-                    ghostsrc = gst_element_get_static_pad(mux,"src");
-                    ghostaudiosink = gst_element_get_static_pad(mux,"sink");
-                    /*set usable audio settings from the sink structure*/
-                    ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_PCM;
-                    ctx->audioEncSettings.channelsOut = pcm->numChannels;
-                    ctx->audioEncSettings.bitsPerSample = pcm->bitsPerSample;
-                }
-                break;
-
-                case XA_DATAFORMAT_RAWIMAGE:
-                DEBUG_INFO("XA_DATAFORMAT_RAWIMAGE");
-                {
-                    XADataFormat_RawImage* img = ((XADataFormat_RawImage*)ctx->xaSink->pFormat);
-                    if(!ctx->xaVideoSource)
-                    {
-                        DEBUG_ERR("Unsupported dataformat for given data sources");
-                        return NULL;
-                    }
-                    /* no need for codec, just pass data on */
-                    mux = gst_element_factory_make("identity", "mux");
-                    gst_bin_add(GST_BIN(codecbin), mux);
-                    ghostsrc = gst_element_get_static_pad(mux,"src");
-                    ghostvideosink = gst_element_get_static_pad(mux,"sink");
-                    /*set needed image settings from the sink structure*/
-                    ctx->imageEncSettings.encoderId = XA_IMAGECODEC_RAW;
-                    ctx->imageEncSettings.width = img->width;
-                    ctx->imageEncSettings.height = img->height;
-                    ctx->imageEncSettings.colorFormat = img->colorFormat;
-                }
-                break;
+                    DEBUG_INFO("XA_DATAFORMAT_PCM");
+                        {
+                        XADataFormat_PCM* pcm = ((XADataFormat_PCM*)ctx->xaSink->pFormat);
+                        if(!ctx->xaAudioSource)
+                            {
+                            DEBUG_ERR("Unsupported dataformat for given data sources");
+                            return NULL;
+                            }
+                        /* no need for codec, just pass data on */
+                        mux = gst_element_factory_make("identity", "mux");
+                        gst_bin_add(GST_BIN(codecbin), mux);
+                        ghostsrc = gst_element_get_static_pad(mux,"src");
+                        ghostaudiosink = gst_element_get_static_pad(mux,"sink");
+                        /*set usable audio settings from the sink structure*/
+                        ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_PCM;
+                        ctx->audioEncSettings.channelsOut = pcm->numChannels;
+                        ctx->audioEncSettings.bitsPerSample = pcm->bitsPerSample;
+                        }
+                    break;
 
                 case XA_DATAFORMAT_MIME:
-                DEBUG_INFO("XA_DATAFORMAT_MIME ");
-                {
+                    DEBUG_INFO("XA_DATAFORMAT_MIME ");
+                    {
                     XADataFormat_MIME* mime = ((XADataFormat_MIME*)ctx->xaSink->pFormat);
                     DEBUG_INFO_A1("mime->containerType:%u",(int)mime->containerType);
-                    DEBUG_INFO_A1("mime->mimeType:%s",mime->mimeType);
+                    DEBUG_INFO_A1_STR("mime->mimeType:%s", (char *)mime->mimeType);
                     switch ( mime->containerType )
-                    {
-                        case XA_CONTAINERTYPE_AVI:
-                        DEBUG_INFO("XA_CONTAINERTYPE_AVI");
-                        mux = gst_element_factory_make("avimux", "mux");
-                        if(mux)
                         {
-                            if (gst_bin_add(GST_BIN(codecbin), mux))
-                            {
-                                DEBUG_INFO("Added mux to codecbin");
-                            }
-                            else
+                        case XA_CONTAINERTYPE_WAV:
                             {
-                                DEBUG_ERR("Could not add mux to codecbin");
-                                return NULL;
-                            }
-                            /*use this as linkpoint*/
-                            ghostsrc = gst_element_get_static_pad(mux,"src");
-                        }
-                        /* Add and link audio/video codecs */
-                        /*set video defaults*/
-                        if(ctx->videoEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                        ctx->videoEncSettings.encoderId = XA_ADAPTID_MOTIONJPEG;
-                        if(ctx->xaVideoSource)
-                        {
-                            if(XACapabilitiesMgr_GetCapsById(NULL, (XACapsType)(XACAP_ENCODER|XACAP_VIDEO), ctx->videoEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
-                            {
-                                if(temp.adaptId)
-                                {
-                                    videoenc = gst_element_factory_make((char*)temp.adaptId, "videoenc");
-                                }
-                            }
-                            if(videoenc)
-                            {
-                                gst_bin_add(GST_BIN(codecbin), videoenc);
-                                if(!gst_element_link(videoenc, mux))
+                            DEBUG_INFO("XA_CONTAINERTYPE_WAV");
+                            audioenc = gst_element_factory_make("wavenc", "audioenc");
+                            if(audioenc)
                                 {
-                                    DEBUG_ERR("Could not link videoenc to mux!!");
-                                    DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
+                                if (gst_bin_add(GST_BIN(codecbin), audioenc))
+                                    {
+                                    DEBUG_INFO("added audioenc to codecbin");
+                                    }
+                                else
+                                    {
+                                    DEBUG_ERR("Could not add audioenc to codecbin");
                                     return NULL;
+                                    }
+                                /*use this as linkpoint*/
+                                ghostsrc = gst_element_get_static_pad(audioenc,"src");
+                                ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
+                                if ( ghostsrc == NULL || ghostaudiosink == NULL)
+                                    {
+                                    DEBUG_ERR("Could not get src or sink ghoset element(s)");
+                                    return NULL;
+                                    }
                                 }
-                                ghostvideosink = gst_element_get_static_pad(videoenc,"sink");
-                            }
-                            else
-                            {
-                                /*no video codec but video source = raw video case, request video pad directly from mux*/
-                                ghostvideosink = gst_element_get_request_pad(mux,"video_%d");
-                            }
-                        }
-                        /*set audio defaults*/
-                        if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                        ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_PCM;
-                        if(ctx->xaAudioSource)
-                        {
-                            if(XACapabilitiesMgr_GetCapsById(NULL, (XACapsType)(XACAP_ENCODER|XACAP_AUDIO), ctx->audioEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
-                            {
-                                if(temp.adaptId)
-                                {
-                                    audioenc = gst_element_factory_make((char*)temp.adaptId, "audioenc");
-                                }
-                            }
-                            if(audioenc)
-                            {
-                                gst_bin_add(GST_BIN(codecbin), audioenc);
-                                if(!gst_element_link(audioenc, mux))
-                                {
-                                    DEBUG_ERR("Could not link audioenc to mux!!");
-                                    DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
-                                    return NULL;
-                                }
-                                ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
-                            }
-                            else
-                            {
-                                /*no audio codec but audio source = PCM case, explicity request audio pad*/
-                                ghostaudiosink = gst_element_get_request_pad(mux,"audio_%d");
+                            /* no other codecs needed */
+                            break;
                             }
-                        }
-                        break;
 
-                        case XA_CONTAINERTYPE_WAV:
-                        DEBUG_INFO("XA_CONTAINERTYPE_WAV");
-                        audioenc = gst_element_factory_make("wavenc", "audioenc");
-                        if(audioenc)
-                        {
-                            if (gst_bin_add(GST_BIN(codecbin), audioenc))
+                        case XA_CONTAINERTYPE_UNSPECIFIED:
                             {
-                                DEBUG_INFO("added audioenc to codecbin");
-                            }
-                            else
-                            {
-                                DEBUG_ERR("Could not add audioenc to codecbin");
-                                return NULL;
-                            }
-                            /*use this as linkpoint*/
-                            ghostsrc = gst_element_get_static_pad(audioenc,"src");
-                            ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
-                            if ( ghostsrc == NULL || ghostaudiosink == NULL)
-                            {
-                                DEBUG_ERR("Could not get src or sink ghoset element(s)");
-                                return NULL;
+                            DEBUG_INFO("No support for requested encoder...try to select encoder from mime string");
+                            DEBUG_INFO("No support for requested mime/container type.");
+                            ret = XA_RESULT_CONTENT_UNSUPPORTED;
+                            break;
                             }
-                        }
-                        /* no other codecs needed */
-                        break;
-                        case XA_CONTAINERTYPE_JPG:
-                        /*motion jpeg*/
-                        DEBUG_INFO("XA_CONTAINERTYPE_JPG");
-                        /*set defaults*/
-                        if(ctx->videoEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                        ctx->videoEncSettings.encoderId = XA_ADAPTID_MOTIONJPEG;
-                        if(XACapabilitiesMgr_GetCapsById(NULL, (XACapsType)(XACAP_ENCODER|XACAP_VIDEO), ctx->videoEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
-                        {
-                            videoenc = gst_element_factory_make((char*)temp.adaptId, "videoenc");
-                        }
-                        if(videoenc)
-                        {
-                            gst_bin_add(GST_BIN(codecbin), videoenc);
-                            /*use this as linkpoint*/
-                            ghostsrc = gst_element_get_static_pad(videoenc,"src");
-                            ghostvideosink = gst_element_get_static_pad(videoenc,"sink");
-                        }
-                        /* no other codecs needed */
-                        break;
-                        case XA_CONTAINERTYPE_RAW:
-                        DEBUG_INFO("XA_CONTAINERTYPE_RAW");
-                        /* no need for codec, just pass data on */
-                        if(strncmp((char *)mime->mimeType, "video", 5) == 0 && ctx->xaVideoSource)
-                        {
-                            mux = gst_element_factory_make("identity", "mux");
-                            gst_bin_add(GST_BIN(codecbin), mux);
-                            ghostvideosink = gst_element_get_static_pad(mux,"sink");
-                        }
-                        else if (strncmp((char *)mime->mimeType, "audio", 5) == 0 && ctx->xaAudioSource)
-                        {
-                            mux = gst_element_factory_make("identity", "mux");
-                            gst_bin_add(GST_BIN(codecbin), mux);
-                            ghostaudiosink = gst_element_get_static_pad(mux,"sink");
-                        }
-                        else
-                        {
-                            ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                            DEBUG_ERR("Content mismatch with given sources!!!")
-                        }
-                        ghostsrc = gst_element_get_static_pad(mux,"src");
-                        break;
-                        case XA_CONTAINERTYPE_UNSPECIFIED:
-                        DEBUG_INFO("No support for requested encoder...try to select encoder from mime string");
-                        if(strstr( (char *) mime->mimeType, "/ogg") != 0)
-                        {
-                            DEBUG_INFO("XA_CONTAINERTYPE_UNSPECIFIED - mimetype ogg detected");
-                            mux = gst_element_factory_make("oggmux", "mux");
+                        case XA_CONTAINERTYPE_MP4:
+                            {
+                            DEBUG_INFO("XA_CONTAINERTYPE_MP4");
+                            mux = gst_element_factory_make("mp4mux", "mp4mux");
                             if(mux)
-                            {
-                                gst_bin_add(GST_BIN(codecbin), mux);
+                                {
+                                if (gst_bin_add(GST_BIN(codecbin), mux))
+                                    {
+                                    DEBUG_INFO("Added mux to codecbin");
+                                    }
+                                else
+                                    {
+                                    DEBUG_ERR("Could not add mux to codecbin");
+                                    return NULL;
+                                    }
                                 /*use this as linkpoint*/
                                 ghostsrc = gst_element_get_static_pad(mux,"src");
-                                /*set defaults*/
-                                if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                                {
-                                    ctx->audioEncSettings.encoderId = XA_ADAPTID_VORBIS;
-                                    ctx->audioEncSettings.bitsPerSample=32;
                                 }
-                                if(ctx->videoEncSettings.encoderId == XA_ADAPTID_UNINITED)
+                            /* Add and link audio/video codecs */
+    
+                            /*set audio defaults*/
+                            if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
+                                ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_AAC;
+                            if(ctx->xaAudioSource)
                                 {
-                                    ctx->videoEncSettings.encoderId = XA_ADAPTID_THEORA;
-                                }
-                                if(ctx->xaAudioSource)
-                                {
-                                    if(XACapabilitiesMgr_GetCapsById(NULL, (XACapsType)(XACAP_ENCODER|XACAP_AUDIO), ctx->audioEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
+                                if(XACapabilitiesMgr_GetCapsById(ctx->baseObj.baseObj.capslist, (XACapsType)(XACAP_ENCODER|XACAP_AUDIO), ctx->audioEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
                                     {
-                                        audioenc = gst_element_factory_make((char*)temp.adaptId, "audioenc");
-                                    }
-                                    if(audioenc)
-                                    {
-                                        gst_bin_add(GST_BIN(codecbin), audioenc);
-                                        if(!gst_element_link(audioenc, mux))
+                                    if(temp.adaptId)
                                         {
-                                            DEBUG_ERR("Could not link audioenc to mux!!");
-                                            DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
-                                            return NULL;
+                                        audioenc = gst_element_factory_make((char*)temp.adaptId, "audioenc");
                                         }
-                                        ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
                                     }
-                                }
-                                if(strncmp((char *)mime->mimeType, "video", 5) == 0 && ctx->xaVideoSource)
-                                {
-                                    if(XACapabilitiesMgr_GetCapsById(NULL, (XACapsType)(XACAP_ENCODER|XACAP_VIDEO), ctx->videoEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
+                                if(audioenc)
                                     {
-                                        videoenc = gst_element_factory_make((char*)temp.adaptId, "videoenc");
+                                    gst_bin_add(GST_BIN(codecbin), audioenc);
+                                    if(!gst_element_link(audioenc, mux))
+                                        {
+                                        DEBUG_ERR("Could not link audioenc to mux!!");
+                                        DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
+                                        return NULL;
+                                        }
+                                    ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
                                     }
-                                    if(videoenc)
+                                else
                                     {
-                                        gst_bin_add(GST_BIN(codecbin), videoenc);
-                                        if(!gst_element_link(videoenc, mux))
-                                        {
-                                            DEBUG_ERR("Could not link videoenc to mux!!");
-                                            DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
-                                            return NULL;
-                                        }
-                                        ghostvideosink = gst_element_get_static_pad(videoenc,"sink");
+                                    /*no audio codec but audio source = PCM case, explicity request audio pad*/
+                                    ghostaudiosink = gst_element_get_request_pad(mux,"audio_%d");
                                     }
                                 }
-                            }
-                        }
-                        else
-                        {
-                            DEBUG_INFO("No support for requested mime/container type.");
-                            ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                        }
-                        break;
-                        case XA_CONTAINERTYPE_MOBILE_DLS:
-                        case XA_CONTAINERTYPE_MP4:
-                        DEBUG_INFO("XA_CONTAINERTYPE_MP4");
-                        mux = gst_element_factory_make("mp4mux", "mp4mux");
-                        if(mux)
-                        {
-                            if (gst_bin_add(GST_BIN(codecbin), mux))
-                            {
-                                DEBUG_INFO("Added mux to codecbin");
-                            }
-                            else
-                            {
-                                DEBUG_ERR("Could not add mux to codecbin");
-                                return NULL;
-                            }
-                            /*use this as linkpoint*/
-                            ghostsrc = gst_element_get_static_pad(mux,"src");
-                        }
-                        /* Add and link audio/video codecs */
-                        /*set video defaults*/
-                        if(ctx->videoEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                            ctx->videoEncSettings.encoderId = XA_ADAPTID_MOTIONJPEG;
-                        if(ctx->xaVideoSource)
-                        {
-                            if(XACapabilitiesMgr_GetCapsById(ctx->baseObj.baseObj.capslist, (XACapsType)(XACAP_ENCODER|XACAP_VIDEO), ctx->videoEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
-                            {
-                                if(temp.adaptId)
-                                {
-                                    videoenc = gst_element_factory_make((char*)temp.adaptId, "videoenc");
-                                }
-                            }
-                            if(videoenc)
+                            break;	
+                            }						
+                        case XA_CONTAINERTYPE_AMR:
                             {
-                                gst_bin_add(GST_BIN(codecbin), videoenc);
-                                if(!gst_element_link(videoenc, mux))
-                                {
-                                    DEBUG_ERR("Could not link videoenc to mux!!");
-                                    DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
-                                    return NULL;
-                                }
-                                ghostvideosink = gst_element_get_static_pad(videoenc,"sink");
-                            }
-                            else
-                            {
-                                /*no video codec but video source = raw video case, request video pad directly from mux*/
-                                ghostvideosink = gst_element_get_request_pad(mux,"video_%d");
-                            }
-                        }
-                        /*set audio defaults*/
-                        if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
-                            ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_AAC;
-                        if(ctx->xaAudioSource)
-                        {
-                            if(XACapabilitiesMgr_GetCapsById(ctx->baseObj.baseObj.capslist, (XACapsType)(XACAP_ENCODER|XACAP_AUDIO), ctx->audioEncSettings.encoderId, &temp) == XA_RESULT_SUCCESS)
-                            {
-                                if(temp.adaptId)
-                                {
-                                    audioenc = gst_element_factory_make((char*)temp.adaptId, "audioenc");
-                                }
-                            }
-                            if(audioenc)
-                            {
-//                                GstCaps* caps = gst_caps_new_simple((const char*)mime->mimeType,
-//                                        "mpegversion", G_TYPE_INT, 4,
-//                                        "channels", G_TYPE_INT, 1,
-//                                        "rate", G_TYPE_INT, 16000,
-//                                        NULL);
-                                gst_bin_add(GST_BIN(codecbin), audioenc);
-                                //if(!gst_element_link_filtered(audioenc, mux,caps))
-                                if(!gst_element_link(audioenc, mux))
-                                {
-                                    DEBUG_ERR("Could not link audioenc to mux!!");
-                                    DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
-                                    return NULL;
-                                }
-                                ghostaudiosink = gst_element_get_static_pad(audioenc,"sink");
-                            }
-                            else
-                            {
-                                /*no audio codec but audio source = PCM case, explicity request audio pad*/
-                                ghostaudiosink = gst_element_get_request_pad(mux,"audio_%d");
-                            }
-                        }
-                        break;
-                        case XA_CONTAINERTYPE_AMR:
                             DEBUG_INFO("XA_CONTAINERTYPE_AMR");
                             if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
                                 ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_AMR;
                              mux = gst_element_factory_make("amrmux", "mux");
                              if(mux)
-                             {
+                                 {
                                  if (gst_bin_add(GST_BIN(codecbin), mux))
-                                 {
+                                     {
                                      DEBUG_INFO("Added mux to codecbin");
-                                     /*Setting the buffer size on src since amr generates
+                                     /*Setting the buffer size on src since amr generates 
                                       * small amounts of data */
                                      g_object_set (G_OBJECT (ctx->audiosource),
                                                "blocksize", 1280,
-                                                NULL);
-                                 }
+                                                NULL);                                         
+                                     }
                                  else
-                                 {
+                                     {
                                      DEBUG_ERR("Could not add mux to codecbin");
                                      return NULL;
-                                 }
+                                     }
                                  /*use this as linkpoint*/
                                  ghostsrc = gst_element_get_static_pad(mux,"src");
-                             }
+                                 }
                              /*set audio defaults*/
                              if(ctx->xaAudioSource)
-                             {
+                                 {
                                  /*no audio codec but audio source = PCM case, explicity request audio pad*/
                                  ghostaudiosink = gst_element_get_static_pad(mux,"sink");
-                             }
-                             break;
-                        case XA_CONTAINERTYPE_3GPP:
+                                 }
+                             break;     
+                            }                           
+                        
+/*                        case XA_CONTAINERTYPE_3GPP:
+                        case XA_CONTAINERTYPE_MOBILE_DLS:
                         case XA_CONTAINERTYPE_BMP:
                         case XA_CONTAINERTYPE_ASF:
                         case XA_CONTAINERTYPE_M4A:
@@ -1650,246 +985,63 @@
                         case XA_CONTAINERTYPE_AAC:
                         case XA_CONTAINERTYPE_3GA:
                         case XA_CONTAINERTYPE_RM:
-                        case XA_CONTAINERTYPE_DMF:
+                        case XA_CONTAINERTYPE_DMF:*/
+                            
                         default:
-                        DEBUG_INFO("No support for requested container type.");
-                        ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                        break;
+                            DEBUG_INFO("No support for requested container type.");
+                            ret = XA_RESULT_CONTENT_UNSUPPORTED;
+                            break;
+                        }
+                    break;
                     }
-                    break;
+                default:
+                    DEBUG_ERR("Incorrect data format type.");
+                    ret = XA_RESULT_PARAMETER_INVALID;
+                break;
                 }
-                default:
-                DEBUG_ERR("Incorrect data format type.");
-                ret = XA_RESULT_PARAMETER_INVALID;
-                break;
+            }
+        else
+            {
+            DEBUG_ERR("Invalid data sink for stream recording!!");
+            ret = XA_RESULT_PARAMETER_INVALID;
             }
         }
-        else
-        {
-            DEBUG_ERR("Invalid data sink for stream recording!!");
-            ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    }
     else
-    {/* stream recording not requested, datasink ignored, use uncoded recordstream*/
+        {/* stream recording not requested, datasink ignored, use uncoded recordstream*/
         mux = gst_element_factory_make("identity", "mux");
         gst_bin_add(GST_BIN(codecbin), mux);
         ghostsrc = gst_element_get_static_pad(mux,"src");
-        ghostvideosink = gst_element_get_static_pad(mux,"sink");
-    }
+        }
 
     /*set default codecs for unrecognized*/
     if(ctx->audioEncSettings.encoderId == XA_ADAPTID_UNINITED)
     ctx->audioEncSettings.encoderId = XA_AUDIOCODEC_PCM;
-    if(ctx->imageEncSettings.encoderId == XA_ADAPTID_UNINITED)
-    ctx->imageEncSettings.encoderId = XA_IMAGECODEC_RAW;
-    if(ctx->videoEncSettings.encoderId == XA_ADAPTID_UNINITED)
-    ctx->videoEncSettings.encoderId = XA_ADAPTID_RAWVIDEO;
 
     if ( ret != XA_RESULT_SUCCESS )
-    {
+        {
         gst_object_unref(codecbin);
         codecbin=NULL;
-    }
+        }
     else
-    {
+        {
         /*add ghost pad(s) to link to*/
         if(ghostsrc)
-        {
+            {
             gst_element_add_pad(codecbin, gst_ghost_pad_new("src",ghostsrc));
             gst_object_unref(GST_OBJECT(ghostsrc));
-        }
+            }
         if(ghostaudiosink)
-        {
+            {
             gst_element_add_pad(codecbin, gst_ghost_pad_new("sink",ghostaudiosink));
             gst_object_unref(GST_OBJECT(ghostaudiosink));
+            }
+
+        DEBUG_INFO_A1("Created encoder bin at %x", (int)codecbin);
         }
-        if(ghostvideosink)
-        {
-            gst_element_add_pad(codecbin, gst_ghost_pad_new("v_sink",ghostvideosink));
-            gst_object_unref(GST_OBJECT(ghostvideosink));
-        }
-        DEBUG_INFO_A1("Created encoder bin at %x", (int)codecbin);
-    }
 
     DEBUG_API("<-XAMediaRecorderAdapt_CreateEncodeBin");
     return codecbin;
 
-}
-
-/*
- * void XAMediaRecorderAdapt_BufferAvailable(GstElement* sink, gpointer user_data)
- * called when new buffer is available at appsink
- */
-void XAMediaRecorderAdapt_BufferAvailable(GstElement* sink, gpointer user_data)
-{
-    GstBuffer *buffer=NULL;
-    XAMediaRecorderAdaptationCtx* mCtx = (XAMediaRecorderAdaptationCtx*)user_data;
-    DEBUG_API("->XAMediaRecorderAdapt_BufferAvailable");
-    if(!mCtx || !mCtx->xaSink)
-    {
-        DEBUG_ERR("Invalid context")
-        return;
-    }
-    /* get the buffer */
-    buffer = gst_app_sink_pull_buffer(GST_APP_SINK(sink));
-    if(buffer)
-    {
-        guint size;
-        XADataLocator_Address* address;
-        size = GST_BUFFER_SIZE(buffer);
-        DEBUG_INFO_A1("Pulled new buffer of size %d", size);
-        address = (XADataLocator_Address*)(mCtx->xaSink->pLocator);
-        if( !address || *(XAuint32*)address != XA_DATALOCATOR_ADDRESS )
-        {
-            DEBUG_ERR("Invalid address datalocator")
-            return;
-        }
-
-        if(mCtx->writepos + size < address->length )
-        { /*enough room in buffer*/
-            memcpy(((char*)(address->pAddress) + mCtx->writepos),
-                    GST_BUFFER_DATA (buffer), size);
-            mCtx->writepos+=size;
-        }
-        else
-        { /*not enough room in buffer*/
-            XAAdaptEvent event =
-                {XA_RECORDITFEVENTS, XA_RECORDEVENT_BUFFER_FULL, 0, NULL};
-
-            size = address->length - mCtx->writepos;
-            memcpy(((char*)(address->pAddress) + mCtx->writepos),
-                    GST_BUFFER_DATA (buffer), size);
-            DEBUG_INFO_A1("Buffer insufficient, wrote %d bytes", size);
-            /* send event */
-            XAAdaptationBase_SendAdaptEvents(&(mCtx->baseObj.baseObj), &event);
-            /* "recordhead to start" i.e. reset write position */
-            mCtx->writepos=0;
-            mCtx->recThrCtx.buffer_insufficient = XA_BOOLEAN_TRUE;
-            if ( XAImpl_PostSemaphore( mCtx->recThrCtx.bufInsufficientSem ) != XA_RESULT_SUCCESS)
-            {
-                DEBUG_ERR("Posting buffer-insufficien semaphore FAILED!");
-            }
-        }
-        gst_buffer_unref (buffer);
-    }
-    else
-    {
-        DEBUG_ERR("Could not pull buffer from appsink!");
-    }
-    DEBUG_API("<-XAMediaRecorderAdapt_BufferAvailable");
-}
-
-/*
- * void* XAMediaRecorderAdapt_RecordEventThr( void* ctx )
- */
-void* XAMediaRecorderAdapt_RecordEventThr( void* ctx )
-{
-    XAMediaRecorderAdaptationCtx* mrCtx = (XAMediaRecorderAdaptationCtx*)ctx;
-    GstStateChangeReturn gret;
-    XAresult ret;
-    DEBUG_API("->XAMediaRecorderAdapt_RecordEventThr");
-
-    /* Wait semaphore here */
-    ret = XAImpl_WaitSemaphore( mrCtx->recThrCtx.bufInsufficientSem );
-    if ( ret != XA_RESULT_SUCCESS)
-    {
-        DEBUG_ERR("Could not start semaphore");
-    }
-
-    if(mrCtx->recThrCtx.buffer_insufficient)
-    {
-        mrCtx->baseObj.binWantedState = GST_STATE_PAUSED;
-        XAAdaptationGst_PrepareAsyncWait(&(mrCtx->baseObj));
-        gret = gst_element_set_state( GST_ELEMENT(mrCtx->baseObj.bin), mrCtx->baseObj.binWantedState);
-        if( gret == GST_STATE_CHANGE_ASYNC )
-        {
-            DEBUG_INFO("Start to wait recoder state change.");
-            XAAdaptationGst_StartAsyncWait(&(mrCtx->baseObj));
-            DEBUG_INFO("Recorder state change async. SUCCESFULL.");
-        }
-        else if( gret == GST_STATE_CHANGE_FAILURE )
-        {
-            DEBUG_INFO("Recorder state change FAILED");
-            /*ret = XA_RESULT_INTERNAL_ERROR;*/
-        }
-        else
-        {
-            DEBUG_INFO("Recorder state change SUCCESFULL")
-        }
-
-        mrCtx->baseObj.waitingasyncop= XA_BOOLEAN_FALSE;
-    }
-    DEBUG_API("<-XAMediaRecorderAdapt_RecordEventThr");
-    return NULL;
-}
-
-/*XAresult XAMediaRecorderAdapt_CreateCapsFilter( XAMediaRecorderAdaptationCtx* ctx )
-{
-
-    GstCaps* encSrcCaps = NULL;
-    XADataFormat_MIME *pMime = 0;
-
-    if (!ctx )
-        return XA_RESULT_PARAMETER_INVALID;
-
-    DEBUG_INFO("create capsfilter");
-    ctx->audiofilter = gst_element_factory_make("capsfilter", "audiofilter");
-    if( !ctx->audiofilter )
-    {
-        return XA_RESULT_INTERNAL_ERROR;
-    }
-    //   GstCaps* encSrcCaps; TL
-    if (gst_bin_add(GST_BIN(ctx->baseObj.bin), ctx->audiofilter))
-    {
-        DEBUG_INFO("Added audiofilter to bin");
-    }
-    else
-    {
-        DEBUG_ERR("Could not add audio filter to bin");
-        return XA_RESULT_INTERNAL_ERROR;
-    }
-
-    pMime = (XADataFormat_MIME*) ctx->xaSink->pFormat;
-    if(!strcmp((const char*)pMime->mimeType, "audio/amr"))
-    {
-        encSrcCaps = gst_caps_new_simple ("audio/amr",
-                   "width", G_TYPE_INT, ctx->audioEncSettings.bitsPerSample,
-                   "depth", G_TYPE_INT, ctx->audioEncSettings.bitsPerSample,
-                   "signed",G_TYPE_BOOLEAN, TRUE,
-                   "endianness",G_TYPE_INT, G_BYTE_ORDER,
-                   "rate", G_TYPE_INT,  ctx->audioEncSettings.sampleRate,
-                   "channels", G_TYPE_INT, ctx->audioEncSettings.channelsOut, NULL);
-    }
-    else
-    {
-        encSrcCaps = gst_caps_new_full(
-                gst_structure_new("audio/x-raw-int",
-                  "channels", G_TYPE_INT, ctx->audioEncSettings.channelsOut,
-                  "width", G_TYPE_INT, ctx->audioEncSettings.bitsPerSample,
-                  "width", G_TYPE_INT, ctx->audioEncSettings.bitsPerSample,
-                  "rate", G_TYPE_INT, ctx->audioEncSettings.sampleRate,
-                  "bitrate", G_TYPE_INT, ctx->audioEncSettings.bitRate,
-                  "signed",G_TYPE_BOOLEAN, TRUE,
-                  "endianness",G_TYPE_INT, G_BYTE_ORDER,
-                  NULL),
-                gst_structure_new("audio/x-raw-float",
-                    "channels", G_TYPE_INT, ctx->audioEncSettings.channelsOut,
-                    "width", G_TYPE_INT, ctx->audioEncSettings.bitsPerSample,
-                    "rate", G_TYPE_INT, ctx->audioEncSettings.sampleRate,
-                    "bitrate", G_TYPE_INT, ctx->audioEncSettings.bitRate,
-                    "signed",G_TYPE_BOOLEAN, TRUE,
-                    "endianness",G_TYPE_INT, G_BYTE_ORDER,
-                    NULL),
-                NULL);
-
     }
 
 
-    DEBUG_INFO_A1("audio encoder config from settings: %s",gst_caps_to_string(encSrcCaps));
-    g_object_set( G_OBJECT(ctx->audiofilter), "caps",encSrcCaps,NULL);
-
-    gst_caps_unref(encSrcCaps);
-    return XA_RESULT_SUCCESS;
-}*/
-
--- a/khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xamediarecorderadaptctx.h	Mon Oct 04 00:51:56 2010 +0300
@@ -19,40 +19,10 @@
 #define XAMEDIARECORDERADAPTCTX_H_
 
 #include "xaadaptationgst.h"
-#include "xametadataadaptation.h"
+
 
 /* TYPEDEFS */
 
-typedef struct XASnapshotItfVars_
-    {
-
-    /*User variables*/
-    XAuint32 numpics;
-    XAuint32 fps;
-    XAboolean freeze;
-    gchar* fnametemplate;
-    XADataSink* xaSink;
-
-    /* internal variables */
-    gboolean waitforbuffer;
-    gboolean parsenegotiated;
-    XAuint32 numpicstaken;
-
-    GstBus* ssbus;
-    GstElement* sspipeline;
-    GstElement* ssbuffersrc;
-    GstElement* ssparser;
-    GstElement* ssscaler;
-    GstElement* ssfilter;
-    GstElement* ssencoder;
-    GstElement* sstagger;
-    GstElement* sssink;
-    gulong sighandler;
-
-    GstBuffer* snapshotbuffer;
-
-    } XASnapshotItfVars;
-
 /* context to track buffer insufficient event */
 typedef struct recordItfCtx_
     {
@@ -74,28 +44,28 @@
 
     /* GST elements */
     GstElement *datasink;
-    XAboolean isobjsink; /*is sink another XA object?*/
+    //XAboolean isobjsink; /*is sink another XA object?*/
     GstElement *codecbin;
-    GstElement *audioppbin;
+    //GstElement *audioppbin;
     GstElement *audiofilter;
-    GstElement *videoppbin;
-    GstElement *videofilter;
-    GstElement *videoextract;
+    //GstElement *videoppbin;
+    //GstElement *videofilter;
+    //GstElement *videoextract;
     GstElement *audiosource;
-    GstElement *audioqueue;
-    XAboolean isobjasrc; /*is audio source another XA object?*/
-    GstElement *videosource;
-    GstState vsrcOrigState;
-    GstElement *videoqueue;
-    XAboolean isobjvsrc; /*is video source another XA object?*/
+    //GstElement *audioqueue;
+    //XAboolean isobjasrc; /*is audio source another XA object?*/
+    //GstElement *videosource;
+    //GstState vsrcOrigState;
+    //GstElement *videoqueue;
+    //XAboolean isobjvsrc; /*is video source another XA object?*/
     XAboolean encodingchanged;
 
-    XAboolean mute;
-    XAuint32 imageEffectID;
-    XAboolean isStereoPosition;
+    //XAboolean mute;
+    //XAuint32 imageEffectID;
+    //XAboolean isStereoPosition;
     XAuint32 xaRecordState;
-    XAmillidegree curRotation;
-    XAuint32 curMirror;
+    //XAmillidegree curRotation;
+    //XAuint32 curMirror;
     XAboolean isRecord;
 
     /* internals */
@@ -103,21 +73,21 @@
     gboolean runpositiontimer;
     GSourceFunc positionCb;
 
-    XAImplThreadHandle recordingEventThr;
-    recodtItfCtx recThrCtx;
+    //XAImplThreadHandle recordingEventThr;
+    //recodtItfCtx recThrCtx;
 
     /* Variables for snapshot */
-    XASnapshotItfVars snapshotVars;
+    //XASnapshotItfVars snapshotVars;
 
-    XAMetadataAdaptVars *metadatavars;
+    //XAMetadataAdaptVars *metadatavars;
 
     /* Variables for encoders */
     XAAudioEncoderSettings audioEncSettings;
-    XAVideoSettings videoEncSettings;
-    XAImageSettings imageEncSettings;
+    //XAVideoSettings videoEncSettings;
+    //XAImageSettings imageEncSettings;
 
     /*buffersink variable*/
-    guint64 writepos;
+    //guint64 writepos;
 
     } XAMediaRecorderAdaptationCtx_;
 
@@ -132,6 +102,4 @@
 XAresult XAMediaRecorderAdapt_CheckCodec(XAMediaRecorderAdaptationCtx_* mCtx,
         XACapsType encType, XAuint32 encoderId);
 
-void* XAMediaRecorderAdapt_RecordEventThr(void* ctx);
-
 #endif /* XAMEDIARECORDERADAPTCTX_H_ */
--- a/khronosfws/openmax_al/src/gst_adaptation/xametadataadaptation.c	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1095 +0,0 @@
-/*
-* 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:
-*
-*/
-
-#include <string.h>
-#include <gst/gst.h>
-#include "xaadaptationgst.h"
-
-#include "xamediarecorderadaptctx.h"
-#include "xametadataadaptation.h"
-
-/* forward declarations of internal methods */
-XAMetadataAdaptVars* XAMetadataAdapt_GetMetadataVars(XAAdaptationGstCtx *bCtx);
-GstStructure* XAMetadataAdapt_GetChildStructure(XAMetadataAdaptVars* mdv, XAuint32 index);
-gboolean XAMetadataAdapt_CountTags(GQuark gkey, const GValue *gvalue, gpointer counter);
-void XAMetadataAdapt_ParseTag(const GstTagList* list, const gchar* tag, gpointer listptr);
-gboolean XAMetadataAdapt_ParseItem(GQuark field_id, const GValue * value, gpointer listptr);
-gboolean XAMetadataAdapt_GstTagCb( GstBus *bus, GstMessage *message, gpointer data );
-
-/*NOTE: no way to query these dynamically?*/
-/*supported keys for metadata insertion*/
-static char* xaMetadataAdaptSupportedKeys[] = {
-    KHRONOS_TITLE,
-    KHRONOS_ALBUM,
-    KHRONOS_TRACK_NUMBER,
-    KHRONOS_ARTIST,
-    KHRONOS_GENRE,
-    KHRONOS_COMMENT,
-    KHRONOS_COPYRIGHT,
-    GST_TAG_TITLE,
-    GST_TAG_TITLE_SORTNAME,
-    GST_TAG_ARTIST,
-    GST_TAG_ARTIST_SORTNAME,
-    GST_TAG_ALBUM,
-    GST_TAG_ALBUM_SORTNAME,
-    GST_TAG_COMPOSER,
-    GST_TAG_DATE,
-    GST_TAG_GENRE,
-    GST_TAG_COMMENT,
-    GST_TAG_EXTENDED_COMMENT,
-    GST_TAG_TRACK_NUMBER,
-    GST_TAG_TRACK_COUNT,
-    GST_TAG_ALBUM_VOLUME_NUMBER,
-    GST_TAG_ALBUM_VOLUME_COUNT,
-    GST_TAG_LOCATION,
-    GST_TAG_DESCRIPTION,
-    GST_TAG_VERSION,
-    GST_TAG_ISRC,
-    GST_TAG_ORGANIZATION,
-    GST_TAG_COPYRIGHT,
-    GST_TAG_COPYRIGHT_URI,
-    GST_TAG_CONTACT,
-    GST_TAG_LICENSE,
-    GST_TAG_LICENSE_URI,
-    GST_TAG_PERFORMER,
-    NULL
-};
-
-/******************************************************************************
- * COMMONS
- ******************************************************************************/
-
-
-/* const char* XAMetadataAdapt_ParseKhronosKey(const char* pKKey)
- * Translates Khronos key string to adaptation-specific key string
- * @return Translated key string
- */
-const XAchar* XAMetadataAdapt_ParseKhronosKey(const XAchar* pKKey)
-{
-    const XAchar* newKey;
-    DEBUG_API_A1("->XAMetadataAdapt_ParseKhronosKey: \"%s\"", (char*)pKKey);
-    if( strcmp((char*)pKKey,KHRONOS_TITLE) ==0 ) newKey = (XAchar*)GST_TAG_TITLE;
-    else if( strcmp((char*)pKKey,KHRONOS_ALBUM) ==0 ) newKey = (XAchar*)GST_TAG_ALBUM;
-    else if( strcmp((char*)pKKey,KHRONOS_TRACK_NUMBER) ==0 ) newKey = (XAchar*)GST_TAG_TRACK_NUMBER;
-    else if( strcmp((char*)pKKey,KHRONOS_ARTIST) ==0 ) newKey = (XAchar*)GST_TAG_ARTIST;
-    else if( strcmp((char*)pKKey,KHRONOS_GENRE) ==0 ) newKey = (XAchar*)GST_TAG_GENRE;
-    else if( strcmp((char*)pKKey,KHRONOS_COMMENT) ==0 ) newKey = (XAchar*)GST_TAG_COMMENT;
-    else if( strcmp((char*)pKKey,KHRONOS_COPYRIGHT) ==0 ) newKey = (XAchar*)GST_TAG_COPYRIGHT;
-    else newKey = pKKey;
-/* No Gst keys for following:
-    else if( strcmp(pKKey,KHRONOS_YEAR) ==0 ) newKey = ;
-    else if( strcmp(pKKey,KHRONOS_ARTIST_URL) ==0 ) newKey = ;
-    else if( strcmp(pKKey,KHRONOS_CONTENT_URL) ==0 ) newKey = ;
-    else if( strcmp(pKKey,KHRONOS_RATING) ==0 ) newKey = ;
-    else if( strcmp(pKKey,KHRONOS_ALBUM_ART) ==0 ) newKey = ;
- */
-    DEBUG_API_A1("<-XAMetadataAdapt_ParseKhronosKey: => \"%s\"", (char*)newKey);
-    return newKey;
-}
-
-/* XAresult XAMetadataAdapt_PreInit(XAAdaptationGstCtx *bCtx)
- * Initialize values needed before preroll
- * @return XAresult ret - Success value
- */
-XAresult XAMetadataAdapt_PreInit(XAAdaptationGstCtx *bCtx)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv;
-    DEBUG_API("->XAMetadataAdapt_PreInit");
-
-    if ( bCtx->baseObj.ctxId == XAMediaRecorderAdaptation )
-    {
-        mdv = (XAMetadataAdaptVars*) calloc(1, sizeof(XAMetadataAdaptVars));
-        mdv->currentchild = &(mdv->generaltags);
-        mdv->traversemode=XA_METADATATRAVERSALMODE_NODE;
-        ((XAMediaRecorderAdaptationCtx*)bCtx)->metadatavars = mdv;
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata context!!");
-        ret = XA_RESULT_FEATURE_UNSUPPORTED;
-    }
-
-    if(ret == XA_RESULT_SUCCESS)
-    {
-        if(bCtx->bus)
-        {
-            g_signal_connect(bCtx->bus, "message::tag", G_CALLBACK(XAMetadataAdapt_GstTagCb), bCtx );
-        }
-        else
-        {
-            DEBUG_ERR("No bus in context!!");
-            ret = XA_RESULT_PRECONDITIONS_VIOLATED;
-        }
-    }
-    DEBUG_API_A1("<-XAMetadataAdapt_PreInit (%d)", (int)ret);
-    return ret;
-}
-/* XAresult XAMetadataAdapt_PostInit(XAAdaptationGstCtx *bCtx)
- * Initialize values after preroll
- * @return XAresult ret - Success value
- */
-XAresult XAMetadataAdapt_PostInit(XAAdaptationGstCtx *bCtx)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    DEBUG_API("->XAMetadataAdapt_PostInit");
-    DEBUG_API_A1("<-XAMetadataAdapt_PostInit (%d)", (int)ret);
-    return ret;
-}
-
-/*
- * void XAMetadataAdapt_FreeImplTagList(XAMetadataImplTagList *list, XAboolean freeItems)
- * deallocate elements inside taglist
- */
-void XAMetadataAdapt_FreeImplTagList(XAMetadataImplTagList *list, XAboolean freeItems)
-{
-    XAuint16 i;
-    DEBUG_API("->XAMetadataExtractionItfAdapt_FreeTagList");
-    if(list->mdeKeys)
-    {
-        for(i=0;i<list->itemcount;i++)
-        {
-            if(list->mdeKeys[i])
-            {
-                if(freeItems)
-                    free(list->mdeKeys[i]);
-                list->mdeKeys[i]=NULL;
-            }
-        }
-        free(list->mdeKeys);
-        list->mdeKeys = NULL;
-    }
-    if(list->mdeValues)
-    {
-        for(i=0;i<list->itemcount;i++)
-        {
-            if(list->mdeValues[i])
-            {
-                if(freeItems)
-                    free(list->mdeValues[i]);
-                list->mdeValues[i]=NULL;
-            }
-        }
-        free(list->mdeValues);
-        list->mdeValues = NULL;
-    }
-    list->itemcount = 0;
-    DEBUG_API("<-XAMetadataExtractionItfAdapt_FreeTagList");
-}
-
-/*
- * void XAMetadataAdapt_FreeVars(XAMetadataAdaptVars *vars)
- * deallocate XAMetadataAdaptVars
- */
-void XAMetadataAdapt_FreeVars(XAMetadataAdaptVars *vars)
-{
-    DEBUG_API("->XAMetadataAdapt_FreeVars");
-    if(vars)
-    {
-        if( vars->generaltags )
-        {
-            gst_tag_list_free(vars->generaltags);
-        }
-        if( vars->audiotags )
-        {
-            gst_structure_set_parent_refcount(vars->audiotags,NULL);
-            gst_structure_free(vars->audiotags);
-        }
-        if( vars->videotags )
-        {
-            gst_structure_set_parent_refcount(vars->videotags,NULL);
-            gst_structure_free(vars->videotags);
-        }
-        free(vars);
-    }
-    DEBUG_API("<-XAMetadataAdapt_FreeVars");
-}
-
-/******************************************************************************
- * EXTRACTION
- ******************************************************************************/
-
-/*
- * XAresult XAMetadataExtractionItfAdapt_FillTagList()
- * @param tagList - contains pointer to tag list to be updated
- * @return XAresult ret - Success value
- */
-XAresult XAMetadataExtractionItfAdapt_FillTagList(XAAdaptationGstCtx *bCtx,
-                                                  XAMetadataImplTagList* tagList)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv;
-    XAuint32 newcount = 0;
-    DEBUG_API("->XAMetadataExtractionItfAdapt_FillTagList");
-
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        XAMetadataAdapt_FreeImplTagList(tagList, XA_BOOLEAN_TRUE);
-        /* get number of tags and allocate memory for them */
-        if(mdv->traversemode==XA_METADATATRAVERSALMODE_ALL)
-        {
-            if(mdv->generaltags)
-                gst_structure_foreach(mdv->generaltags, XAMetadataAdapt_CountTags, &newcount);
-            if(mdv->audiotags)
-                gst_structure_foreach(mdv->audiotags, XAMetadataAdapt_CountTags, &newcount);
-            if(mdv->videotags)
-                gst_structure_foreach(mdv->videotags, XAMetadataAdapt_CountTags, &newcount);
-        }
-        else
-        {
-            if(mdv->currentchild && *(mdv->currentchild))
-                gst_structure_foreach(*(mdv->currentchild), XAMetadataAdapt_CountTags, &newcount);
-        }
-        DEBUG_INFO_A1("tag count = %d",(int)newcount)
-        tagList->mdeKeys = (XAMetadataInfo**)calloc(newcount,sizeof(XAMetadataInfo*));
-        tagList->mdeValues = (XAMetadataInfo**)calloc(newcount,sizeof(XAMetadataInfo*));
-
-        /* fill in given tag list */
-        tagList->itemcount = 0;
-        if(mdv->traversemode==XA_METADATATRAVERSALMODE_ALL)
-        {
-            if(mdv->generaltags)
-                gst_tag_list_foreach(mdv->generaltags, XAMetadataAdapt_ParseTag, tagList);
-            if(mdv->audiotags)
-                gst_structure_foreach(mdv->audiotags, XAMetadataAdapt_ParseItem, tagList);
-            if(mdv->videotags)
-                gst_structure_foreach(mdv->videotags, XAMetadataAdapt_ParseItem, tagList);
-        }
-        else
-        {
-            if(mdv->currentchild && *(mdv->currentchild))
-            {
-                if(GST_IS_TAG_LIST(*(mdv->currentchild)))
-                {
-                    gst_tag_list_foreach(*(mdv->currentchild), XAMetadataAdapt_ParseTag, tagList);
-                }
-                else
-                {
-                    gst_structure_foreach(*(mdv->currentchild), XAMetadataAdapt_ParseItem, tagList);
-                }
-            }
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-
-    DEBUG_API_A1("<-XAMetadataExtractionItfAdapt_FillTagList (%d)", (int)ret);
-    return ret;
-}
-
-/******************************************************************************
- * TRAVERSAL
- *****************************************************************************/
-
-/*
- * XAresult XAMetadataTraversalItfAdapt_SetMode(XAAdaptationGstCtx *bCtx, XAuint32 mode)
- */
-XAresult XAMetadataTraversalItfAdapt_SetMode(XAAdaptationGstCtx *bCtx, XAuint32 mode)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-    XAAdaptEvent event = {XA_METADATAEVENTS, XA_ADAPT_MDE_TAGS_AVAILABLE, 0, NULL };
-
-    DEBUG_API("->XAMetadataTraversalItfAdapt_SetMode");
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        mdv->traversemode = mode;
-        /* inform extractor to update tag list */
-        XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
-        if(mdv->traversemode==XA_METADATATRAVERSALMODE_ALL)
-        {
-            mdv->nodedepth = 0;
-            mdv->currentchild = &(mdv->generaltags);
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-
-    DEBUG_API("<-XAMetadataTraversalItfAdapt_SetMode");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataTraversalItfAdapt_GetChildCount(XAAdaptationGstCtx *bCtx, XAuint32 *pCount)
- */
-XAresult XAMetadataTraversalItfAdapt_GetChildCount(XAAdaptationGstCtx *bCtx, XAuint32 *pCount)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-
-    DEBUG_API("->XAMetadataTraversalItfAdapt_GetChildCount");
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        /* only depth of 1 is supported */
-        if( mdv->nodedepth == 0 )
-        {
-            *pCount=mdv->childcount;
-        }
-        else
-        {
-            *pCount=0;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-        *pCount=0;
-    }
-    DEBUG_API_A2("<-XAMetadataTraversalItfAdapt_GetChildCount(%d) count=%d", (int)ret, (int)*pCount);
-    return ret;
-}
-
-/*
- * XAresult XAMetadataTraversalItfAdapt_GetChildMIMETypeSize(XAAdaptationGstCtx *bCtx,
- *                                                         XAuint32 index,
- *                                                         XAuint32 *pSize)
- */
-XAresult XAMetadataTraversalItfAdapt_GetChildMIMETypeSize(XAAdaptationGstCtx *bCtx,
-                                                          XAuint32 index,
-                                                          XAuint32 *pSize)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-
-    DEBUG_API("->XAMetadataTraversalItfAdapt_GetChildMIMETypeSize");
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        GstStructure* child = XAMetadataAdapt_GetChildStructure(mdv,index);
-        if(child)
-        {
-            *pSize = strlen(gst_structure_get_name(child));
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-        *pSize=0;
-    }
-    DEBUG_API("<-XAMetadataTraversalItfAdapt_GetChildMIMETypeSize");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataTraversalItfAdapt_GetChildInfo(XAAdaptationGstCtx *bCtx,
- *                                                  XAuint32 index,
- *                                                 XAint32 *pNodeID,
- *                                                 XAuint32 *pType,
- *                                                 XAuint32 size,
- *                                                 XAchar *pMimeType)
- */
-XAresult XAMetadataTraversalItfAdapt_GetChildInfo(XAAdaptationGstCtx *bCtx,
-                                                  XAuint32 index,
-                                                  XAint32 *pNodeID,
-                                                  XAuint32 *pType,
-                                                  XAuint32 size,
-                                                  XAchar *pMimeType)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-    const gchar* mime;
-    GstStructure* child;
-
-    DEBUG_API("->XAMetadataTraversalItfAdapt_GetChildInfo");
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        child = XAMetadataAdapt_GetChildStructure(mdv,index);
-        if(child)
-        {
-            *pNodeID = (XAint32)child;
-            mime = gst_structure_get_name(child);
-            if(strncmp(mime,"audio",5)==0)
-            {
-                *pType = XA_NODETYPE_AUDIO;
-            }
-            if(strncmp(mime,"video",5)==0)
-            {
-                *pType = XA_NODETYPE_VIDEO;
-            }
-            if(strncmp(mime,"image",5)==0)
-            {
-                *pType = XA_NODETYPE_IMAGE;
-            }
-            else
-            {
-                *pType = XA_NODETYPE_UNSPECIFIED;
-            }
-            strncpy((char*)pMimeType,mime,size);
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataTraversalItfAdapt_GetChildInfo");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataTraversalItfAdapt_SetActiveNode(XAAdaptationGstCtx *bCtx,
- *                                                  XAuint32 index)
- */
-XAresult XAMetadataTraversalItfAdapt_SetActiveNode(XAAdaptationGstCtx *bCtx,
-                                                   XAuint32 index)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-    GstStructure* child;
-
-    DEBUG_API("->XAMetadataTraversalItfAdapt_SetActiveNode");
-    mdv = XAMetadataAdapt_GetMetadataVars(bCtx);
-    if( mdv )
-    {
-        child = XAMetadataAdapt_GetChildStructure(mdv,index);
-        if(child)
-        {
-            mdv->currentchild = &child;
-            if(index==XA_NODE_PARENT) mdv->nodedepth--;
-            else mdv->nodedepth++;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Metadata variables not found!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataTraversalItfAdapt_SetActiveNode");
-    return ret;
-}
-
-/*****************************************************************************
- * INSERTION
- *****************************************************************************/
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_CreateChildNode(XAAdaptationGstCtx *bCtx,
- *                                                   XAint32 parentNodeID,
- *                                                   XAuint32 type,
- *                                                   XAchar *mimeType,
- *                                                   XAint32 *pChildNodeID)
- */
-XAresult XAMetadataInsertionItfAdapt_CreateChildNode(XAAdaptationGstCtx *bCtx,
-                                                    XAint32 parentNodeID,
-                                                    XAuint32 type,
-                                                    XAchar *mimeType,
-                                                    XAint32 *pChildNodeID)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-    XAMediaRecorderAdaptationCtx* mCtx;
-
-    DEBUG_API("->XAMetadataInsertionItfAdapt_CreateChildNode");
-    if(bCtx && bCtx->baseObj.ctxId == XAMediaRecorderAdaptation)
-    {
-        /* no support for more than 1 levels of childs*/
-        if(parentNodeID==XA_ROOT_NODE_ID)
-        {
-            XAMediaType mediaType;
-            mCtx = (XAMediaRecorderAdaptationCtx*)bCtx;
-
-            /* first check sink type */
-            XACommon_CheckDataSource((XADataSource*)(mCtx->xaSink),&mediaType);
-            if( ((mediaType==XA_MEDIATYPE_AUDIO||mediaType==XA_MEDIATYPE_VIDEO) && type==XA_NODETYPE_IMAGE) ||
-                (mediaType==XA_MEDIATYPE_IMAGE && (type==XA_NODETYPE_AUDIO || type==XA_NODETYPE_VIDEO)) )
-            {
-                DEBUG_ERR("Nodetype not supported!");
-                ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                DEBUG_API_A1("<-XAMetadataInsertionItfAdapt_CreateChildNode (%d)", (int)ret);
-                return ret;
-            }
-
-            mdv = mCtx->metadatavars;
-            if(!mdv)
-            {
-                DEBUG_ERR("Metadata variables not initialized!");
-                ret = XA_RESULT_PRECONDITIONS_VIOLATED;
-                return ret;
-            }
-
-            switch(type)
-            {
-            case XA_NODETYPE_IMAGE:
-                /*fall-through to use video pipe tags for image*/
-            case XA_NODETYPE_VIDEO:
-                if(!mCtx->videosource)
-                {
-                    DEBUG_ERR("Nodetype not found!");
-                    ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                }
-                else
-                {
-                    if(!mdv->videotags)
-                    {
-                        if(strlen((char*)mimeType)==0)
-                        {
-                            mdv->videotags = gst_structure_empty_new("video/unknown");
-                        }
-                        else
-                        {
-                            mdv->videotags = gst_structure_empty_new((gchar*)mimeType);
-                        }
-                    }
-                    *pChildNodeID = (XAint32)mdv->videotags;
-                }
-                break;
-            case XA_NODETYPE_AUDIO:
-                if(!mCtx->audiosource)
-                {
-                    DEBUG_ERR("Nodetype not found!");
-                    ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                }
-                else
-                {
-                    if(!mdv->audiotags)
-                    {
-                        if(strlen((char*)mimeType)==0)
-                        {
-                            mdv->audiotags = gst_structure_empty_new("audio/unknown");
-                        }
-                        else
-                        {
-                            mdv->audiotags = gst_structure_empty_new((gchar*)mimeType);
-                        }
-                    }
-                    *pChildNodeID = (XAint32)mdv->audiotags;
-                }
-                break;
-            default:
-                DEBUG_ERR("Nodetype not found!");
-                ret = XA_RESULT_CONTENT_UNSUPPORTED;
-                break;
-            }
-        }
-        else
-        {
-            DEBUG_ERR("Only root childs supported!!");
-            ret = XA_RESULT_CONTENT_UNSUPPORTED;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata insertion context!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API_A1("<-XAMetadataInsertionItfAdapt_CreateChildNode (%d)", (int)ret);
-    return ret;
-}
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_GetSupportedKeysCount(XAAdaptationGstCtx *bCtx,
- *                                                         XAint32 nodeID,
- *                                                         XAboolean *pFreeKeys,
- *                                                         XAuint32 *pKeyCount,
- *                                                         XAuint32 *pEncodingCount)
- */
-XAresult XAMetadataInsertionItfAdapt_GetSupportedKeysCount(XAAdaptationGstCtx *bCtx,
-                                                          XAint32 nodeID,
-                                                          XAboolean *pFreeKeys,
-                                                          XAuint32 *pKeyCount,
-                                                          XAuint32 *pEncodingCount)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfAdapt_GetSupportedKeysCount");
-    if(bCtx && bCtx->baseObj.ctxId == XAMediaRecorderAdaptation)
-    {
-        *pKeyCount = 0;
-        *pFreeKeys = XA_BOOLEAN_FALSE;
-        while(xaMetadataAdaptSupportedKeys[*pKeyCount])
-        {
-            (*pKeyCount)++;
-        }
-        *pEncodingCount = 1;
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata insertion context!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataInsertionItfAdapt_GetSupportedKeysCount");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_GetKeySize(XAAdaptationGstCtx *bCtx,
- *                                              XAint32 nodeID,
- *                                              XAuint32 keyIndex,
- *                                              XAuint32 *pKeySize)
- */
-XAresult XAMetadataInsertionItfAdapt_GetKeySize(XAAdaptationGstCtx *bCtx,
-                                               XAint32 nodeID,
-                                               XAuint32 keyIndex,
-                                               XAuint32 *pKeySize)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfAdapt_GetKeySize");
-    if(bCtx && bCtx->baseObj.ctxId == XAMediaRecorderAdaptation)
-    {
-        if(xaMetadataAdaptSupportedKeys[keyIndex])
-        {
-            *pKeySize = sizeof(XAMetadataInfo)+strlen(xaMetadataAdaptSupportedKeys[keyIndex]);
-        }
-        else
-        {
-            ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata insertion context!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataInsertionItfAdapt_GetKeySize");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_GetKey(XAAdaptationGstCtx *bCtx,
- *                                          XAint32 nodeID,
- *                                          XAuint32 keyIndex,
- *                                          XAuint32 keySize,
- *                                          XAMetadataInfo *pKey)
- */
-XAresult XAMetadataInsertionItfAdapt_GetKey(XAAdaptationGstCtx *bCtx,
-                                           XAint32 nodeID,
-                                           XAuint32 keyIndex,
-                                           XAuint32 keySize,
-                                           XAMetadataInfo *pKey)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAuint32 datasize, neededsize;
-
-    DEBUG_API("->XAMetadataInsertionItfAdapt_GetKey");
-    if(bCtx && bCtx->baseObj.ctxId == XAMediaRecorderAdaptation)
-    {
-        memset(pKey,0,keySize);
-        if(xaMetadataAdaptSupportedKeys[keyIndex] && (keySize > sizeof(XAMetadataInfo)))
-        {
-            neededsize = strlen(xaMetadataAdaptSupportedKeys[keyIndex])+1;
-            datasize = keySize-sizeof(XAMetadataInfo)+1;
-            if(neededsize>datasize)
-            {
-                strncpy((char*)pKey->data,xaMetadataAdaptSupportedKeys[keyIndex],datasize);
-                pKey->size=datasize;
-                ret=XA_RESULT_BUFFER_INSUFFICIENT;
-            }
-            else
-            {
-                strncpy((char*)pKey->data,xaMetadataAdaptSupportedKeys[keyIndex],neededsize);
-                pKey->size=neededsize;
-            }
-            pKey->encoding = XA_CHARACTERENCODING_ASCII;
-            strcpy((char*)(pKey->langCountry),"en");
-        }
-        else
-        {
-            ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata insertion context!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataInsertionItfAdapt_GetKey");
-    return ret;
-}
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_GetFreeKeysEncoding(XAAdaptationGstCtx *bCtx,
- *                                                       XAint32 nodeID,
- *                                                       XAuint32 encodingIndex,
- *                                                       XAuint32 *pEncoding)
- */
-XAresult XAMetadataInsertionItfAdapt_GetFreeKeysEncoding(XAAdaptationGstCtx *bCtx,
-                                                        XAint32 nodeID,
-                                                        XAuint32 encodingIndex,
-                                                        XAuint32 *pEncoding)
-{
-    DEBUG_API("->XAMetadataInsertionItfAdapt_GetFreeKeysEncoding");
-    DEBUG_API("<-XAMetadataInsertionItfAdapt_GetFreeKeysEncoding");
-    /* no free keys*/
-    return XA_RESULT_PRECONDITIONS_VIOLATED;
-}
-
-/*
- * XAresult XAMetadataInsertionItfAdapt_InsertMetadataItem(XAAdaptationGstCtx *bCtx,
- *                                                      XAint32 nodeID,
- *                                                      XAMetadataInfo *pKey,
- *                                                      XAMetadataInfo *pValue,
- *                                                      XAboolean overwrite)
- */
-XAresult XAMetadataInsertionItfAdapt_InsertMetadataItem(XAAdaptationGstCtx *bCtx,
-                                                       XAint32 nodeID,
-                                                       XAMetadataInfo *pKey,
-                                                       XAMetadataInfo *pValue,
-                                                       XAboolean overwrite)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    XAMetadataAdaptVars* mdv=NULL;
-    XAMediaRecorderAdaptationCtx* mCtx;
-    GstTagMergeMode mode = (overwrite?GST_TAG_MERGE_REPLACE:GST_TAG_MERGE_KEEP);
-    gchar* parsedKey = (gchar*)XAMetadataAdapt_ParseKhronosKey((XAchar*)pKey->data);
-    DEBUG_API("->XAMetadataInsertionItfAdapt_InsertMetadataItem");
-    if(bCtx && bCtx->baseObj.ctxId == XAMediaRecorderAdaptation)
-    {
-        mCtx = (XAMediaRecorderAdaptationCtx*)bCtx;
-        mdv = mCtx->metadatavars;
-        if(mdv)
-        {
-            if( nodeID==XA_ROOT_NODE_ID )
-            {
-                if(!mdv->generaltags)
-                {
-                    mdv->generaltags = gst_tag_list_new();
-                }
-                if (gst_tag_get_type (parsedKey) == G_TYPE_STRING)
-                {
-                    gst_tag_list_add(mdv->generaltags, mode, parsedKey, (gchar*)pValue->data, NULL );
-                }
-                else
-                {
-                    gst_tag_list_add(mdv->generaltags, mode, parsedKey, atoi((gchar*)pValue->data), NULL );
-                }
-            }
-            else
-            {
-                if(nodeID == (XAint32)mdv->audiotags || nodeID == (XAint32)mdv->videotags)
-                {
-                    if (gst_tag_get_type (parsedKey) == G_TYPE_STRING)
-                    {
-                        gst_structure_set((GstStructure*)nodeID, parsedKey, G_TYPE_STRING, g_strdup((gchar*)pValue->data), NULL );
-                    }
-                    else
-                    {
-                        gst_structure_set((GstStructure*)nodeID, parsedKey, gst_tag_get_type (parsedKey), atoi((gchar*)pValue->data), NULL );
-                    }
-                }
-                else
-                {
-                    DEBUG_ERR("Unknown node!!");
-                    ret = XA_RESULT_PARAMETER_INVALID;
-                }
-            }
-            if( ret == XA_RESULT_SUCCESS )
-            {   /* let (possible) extraction itf to know new tags  */
-                XAAdaptEvent event = {XA_METADATAEVENTS, XA_ADAPT_MDE_TAGS_AVAILABLE, 0, NULL };
-                XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
-            }
-        }
-        else
-        {
-            DEBUG_ERR("Metadata not initialized!!");
-            ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    }
-    else
-    {
-        DEBUG_ERR("Unsupported metadata insertion context!!");
-        ret = XA_RESULT_PARAMETER_INVALID;
-    }
-    DEBUG_API("<-XAMetadataInsertionItfAdapt_InsertMetadataItem");
-    return ret;
-}
-
-/*****************************************************************************
- * INTERNALS
- *****************************************************************************/
-
-
-/*
- * GstStructure* XAMetadataAdapt_GetChildStructure(XAMetadataAdaptVars* mdv, XAuint32 index)
- * helper to get gst structure corresponding to child index
- */
-GstStructure* XAMetadataAdapt_GetChildStructure(XAMetadataAdaptVars* mdv, XAuint32 index)
-{
-    if(mdv->nodedepth == 0)
-    {   /*root childs, if existent, the order is 1)video 2)audio*/
-        if (index==0)
-        {
-            if(mdv->videotags) return mdv->videotags;
-            else if (mdv->audiotags) return mdv->audiotags;
-        }
-        else if (index==1)
-        {
-            if (mdv->audiotags) return mdv->audiotags;
-        }
-    }
-    else
-    {
-        if(index==XA_NODE_PARENT)
-        {
-            return GST_STRUCTURE(mdv->generaltags);
-        }
-    }
-    /*else*/
-    return NULL;
-}
-
-/*
- * XAMetadataAdaptVars* XAMetadataAdapt_GetMetadataVars(XAAdaptationGstCtx *bCtx)
- * Return metadata variables from different types of context
- */
-XAMetadataAdaptVars* XAMetadataAdapt_GetMetadataVars(XAAdaptationGstCtx *bCtx)
-{
-
-    if( bCtx->baseObj.ctxId == XAMediaRecorderAdaptation )
-    {
-        return ((XAMediaRecorderAdaptationCtx*)bCtx)->metadatavars;
-    }
-    else
-    {
-        DEBUG_ERR("Invalid context for metadata");
-        return NULL;
-    }
-}
-
-/*
- * gboolean XAMetadataAdapt_CountTags(GQuark field_id, const GValue* value, gpointer counter)
- * GstStructureForeachFunc to count number of items inside list
- */
-gboolean XAMetadataAdapt_CountTags(GQuark field_id, const GValue* value, gpointer counter)
-{
-    XAuint32* cnt = (XAuint32*)counter;
-    (*cnt)++;
-    return TRUE;
-}
-
-/*
- * void XAMetadataAdapt_ParseTag(const GstTagList* list, const gchar* tag, gpointer listptr)
- * GstTaglistForeachFunc to parse items inside gsttaglist
- */
-void XAMetadataAdapt_ParseTag(const GstTagList* list, const gchar* tag, gpointer listptr)
-{
-    XAMetadataImplTagList* tagList = (XAMetadataImplTagList*)listptr;
-    const gchar *key;
-    gchar *value;
-    guint32 keylen, valuelen;
-
-    DEBUG_API("->XAMetadataAdapt_ParseTag");
-    key = gst_tag_get_nick(tag);
-    /*include null-terminator*/
-    keylen = strlen(key)+1;
-    tagList->mdeKeys[tagList->itemcount] = (XAMetadataInfo*)calloc(1,keylen+sizeof(XAMetadataInfo));
-    tagList->mdeKeys[tagList->itemcount]->size = keylen;
-    strncpy((char*)tagList->mdeKeys[tagList->itemcount]->data,key,keylen-1);
-
-    if (gst_tag_get_type (tag) == G_TYPE_STRING)
-    {
-        gst_tag_list_get_string_index(list, tag, 0, &value);
-    }
-    else
-    {
-        value = g_strdup_value_contents (gst_tag_list_get_value_index (list, tag, 0));
-    }
-    /*include null-terminator*/
-    valuelen = strlen(value)+1;
-    tagList->mdeValues[tagList->itemcount] = (XAMetadataInfo*)calloc(1,valuelen+sizeof(XAMetadataInfo));
-    tagList->mdeValues[tagList->itemcount]->size = valuelen;
-    strncpy((char*)tagList->mdeValues[tagList->itemcount]->data,value,valuelen-1);
-
-    /* NOTE: for now, encoding and language fixed */
-    tagList->mdeKeys[tagList->itemcount]->encoding = XA_CHARACTERENCODING_ASCII;
-    tagList->mdeValues[tagList->itemcount]->encoding = XA_CHARACTERENCODING_ASCII;
-    strcpy((char*)tagList->mdeKeys[tagList->itemcount]->langCountry,"en");
-    strcpy((char*)tagList->mdeValues[tagList->itemcount]->langCountry,"en");
-    tagList->itemcount++;
-    DEBUG_API_A2("<-XAMetadataAdapt_ParseTag: added %s : %s",
-                 tagList->mdeKeys[tagList->itemcount-1]->data,
-                 tagList->mdeValues[tagList->itemcount-1]->data);
-}
-
-/*
- * gboolean XAMetadataAdapt_ParseItem(GQuark gkey,
- *                                const GValue* gvalue,
- *                                gpointer listptr)
- * GstStructureForeachFunc to parse items inside caps structure
- */
-gboolean XAMetadataAdapt_ParseItem(GQuark gkey,
-                                 const GValue* gvalue,
-                                 gpointer listptr)
-{
-    XAMetadataImplTagList* tagList = (XAMetadataImplTagList*)listptr;
-    const gchar *key;
-    gchar *value;
-    guint32 keylen, valuelen;
-
-    DEBUG_API("->XAMetadataAdapt_ParseItem");
-    key = g_quark_to_string(gkey);
-    /*include null-terminator*/
-    keylen = strlen(key)+1;
-    tagList->mdeKeys[tagList->itemcount] = (XAMetadataInfo*)calloc(1,keylen+sizeof(XAMetadataInfo));
-    tagList->mdeKeys[tagList->itemcount]->size = keylen;
-    strncpy((char*)tagList->mdeKeys[tagList->itemcount]->data,key,keylen-1);
-
-    value = gst_value_serialize(gvalue);
-    /*include null-terminator*/
-    valuelen = strlen(value)+1;
-    tagList->mdeValues[tagList->itemcount] = (XAMetadataInfo*)calloc(1,valuelen+sizeof(XAMetadataInfo));
-    tagList->mdeValues[tagList->itemcount]->size = valuelen;
-    strncpy((char*)tagList->mdeValues[tagList->itemcount]->data,value,valuelen-1);
-
-    /* for Gst, encoding and language fixed */
-    tagList->mdeKeys[tagList->itemcount]->encoding = XA_CHARACTERENCODING_ASCII;
-    tagList->mdeValues[tagList->itemcount]->encoding = XA_CHARACTERENCODING_ASCII;
-    strcpy((char*)tagList->mdeKeys[tagList->itemcount]->langCountry,"en");
-    strcpy((char*)tagList->mdeValues[tagList->itemcount]->langCountry,"en");
-    tagList->itemcount++;
-    DEBUG_API_A2("<-XAMetadataAdapt_ParseItem: added %15s : %s",
-                 tagList->mdeKeys[tagList->itemcount-1]->data,
-                 tagList->mdeValues[tagList->itemcount-1]->data);
-    return TRUE;
-}
-
-/*
- * gboolean XAMetadataAdapt_GstTagCb( GstBus *bus, GstMessage *message, gpointer data )
- * Metadata callback - called when new tags found from stream
- */
-gboolean XAMetadataAdapt_GstTagCb( GstBus *bus, GstMessage *message, gpointer data )
-{
-    GstTagList *new_tags;
-    GstTagList **old_tags = NULL;
-    XAAdaptationGstCtx* bCtx;
-    GstTagMergeMode mode;
-
-    bCtx = (XAAdaptationGstCtx*)data;
-    if(GST_MESSAGE_TAG==GST_MESSAGE_TYPE(message))
-    {
-        DEBUG_API_A2("->XAMetadataAdapt_GstTagCb:\"%s\" from object \"%s\"",
-                        GST_MESSAGE_TYPE_NAME(message), GST_OBJECT_NAME(GST_MESSAGE_SRC(message)));
-        gst_message_parse_tag (message, &new_tags);
-        /* NOTE: only general tags received this way (not child nodes)*/
-
-        if( bCtx->baseObj.ctxId == XAMediaRecorderAdaptation )
-        {
-            old_tags = &((XAMediaRecorderAdaptationCtx*)bCtx)->metadatavars->generaltags;
-            /* keep user's tags */
-            mode = GST_TAG_MERGE_KEEP;
-        }
-        else
-        {   /*context not applicable*/
-            return TRUE;
-        }
-
-        if( *old_tags )
-            *old_tags = gst_tag_list_merge (*old_tags, new_tags, mode);
-        else
-            *old_tags = new_tags;
-
-        if( GST_STATE(bCtx->bin)==GST_STATE_PLAYING )
-        {   /* send event only for live stream, otherwise wait for preroll to complete */
-            XAAdaptEvent event = {XA_METADATAEVENTS, XA_ADAPT_MDE_TAGS_AVAILABLE, 0, NULL };
-            XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &event );
-        }
-        DEBUG_API("<-XAMetadataAdapt_GstTagCb");
-    }
-    return TRUE;
-}
-
-/*
- * void XAMetadataAdapt_TryWriteTag(const GstTagList* list, const gchar* tag, gpointer taggerptr)
- * GstTaglistForeachFunc to write single tag entries to stream
- */
-void XAMetadataAdapt_TryWriteTag(const GstTagList* list, const gchar* tag, gpointer taggerptr)
-{
-    GstTagSetter* tagger = (GstTagSetter*)taggerptr;
-    const gchar *key;
-    gchar *value;
-
-    DEBUG_API("->XAMetadataAdapt_ParseTag");
-    key = gst_tag_get_nick(tag);
-    if (gst_tag_get_type (tag) == G_TYPE_STRING)
-    {
-        gst_tag_list_get_string_index(list, tag, 0, &value);
-    }
-    else
-    {
-        value = g_strdup_value_contents (gst_tag_list_get_value_index (list, tag, 0));
-    }
-    gst_tag_setter_add_tags(tagger, GST_TAG_MERGE_REPLACE, key, value, NULL);
-}
-
-/*
- * XAresult XAMetadataAdapt_TryWriteTags(XAAdaptationGstCtx* bCtx, GstBin* binToWriteTo)
- */
-XAresult XAMetadataAdapt_TryWriteTags(XAAdaptationGstCtx* bCtx, GstBin* binToWriteTo)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-    GstTagSetter *tagger=NULL;
-    /* Find metadata tagger from bin (if any) */
-    GstIterator *iter = gst_bin_iterate_all_by_interface( binToWriteTo, GST_TYPE_TAG_SETTER );
-    gboolean done = FALSE;
-    XAMediaRecorderAdaptationCtx* mCtx;
-    XAAdaptEvent mdevent = {XA_METADATAEVENTS, XA_ADAPT_MDE_TAGS_WRITTEN, 0, NULL };
-
-    DEBUG_API("->XAMetadataAdapt_TryWriteTags");
-
-    if( bCtx->baseObj.ctxId != XAMediaRecorderAdaptation )
-    {
-        return XA_RESULT_FEATURE_UNSUPPORTED;
-    }
-    mCtx = ((XAMediaRecorderAdaptationCtx*)bCtx);
-    while (!done)
-    {
-        switch (gst_iterator_next(iter, (gpointer)&tagger))
-        {
-        case GST_ITERATOR_OK:
-            if(mCtx->metadatavars)
-            {
-                if(mCtx->metadatavars->generaltags)
-                {
-                    gst_tag_setter_merge_tags(tagger, mCtx->metadatavars->generaltags, GST_TAG_MERGE_REPLACE);
-                }
-            }
-            done = TRUE;
-        break;
-        case GST_ITERATOR_ERROR:
-            done = TRUE;
-            DEBUG_ERR("Pipeline does not support tag setting");
-            ret = XA_RESULT_CONTENT_UNSUPPORTED;
-        break;
-        case GST_ITERATOR_DONE:
-            done = TRUE;
-            DEBUG_ERR("Pipeline does not support tag setting");
-            ret = XA_RESULT_CONTENT_UNSUPPORTED;
-        break;
-        case GST_ITERATOR_RESYNC:
-            gst_iterator_resync(iter);
-        break;
-        }
-    }
-    /*here datasize field is used for return value*/
-    mdevent.datasize = ret;
-    XAAdaptationBase_SendAdaptEvents(&bCtx->baseObj, &mdevent );
-    gst_iterator_free (iter);
-    DEBUG_API("<-XAMetadataAdapt_TryWriteTags");
-    return ret;
-}
--- a/khronosfws/openmax_al/src/gst_adaptation/xametadataadaptation.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#ifndef XAMETADATAADAPTATION_H
-#define XAMETADATAADAPTATION_H
-
-#include "xaadaptationgst.h"
-
-
-/* FUNCTIONS */
-typedef struct XAMetadataImplTagList
-{
-    XAuint32         itemcount; /* number of items in all three following arrays */
-    XAMetadataInfo** mdeKeys;   /* array of tag keys */
-    XAMetadataInfo** mdeValues; /* array of tag values */
-} XAMetadataImplTagList;
-
-
-typedef struct XAMetadataAdaptVars_
-{
-
-    XAuint32        childcount;
-    XAuint32        nodedepth;
-    XAuint32        traversemode;
-
-    GstTagList*     generaltags;
-    GstStructure*   audiotags;
-    GstStructure*   videotags;
-    GstStructure**   currentchild; /*points to one of previous 3*/
-
-} XAMetadataAdaptVars;
-
-XAresult XAMetadataAdapt_PreInit(XAAdaptationGstCtx *bCtx);
-XAresult XAMetadataAdapt_PostInit(XAAdaptationGstCtx *bCtx);
-const XAchar* XAMetadataAdapt_ParseKhronosKey(const XAchar* KKey);
-void XAMetadataAdapt_FreeImplTagList(XAMetadataImplTagList *list, XAboolean freeItems);
-void XAMetadataAdapt_FreeVars(XAMetadataAdaptVars *vars);
-XAresult XAMetadataAdapt_TryWriteTags(XAAdaptationGstCtx* bCtx, GstBin* binToWriteTo);
-
-XAresult XAMetadataExtractionItfAdapt_FillTagList(XAAdaptationGstCtx *bCtx,
-                                                  XAMetadataImplTagList* tagList);
-
-
-XAresult XAMetadataTraversalItfAdapt_SetMode(XAAdaptationGstCtx *bCtx, XAuint32 mode);
-XAresult XAMetadataTraversalItfAdapt_GetChildCount(XAAdaptationGstCtx *bCtx, XAuint32 *pCount);
-XAresult XAMetadataTraversalItfAdapt_GetChildMIMETypeSize(XAAdaptationGstCtx *bCtx,
-                                                          XAuint32 index,
-                                                          XAuint32 *pSize);
-XAresult XAMetadataTraversalItfAdapt_GetChildInfo(XAAdaptationGstCtx *bCtx,
-                                                  XAuint32 index,
-                                                  XAint32 *pNodeID,
-                                                  XAuint32 *pType,
-                                                  XAuint32 size,
-                                                  XAchar *pMimeType);
-XAresult XAMetadataTraversalItfAdapt_SetActiveNode(XAAdaptationGstCtx *bCtx,
-                                                   XAuint32 index);
-
-XAresult XAMetadataInsertionItfAdapt_CreateChildNode(XAAdaptationGstCtx *bCtx,
-                                                    XAint32 parentNodeID,
-                                                    XAuint32 type,
-                                                    XAchar *mimeType,
-                                                    XAint32 *pChildNodeID);
-XAresult XAMetadataInsertionItfAdapt_GetSupportedKeysCount(XAAdaptationGstCtx *bCtx,
-                                                          XAint32 nodeID,
-                                                          XAboolean *pFreeKeys,
-                                                          XAuint32 *pKeyCount,
-                                                          XAuint32 *pEncodingCount);
-XAresult XAMetadataInsertionItfAdapt_GetKeySize(XAAdaptationGstCtx *bCtx,
-                                               XAint32 nodeID,
-                                               XAuint32 keyIndex,
-                                               XAuint32 *pKeySize);
-XAresult XAMetadataInsertionItfAdapt_GetKey(XAAdaptationGstCtx *bCtx,
-                                           XAint32 nodeID,
-                                           XAuint32 keyIndex,
-                                           XAuint32 keySize,
-                                           XAMetadataInfo *pKey);
-XAresult XAMetadataInsertionItfAdapt_GetFreeKeysEncoding(XAAdaptationGstCtx *bCtx,
-                                                        XAint32 nodeID,
-                                                        XAuint32 encodingIndex,
-                                                        XAuint32 *pEncoding);
-XAresult XAMetadataInsertionItfAdapt_InsertMetadataItem(XAAdaptationGstCtx *bCtx,
-                                                       XAint32 nodeID,
-                                                       XAMetadataInfo *pKey,
-                                                       XAMetadataInfo *pValue,
-                                                       XAboolean overwrite);
-#endif /* XAMETADATAADAPTATION_H */
--- a/khronosfws/openmax_al/src/gst_adaptation/xarecorditfadaptation.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/gst_adaptation/xarecorditfadaptation.c	Mon Oct 04 00:51:56 2010 +0300
@@ -40,8 +40,7 @@
     XAboolean requestStateChange = XA_BOOLEAN_FALSE;
     GstStateChangeReturn gstRet = GST_STATE_CHANGE_SUCCESS;
     XAMediaRecorderAdaptationCtx* mCtx = NULL;
-    XAboolean recording = XA_BOOLEAN_FALSE;
-    DEBUG_API_A1("->XARecordItfAdapt_SetRecordState %s",RECORDSTATENAME(state));
+    DEBUG_API_A1_STR("->XARecordItfAdapt_SetRecordState %s",RECORDSTATENAME(state));
     if (!bCtx || bCtx->baseObj.ctxId != XAMediaRecorderAdaptation)
         {
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
@@ -51,19 +50,19 @@
 
     mCtx = (XAMediaRecorderAdaptationCtx*) bCtx;
 
-    mCtx->isRecord = XA_BOOLEAN_TRUE;
-
     switch (state)
         {
         case XA_RECORDSTATE_STOPPED:
             {
             // Audio sourse should be stopped 
-            if (mCtx->audiosource)
+            if (!bCtx->busError && mCtx->audiosource && mCtx->isRecord == XA_BOOLEAN_TRUE)
                 {
+                XAAdaptationGst_PrepareAsyncWait(bCtx);
                 if (gst_element_send_event(mCtx->audiosource,
                         gst_event_new_eos()) == TRUE)
                     {
                     DEBUG_INFO ("posted eos");
+                    XAAdaptationGst_StartAsyncWait(bCtx);
                     }
                 else
                     {
@@ -71,7 +70,7 @@
                     }
                 }
 
-            bCtx->binWantedState = GST_STATE_PAUSED;
+            bCtx->binWantedState = GST_STATE_READY;
             closeSink = XA_BOOLEAN_TRUE;
             if (mCtx->runpositiontimer > 0)
                 {
@@ -79,20 +78,11 @@
                 mCtx->runpositiontimer = 0;
                 }
 
-            if (mCtx->recThrCtx.bufInsufficientSem)
-                {
-                DEBUG_INFO("No buffer-insufficient received, posting record thr semaphore.");
-                if (XAImpl_PostSemaphore(mCtx->recThrCtx.bufInsufficientSem)
-                        != XA_RESULT_SUCCESS)
-                    {
-                    DEBUG_ERR("Posting buffer-insufficient semaphore FAILED!");
-                    }
-                }
-
             break;
             }
         case XA_RECORDSTATE_PAUSED:
             {
+            mCtx->isRecord = XA_BOOLEAN_TRUE;
             if (mCtx->xaRecordState == XA_RECORDSTATE_STOPPED
                     && mCtx->encodingchanged)
                 {
@@ -113,6 +103,7 @@
             }
         case XA_RECORDSTATE_RECORDING:
             {
+            mCtx->isRecord = XA_BOOLEAN_TRUE;
             if (mCtx->xaRecordState == XA_RECORDSTATE_STOPPED
                     && (mCtx->encodingchanged))
                 {
@@ -124,24 +115,11 @@
                     }
                 }
 
-            if (mCtx->recThrCtx.bufInsufficientSem)
-                {
-                /* Recording to address and recording thread semaphora is created */
-                if (!XAImpl_StartThread(&(mCtx->recordingEventThr), NULL,
-                        &XAMediaRecorderAdapt_RecordEventThr, (void*) mCtx))
-                    {
-                    DEBUG_ERR("Start thread Failed");
-                    return XA_RESULT_INTERNAL_ERROR;
-                    }
-                }
-
             bCtx->binWantedState = GST_STATE_PLAYING;
-            recording = XA_BOOLEAN_TRUE;
             break;
             }
         default:
-            DEBUG_ERR("Unhandled state")
-            ;
+            DEBUG_ERR("Unhandled state");
             ret = XA_RESULT_PARAMETER_INVALID;
             break;
         }
@@ -177,8 +155,7 @@
         switch (gstRet)
             {
             case GST_STATE_CHANGE_FAILURE:
-                DEBUG_ERR_A1("FAILED to change state (target %d)",bCtx->binWantedState)
-                ;
+                DEBUG_ERR_A1("FAILED to change state (target %d)",bCtx->binWantedState);
                 bCtx->binWantedState = GST_STATE(bCtx->bin);
                 ret = XA_RESULT_INTERNAL_ERROR;
                 break;
@@ -188,17 +165,14 @@
                 ret = XA_RESULT_SUCCESS;
                 break;
             case GST_STATE_CHANGE_NO_PREROLL:
-                DEBUG_INFO("GST_STATE_CHANGE_NO_PREROLL")
-                ;
+                DEBUG_INFO("GST_STATE_CHANGE_NO_PREROLL");
                 /* deliberate fall-through */
             case GST_STATE_CHANGE_SUCCESS:
-                DEBUG_INFO_A1("Successfully changed state (target %d)",bCtx->binWantedState)
-                ;
+                DEBUG_INFO_A1("Successfully changed state (target %d)",bCtx->binWantedState);
                 ret = XA_RESULT_SUCCESS;
                 break;
             default:
-                DEBUG_ERR_A1("Unhandled error (%d)",gstRet)
-                ;
+                DEBUG_ERR_A1("Unhandled error (%d)",gstRet);
                 ret = XA_RESULT_UNKNOWN_ERROR;
                 break;
             }
@@ -210,30 +184,6 @@
         gst_element_send_event(bCtx->bin, gst_event_new_flush_stop());
         }
 
-    if (recording && mCtx->isobjvsrc && mCtx->videosource)
-        {
-        GstPad *pad = gst_element_get_static_pad(
-                GST_ELEMENT(mCtx->videosource), "MRObjSrc");
-        if (pad && gst_pad_is_linked(pad))
-            {
-            DEBUG_INFO_A2("unblock element:%s pad:%s",
-                    gst_element_get_name(mCtx->videosource),
-                    gst_pad_get_name(pad));
-            gst_pad_set_blocked_async(pad, FALSE, XAAdaptationGst_PadBlockCb,
-                    NULL);
-            }
-
-        if (GST_STATE( GST_ELEMENT(mCtx->videosource)) != GST_STATE_PLAYING)
-            {
-            GstStateChangeReturn gret = GST_STATE_CHANGE_SUCCESS;
-            DEBUG_INFO("Start camera source");
-            gret = gst_element_set_state(GST_ELEMENT(mCtx->videosource),
-                    GST_STATE_PLAYING);
-            if (gret == GST_STATE_CHANGE_SUCCESS)
-                gret = gst_element_get_state(GST_ELEMENT(mCtx->videosource),
-                        NULL, NULL, XA_ADAPT_ASYNC_TIMEOUT_SHORT_NSEC);
-            }
-        }
     DEBUG_API("<-XARecordItfAdapt_SetRecordState");
     return ret;
     }
--- a/khronosfws/openmax_al/src/mediaplayer/xamediaplayer.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xamediaplayer.c	Mon Oct 04 00:51:56 2010 +0300
@@ -18,7 +18,6 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <assert.h>
 #include "xamediaplayer.h"
 #include "xaplayitf.h"
 #include "xaseekitf.h"
@@ -27,13 +26,12 @@
 #include "xavolumeitf.h"
 #include "xametadataextractionitf.h"
 #include "xaplaybackrateitf.h"
-#include "xaconfigextensionsitf.h"
 #include "xathreadsafety.h"
-#include "xametadataadaptation.h"
 #include "xacapabilitiesmgr.h"
 #include "xadynamicsourceitf.h"
 #include "xastreaminformationitf.h"
 #include "xanlinearvolumeitf.h"
+#include "xavideopostprocessingitf.h"
 #include "xanvolumeextitf.h"
 
 extern void* vfHandle;
@@ -47,13 +45,13 @@
     &XA_IID_SEEK,
     &XA_IID_VOLUME,
     &XA_IID_PREFETCHSTATUS,
-    &XA_IID_CONFIGEXTENSION,
     &XA_IID_DYNAMICSOURCE,
     &XA_IID_METADATAEXTRACTION,
     &XA_IID_PLAYBACKRATE,
     &XA_IID_NOKIAVOLUMEEXT,
     &XA_IID_NOKIALINEARVOLUME,
-    &XA_IID_STREAMINFORMATION
+    &XA_IID_STREAMINFORMATION,
+    &XA_IID_VIDEOPOSTPROCESSING
     };
 
 /* Global methods */
@@ -176,6 +174,8 @@
     if (ret != XA_RESULT_SUCCESS)
         { /* creation fails */
         XAObjectItfImpl_Destroy((XAObjectItf) &(pBaseObj));
+        XA_IMPL_THREAD_SAFETY_EXIT(XATSMediaPlayer);
+        DEBUG_API("<-XAMediaPlayerImpl_CreateMediaPlayer");
         return ret;
         }
 
@@ -185,9 +185,6 @@
             = XA_BOOLEAN_TRUE;
     pBaseObj->interfaceMap[MP_PLAYBACKRATEITF].isDynamic = XA_BOOLEAN_TRUE;
 
-    /*Set ObjectItf to point to newly created object*/
-    *pPlayer = (XAObjectItf) &(pBaseObj->self);
-
     /*initialize XAPlayerImpl variables */
 
     pPlayerImpl->dataSrc = pDataSrc;
@@ -242,7 +239,10 @@
 
     pPlayerImpl->curAdaptCtx->capslist = capabilities;
     pPlayerImpl->curAdaptCtx->fwtype = fwType;
-
+    
+    /*Set ObjectItf to point to newly created object*/
+    *pPlayer = (XAObjectItf) &(pBaseObj->self);
+    
     XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaPlayer );
     DEBUG_API("<-XAMediaPlayerImpl_CreateMediaPlayer");
     return XA_RESULT_SUCCESS;
@@ -351,7 +351,7 @@
                             if (ioDevice->deviceType == XA_IODEVICE_CAMERA)
                                 {
                                 vfHandle = (void*) pItf;
-                                DEBUG_INFO_A1("Stored view finder pointer to global address %x", vfHandle);
+                                DEBUG_INFO_A1("Stored view finder pointer to global address %x", (int)vfHandle);
                                 }
                             }
                         else
@@ -376,11 +376,6 @@
                 case MP_PLAYBACKRATEITF:
                     pItf = XAPlaybackRateItfImpl_Create(pImpl);
                     break;
-                case MP_CONFIGEXTENSIONITF:
-                    pItf = XAConfigExtensionsItfImpl_Create();
-                    XAConfigExtensionsItfImpl_SetContext(pItf,
-                            pImpl->curAdaptCtx);
-                    break;
                 case MP_DYNAMICSOURCEITF:
                     pItf = XADynamicSourceItfImpl_Create(pImpl->curAdaptCtx);
                     break;
@@ -393,6 +388,10 @@
                     break;
                 case MP_STREAMINFORMATIONITF:
                     pItf = XAStreamInformationItfImpl_Create(
+                            pImpl);
+                    break;
+                case MP_VIDEOPOSTPROCESSINGITF:
+                    pItf = XAVideoPostProcessingItfImpl_Create(
                             pImpl->curAdaptCtx);
                     break;
                 default:
@@ -457,7 +456,6 @@
     DEBUG_API("->XAMediaPlayerImpl_FreeResources");
     XA_IMPL_THREAD_SAFETY_ENTRY_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
 
-    assert(pObj && pImpl && pObj == pObj->self);
     for (itfIdx = 0; itfIdx < MP_ITFCOUNT; itfIdx++)
         {
         void *pItf = pObj->interfaceMap[itfIdx].pItf;
@@ -486,9 +484,6 @@
                 case MP_PLAYBACKRATEITF:
                     XAPlaybackRateItfImpl_Free(pItf);
                     break;
-                case MP_CONFIGEXTENSIONITF:
-                    XAConfigExtensionsItfImpl_Free(pItf);
-                    break;
                 case MP_DYNAMICSOURCEITF:
                     XADynamicSourceItfImpl_Free(pItf);
                     break;
@@ -501,6 +496,9 @@
                 case MP_STREAMINFORMATIONITF:
                     XAStreamInformationItfImpl_Free(pItf);
                     break;
+                case MP_VIDEOPOSTPROCESSINGITF:
+                    XAVideoPostProcessingItfImpl_Free(pItf);
+                    break;
 
                 }
             pObj->interfaceMap[itfIdx].pItf = NULL;
--- a/khronosfws/openmax_al/src/mediaplayer/xamediaplayer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xamediaplayer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -37,13 +37,13 @@
     MP_SEEKITF,
     MP_VOLUMEITF,
     MP_PREFETCHSTATUSITF,
-    MP_CONFIGEXTENSIONITF,
     MP_DYNAMICSOURCEITF,
     MP_METADATAEXTRACTIONITF,
     MP_PLAYBACKRATEITF,
     MP_NOKIAVOLUMEEXT,
     MP_NOKIALINEARVOLUME,
     MP_STREAMINFORMATIONITF,
+    MP_VIDEOPOSTPROCESSINGITF,
     MP_ITFCOUNT
     } MPInterfaces;
 
--- a/khronosfws/openmax_al/src/mediaplayer/xaplaybackrateitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaplaybackrateitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include "xaplaybackrateitf.h"
 
 #include "xaplaybackrateitfadaptationmmf.h"
@@ -275,7 +274,6 @@
 void XAPlaybackRateItfImpl_Free(XAPlaybackRateItfImpl* self)
 {
     DEBUG_API("->XAPlaybackRateItfImpl_Free");
-    assert(self==self->self);
     free(self);
     DEBUG_API("<-XAPlaybackRateItfImpl_Free");
 }
--- a/khronosfws/openmax_al/src/mediaplayer/xaplayitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaplayitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,10 +17,7 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
-
 #include "xaplayitf.h"
-
 #include "xaplayitfadaptationmmf.h"
 #include "xathreadsafety.h"
 #include <string.h>
@@ -55,7 +52,7 @@
     {
     XAresult ret = XA_RESULT_SUCCESS;
     XAPlayItfImpl* impl = GetImpl(self);
-    DEBUG_API_A1("->XAPlayItfImpl_SetPlayState %s",PLAYSTATENAME(state));
+    DEBUG_API_A1_STR("->XAPlayItfImpl_SetPlayState %s",PLAYSTATENAME(state));
 
     if (!impl || state < XA_PLAYSTATE_STOPPED || state > XA_PLAYSTATE_PLAYING)
         {
@@ -107,7 +104,7 @@
 
     XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaPlayer );
 
-    DEBUG_API_A1("<-XAPlayItfImpl_GetPlayState: %s",PLAYSTATENAME(impl->playbackState));
+    //DEBUG_API_A1_STR("<-XAPlayItfImpl_GetPlayState: %s",PLAYSTATENAME(pState));
     return ret;
     }
 
@@ -496,7 +493,6 @@
         /* init variables */
         self->callback = NULL;
         self->cbcontext = NULL;
-        self->playbackState = XA_PLAYSTATE_STOPPED;
         self->eventFlags = 0;
         self->markerPosition = NO_POSITION;
         self->positionUpdatePeriod = PLAYITF_DEFAULT_UPDATE_PERIOD;
@@ -523,7 +519,6 @@
 void XAPlayItfImpl_Free(XAPlayItfImpl* self)
     {
     DEBUG_API("->XAPlayItfImpl_Free");
-    assert(self==self->self);
     /*    XAAdaptationBase_RemoveEventHandler( self->adapCtx, &XAPlayItfImpl_AdaptCb );*/
     XAAdaptationBase_RemoveEventHandler(self->pObjImpl->curAdaptCtx,
             &XAPlayItfImpl_AdaptCb);
@@ -539,25 +534,27 @@
     XAPlayItfImpl* impl = (XAPlayItfImpl*) pHandlerCtx;
 
     DEBUG_API("->XAPlayItfImpl_AdaptCb");
-    XA_IMPL_THREAD_SAFETY_ENTRY_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
+    //XA_IMPL_THREAD_SAFETY_ENTRY_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
     if (!impl)
         {
         DEBUG_ERR("XAPlayItfImpl_AdaptCb, invalid context pointer!");
         DEBUG_API("<-XAPlayItfImpl_AdaptCb");
-        XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
+        //XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
         return;
         }
-    assert(event);
 
     if (impl->pObjImpl->curAdaptCtx->fwtype == FWMgrFWMMF)
         {
-        impl->callback(impl->cbPtrToSelf, impl->cbcontext, event->eventid);
+        if(impl->callback)
+            {
+            impl->callback(impl->cbPtrToSelf, impl->cbcontext, event->eventid);
+            }
         DEBUG_API("<-XAPlayItfImpl_AdaptCb");
-        XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
+        //XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
         return;
         }
 
     DEBUG_API("<-XAPlayItfImpl_AdaptCb");
-    XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
+    //XA_IMPL_THREAD_SAFETY_EXIT_FOR_VOID_FUNCTIONS( XATSMediaPlayer );
     }
 
--- a/khronosfws/openmax_al/src/mediaplayer/xaplayitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaplayitf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -41,10 +41,6 @@
 
     /* variables */
     XAPlayItf cbPtrToSelf;
-    /* TODO : This is no longer needed we need to get state from XAMediaPlayerImpl
-     * Delete this.*/
-    XAuint32 playbackState;
-
     xaPlayCallback callback;
     void *cbcontext;
     XAuint32 eventFlags;
--- a/khronosfws/openmax_al/src/mediaplayer/xaprefetchstatusitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaprefetchstatusitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,11 +17,12 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 
 #include "xaprefetchstatusitf.h"
 
 #include "xaadaptationgst.h"
+#include "xaprefetchstatusitfadaptationmmf.h"
+
 
 
 static XAPrefetchStatusItfImpl* GetImpl(XAPrefetchStatusItf self)
@@ -51,8 +52,11 @@
         DEBUG_API("<-XAPrefetchStatusItfImpl_GetPrefetchStatus");
         return XA_RESULT_PARAMETER_INVALID;
     }
-
-    *pStatus = impl->pStatus;
+	
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
+    {
+	    ret = XAPrefetchStatusItfAdaptMMF_GetPrefetchStatus(impl->adaptationCtx, pStatus);
+    }
 
     DEBUG_API("<-XAPrefetchStatusItfImpl_GetPrefetchStatus");
     return ret;
@@ -72,8 +76,11 @@
         DEBUG_API("<-XAPrefetchStatusItfImpl_GetFillLevel");
         return XA_RESULT_PARAMETER_INVALID;
     }
-
-    *pLevel = impl->pLevel;
+	
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
+    {
+	    ret = XAPrefetchStatusItfAdaptMMF_GetFillLevel(impl->adaptationCtx, pLevel);
+    }
 
     DEBUG_API("<-XAPrefetchStatusItfImpl_GetFillLevel");
     return ret;
@@ -99,6 +106,11 @@
     impl->callback = callback;
     impl->cbcontext = pContext;
     impl->cbPtrToSelf = self;
+	
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
+    {
+	    ret = XAPrefetchStatusItfAdaptMMF_RegisterCallback(impl->adaptationCtx, callback);
+    }
 
     DEBUG_API("<-XAPrefetchStatusItfImpl_RegisterCallback");
     return ret;
@@ -111,7 +123,7 @@
     XAPrefetchStatusItfImpl *impl = GetImpl(self);
     DEBUG_API("->XAPrefetchStatusItfImpl_SetCallbackEventsMask");
 
-    if(!impl  )
+    if(!impl || eventFlags > (XA_PREFETCHEVENT_STATUSCHANGE|XA_PREFETCHEVENT_FILLLEVELCHANGE))
     {
         /* invalid parameter */
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
@@ -120,6 +132,11 @@
     }
 
     impl->eventFlags = eventFlags;
+	
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
+    {
+	    ret = XAPrefetchStatusItfAdaptMMF_SetCallbackEventsMask(impl->adaptationCtx, eventFlags);
+    }
 
     DEBUG_API("<-XAPrefetchStatusItfImpl_SetCallbackEventsMask");
     return ret;
@@ -163,6 +180,11 @@
 
     impl->fillUpdatePeriod = period;
 
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
+    {
+	    ret = XAPrefetchStatusItfAdaptMMF_SetFillUpdatePeriod(impl->adaptationCtx, period);
+    }
+
     DEBUG_API("<-XAPrefetchStatusItfImpl_SetFillUpdatePeriod");
     return ret;
 }
@@ -229,7 +251,6 @@
 void XAPrefetchStatusItfImpl_Free(XAPrefetchStatusItfImpl* self)
 {
     DEBUG_API("->XAPrefetchStatusItfImpl_Free");
-    assert(self==self->self);
     XAAdaptationBase_RemoveEventHandler( (XAAdaptationBaseCtx*)self->adaptationCtx, &XAPrefetchStatusItfImpl_AdaptCb );
     free(self);
     DEBUG_API("<-XAPrefetchStatusItfImpl_Free");
@@ -248,22 +269,14 @@
         DEBUG_API("<-XAPrefetchStatusItfImpl_AdaptCb");
         return;
     }
-    assert(event);
-    if( event->eventid == XA_ADAPT_BUFFERING )
+	
+    if (impl->adaptationCtx->fwtype == FWMgrFWMMF)
     {
-        /* Adaptation sends percents convert it to permille */
-        impl->fillUpdatePeriod = ((*(XAint32*)(event->data))*10);
-
-        /*Check do we have to send event */
-        if( impl->callback && impl->eventFlags & XA_PREFETCHEVENT_FILLLEVELCHANGE )
-        {
-            if ( (*(XAint32*)event->data) >  impl->fillUpdatePeriod / 10 )
-            {
-                impl->callback(impl->cbPtrToSelf, impl->cbcontext, XA_PREFETCHEVENT_FILLLEVELCHANGE);
-            }
-        }
+        impl->callback(impl->cbPtrToSelf, impl->cbcontext, event->eventid);
+        DEBUG_API("<-XAPrefetchStatusItfImpl_AdaptCb");
+        return;
     }
-
+	
     DEBUG_API("<-XAPrefetchStatusItfImpl_AdaptCb");
 }
 
--- a/khronosfws/openmax_al/src/mediaplayer/xaseekitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediaplayer/xaseekitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 
 #include "xaseekitf.h"
 #include "xathreadsafety.h"
@@ -244,7 +243,6 @@
     DEBUG_API("->XASeekItfImpl_Free");
     if(self)
         {
-        assert(self==self->self);
         free(self);
         }
     DEBUG_API("<-XASeekItfImpl_Free");
--- a/khronosfws/openmax_al/src/mediarecorder/xaaudioencoderitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediarecorder/xaaudioencoderitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,6 @@
  *
  */
 
-#include <assert.h>
 #include "xamediarecorderadaptctxmmf.h"
 #include "xaaudioencoderitf.h"
 #include "xaaudioencoderitfadaptation.h"
@@ -306,7 +305,6 @@
     DEBUG_API("->XAAudioEncoderItfImpl_Free");
     if(self)
         {
-        assert( self==self->self );
         free(self);
         }
     DEBUG_API("<-XAAudioEncoderItfImpl_Free");
--- a/khronosfws/openmax_al/src/mediarecorder/xamediarecorder.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediarecorder/xamediarecorder.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,17 +17,12 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
+#include <string.h>
 #include "xamediarecorder.h"
 #include "xaaudioencoderitf.h"
-#include "xaconfigextensionsitf.h"
 #include "xadynintmgmtitf.h"
-#include "xametadatainsertionitf.h"
 #include "xarecorditf.h"
-#include "xavolumeitf.h"
-#include "xametadataextractionitf.h"
 #include "xathreadsafety.h"
-#include <string.h>
 #include "xacapabilitiesmgr.h"
 #include "xamediarecorderadaptctxmmf.h"
 #include "xamediarecorderadaptctx.h"
@@ -36,12 +31,8 @@
     {
     &XA_IID_OBJECT,
     &XA_IID_AUDIOENCODER,
-    &XA_IID_CONFIGEXTENSION,
     &XA_IID_DYNAMICINTERFACEMANAGEMENT,
-    &XA_IID_METADATAINSERTION,
-    &XA_IID_RECORD,
-    &XA_IID_VOLUME,
-    &XA_IID_METADATAEXTRACTION
+    &XA_IID_RECORD
     };
 
 /* Global methods */
@@ -67,7 +58,20 @@
     DEBUG_API("->XAMediaRecorderImpl_CreateMediaRecorder");
     XA_IMPL_THREAD_SAFETY_ENTRY( XATSMediaRecorder );
 
-    if (!pRecorder)
+    /* check sink&source parameters */
+    ret = XACommon_ValidateDataLocator(3, pAudioSrc, pImageVideoSrc,
+                    pDataSnk);
+    if (ret != XA_RESULT_SUCCESS)
+        {
+        XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
+        DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
+        return ret;
+        }
+    
+    /* check only sink media type, do not care about return value (availability) */
+    XACommon_CheckDataSource((XADataSource*) pDataSnk, &mediaType);
+    
+    if (!pRecorder || (!pAudioSrc && !pImageVideoSrc) || !pDataSnk)
         {
         /* invalid parameter */
         XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
@@ -76,50 +80,34 @@
         return XA_RESULT_PARAMETER_INVALID;
         }
 
-    /* check sink&source parameters */
-    ret
-            = XACommon_ValidateDataLocator(3, pAudioSrc, pImageVideoSrc,
-                    pDataSnk);
-    if (ret != XA_RESULT_SUCCESS)
-        {
-        XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
-        DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
-        return ret;
-        }
-
     /* instantiate object implementation */
     pImpl = (XAMediaRecorderImpl*) calloc(1, sizeof(XAMediaRecorderImpl));
     if (!pImpl)
         {
-
         /* memory allocation failed */
         XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
         DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
         DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
         return XA_RESULT_MEMORY_FAILURE;
         }
+    
     pBaseObj = &pImpl->baseObj;
 
     /* Initialize base object default implementation */
     XAObjectItfImpl_Init(pBaseObj, MR_ITFCOUNT, xaMediaRecorderItfIIDs,
             XAMediaRecorderImpl_DoRealize, XAMediaRecorderImpl_DoResume,
             XAMediaRecorderImpl_FreeResources);
-
+        
     /* Mark interfaces that need to be exposed */
-    /* Implicit and mandated interfaces */
-    pBaseObj->interfaceMap[MR_RECORDITF].required = XA_BOOLEAN_TRUE;
-    if (pAudioSrc && mediaType != XA_MEDIATYPE_IMAGE)
-        {
-        pBaseObj->interfaceMap[MR_AUDIOENCODERITF].required = XA_BOOLEAN_TRUE;
-        }
-
+    /* Mandated Implicit interfaces */
     pBaseObj->interfaceMap[MR_DIMITF].required = XA_BOOLEAN_TRUE;
 
-    /* Explicit interfaces */
+    /* Mark interfaces that can be handled dynamically */
+    /* Mandated dynamic itfs */
+
+    /*Mandated  Explicit interfaces */
     if ((numInterfaces != 0) && pInterfaceIds && pInterfaceRequired)
         {
-        /* check only sink media type, do not care about return value (availability) */
-        XACommon_CheckDataSource((XADataSource*) pDataSnk, &mediaType);
         /* Check required interfaces */
         for (itfIdx = 0; itfIdx < numInterfaces; itfIdx++)
             {
@@ -141,52 +129,11 @@
                     }
                 }
             else
-                { /* weed out unsupported content-aware itf's */
-                if ((mediaType == XA_MEDIATYPE_IMAGE || !pAudioSrc)
-                        && (entry->mapIdx == MR_VOLUMEITF || entry->mapIdx == MR_AUDIOENCODERITF))
-                    {
-                    entry->required = XA_BOOLEAN_FALSE;
-                    if (pInterfaceRequired[itfIdx])
-                        {
-                        DEBUG_ERR("Required interface not supported for given media - abort creation!");
-                        ret = XA_RESULT_FEATURE_UNSUPPORTED;
-                        break;
-                        }
-                    }
-                else
-                    {
-                    entry->required = XA_BOOLEAN_TRUE;
-                    }
-
-                if (entry->mapIdx == MR_RECORDITF)
-                    {
-                    DEBUG_ERR("RecordItf requested - support stream mode");
-                    pImpl->recModes |= XA_RECMODE_STREAM;
-                    }
+                {
+                entry->required = XA_BOOLEAN_TRUE;
                 }
             }
         }
-    if (pImpl->recModes == 0)
-        {
-        DEBUG_ERR("Warning!!! No recording interfaces requested - unable to record!!");
-        }
-    /*check sink and src parameters*/
-    if (ret == XA_RESULT_SUCCESS)
-        {
-        ret = XACommon_ValidateDataLocator(3, pDataSnk, pAudioSrc,
-                pImageVideoSrc);
-        /*datasink ignored if only snapshotitf is used*/
-        if (!pDataSnk && (pImpl->recModes & XA_RECMODE_STREAM))
-            {
-            DEBUG_ERR("No datasink to record to!");
-            ret = XA_RESULT_PARAMETER_INVALID;
-            }
-        if (!pAudioSrc && !pImageVideoSrc)
-            {
-            DEBUG_ERR("No data sources set!");
-            ret = XA_RESULT_PARAMETER_INVALID;
-            }
-        }
 
     if (ret != XA_RESULT_SUCCESS)
         { /* creation fails */
@@ -195,20 +142,17 @@
         DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
         return ret;
         }
-
-    /* Mark interfaces that can be handled dynamically */
-    /* Mandated dynamic itfs */
-    pBaseObj->interfaceMap[MR_METADATAINSERTIONITF].isDynamic
-            = XA_BOOLEAN_TRUE;
-
+    
     /* Initialize XAMediaRecorderImpl variables */
     pImpl->audioSrc = pAudioSrc;
     pImpl->dataSnk = pDataSnk;
     pImpl->imageVideoSrc = pImageVideoSrc;
+    pImpl->recModes |= XA_RECMODE_STREAM;
+
     /* Determine framework type that can handle recording */
     fwType = (FWMgrFwType) FWMgrMOUnknown;
     /**/
-    if (pDataSnk && pDataSnk->pLocator)
+    if (pDataSnk->pLocator)
         {
         XADataLocator_URI* dataLoc = (XADataLocator_URI*) pDataSnk->pLocator;
         if (dataLoc->locatorType == XA_DATALOCATOR_URI)
@@ -216,34 +160,41 @@
             uri = (char*) dataLoc->URI;
             }
         }
+    
     fwType = XAFrameworkMgr_GetFramework(mapper, uri, FWMgrMORecorder);
 
-    if (fwType == FWMgrMOUnknown)
+    switch(fwType)
         {
-        ret = XA_RESULT_CONTENT_UNSUPPORTED;
+        case FWMgrFWMMF:
+            {
+
+            pImpl->adaptationCtx = XAMediaRecorderAdaptMMF_Create(
+                    pImpl->audioSrc, pImpl->imageVideoSrc, pImpl->dataSnk,
+                    pImpl->recModes);
+            }
+            break;
+        case FWMgrFWGST:
+            {
+            pImpl->adaptationCtx = XAMediaRecorderAdapt_Create(pImpl->audioSrc,
+                    pImpl->imageVideoSrc, pImpl->dataSnk, pImpl->recModes);
+            break;
+            }
+        case FWMgrFWUknown:
+        default:
+            {
+            ret = XA_RESULT_CONTENT_UNSUPPORTED;
+            break;
+            }
+        }
+    
+    if (ret != XA_RESULT_SUCCESS)
+        { /* creation fails */
         XAObjectItfImpl_Destroy((XAObjectItf) &(pBaseObj));
         XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
         DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
         return ret;
         }
-
-    /* Set ObjectItf to point to newly created object */
-    *pRecorder = (XAObjectItf) &(pBaseObj->self);
-
-    if (fwType == FWMgrFWMMF)
-        {
-
-        pImpl->adaptationCtx = XAMediaRecorderAdaptMMF_Create(
-                pImpl->audioSrc, pImpl->imageVideoSrc, pImpl->dataSnk,
-                pImpl->recModes);
-        }
-    else
-        {
-
-        pImpl->adaptationCtx = XAMediaRecorderAdapt_Create(pImpl->audioSrc,
-                pImpl->imageVideoSrc, pImpl->dataSnk, pImpl->recModes);
-        }
-
+    
     if (pImpl->adaptationCtx)
         {
         pImpl->adaptationCtx->capslist = capabilities;
@@ -258,6 +209,9 @@
         return ret;
         }
 
+    /* Set ObjectItf to point to newly created object */
+    *pRecorder = (XAObjectItf) &(pBaseObj->self);
+    
     XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
     DEBUG_API("<-XAMediaRecorderImpl_CreateMediaRecorder");
     return XA_RESULT_SUCCESS;
@@ -270,18 +224,9 @@
         XAuint32 *pNumSupportedInterfaces)
     {
     DEBUG_API("->XAMediaRecorderImpl_QueryNumSupportedInterfaces");
-    if (pNumSupportedInterfaces)
-        {
-        *pNumSupportedInterfaces = MR_ITFCOUNT;
-
-        DEBUG_API("<-XAMediaRecorderImpl_QueryNumSupportedInterfaces");
-        return XA_RESULT_SUCCESS;
-        }
-    else
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        return XA_RESULT_PARAMETER_INVALID;
-        }
+    *pNumSupportedInterfaces = MR_ITFCOUNT;
+    DEBUG_API("<-XAMediaRecorderImpl_QueryNumSupportedInterfaces");
+    return XA_RESULT_SUCCESS;
     }
 /* XAResult XAMediaRecorderImpl_QuerySupportedInterfaces
  * Statically query supported interfaces
@@ -290,7 +235,7 @@
         XAInterfaceID *pInterfaceId)
     {
     DEBUG_API("->XAMediaRecorderImpl_QuerySupportedInterfaces");
-    if (index >= MR_ITFCOUNT || !pInterfaceId)
+    if (index >= MR_ITFCOUNT)
         {
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
         return XA_RESULT_PARAMETER_INVALID;
@@ -298,7 +243,6 @@
     else
         {
         *pInterfaceId = *(xaMediaRecorderItfIIDs[index]);
-
         DEBUG_API("<-XAMediaRecorderImpl_QuerySupportedInterfaces");
         return XA_RESULT_SUCCESS;
         }
@@ -331,25 +275,7 @@
         XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
         return XA_RESULT_PARAMETER_INVALID;
         }
-
-    /* init adaptation */
-    if (pObjImpl->adaptationCtx->fwtype == FWMgrFWMMF)
-        {
-        ret = XAMediaRecorderAdaptMMF_PostInit(
-                (XAAdaptationMMFCtx*) pObjImpl->adaptationCtx);
-        }
-    else
-        {
-        ret = XAMediaRecorderAdapt_PostInit(
-                (XAAdaptationGstCtx*) pObjImpl->adaptationCtx);
-        }
-
-    if (ret != XA_RESULT_SUCCESS)
-        {
-        XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
-        return ret;
-        }
-
+ 
     /* Realize all implicit and explicitly wanted interfaces */
     for (itfIdx = 0; itfIdx < MR_ITFCOUNT; itfIdx++)
         {
@@ -375,22 +301,6 @@
                 case MR_AUDIOENCODERITF:
                     pItf = XAAudioEncoderItfImpl_Create(pObjImpl);
                     break;
-                case MR_METADATAINSERTIONITF:
-                    pItf = XAMetadataInsertionItfImpl_Create(pObjImpl);
-                    break;
-
-                case MR_CONFIGEXTENSIONITF:
-                    pItf = XAConfigExtensionsItfImpl_Create();
-                    XAConfigExtensionsItfImpl_SetContext(pItf,
-                            pObjImpl->adaptationCtx);
-                    break;
-                case MR_VOLUMEITF:
-                    pItf = XAVolumeItfImpl_Create(pObjImpl->adaptationCtx);
-                    break;
-                case MR_METADATAEXTRACTIONITF:
-                    pItf = XAMetadataExtractionItfImpl_Create(
-                            pObjImpl->adaptationCtx);
-                    break;
                 default:
                     break;
                 }
@@ -408,6 +318,27 @@
             }
         }
 
+    /* init adaptation */
+    if (pObjImpl->adaptationCtx->fwtype == FWMgrFWMMF)
+        {
+        ret = XAMediaRecorderAdaptMMF_PostInit(
+                (XAAdaptationMMFCtx*) pObjImpl->adaptationCtx);
+        }
+    else
+        {
+        ret = XAMediaRecorderAdapt_PostInit(
+                (XAAdaptationGstCtx*) pObjImpl->adaptationCtx);
+        }
+
+    if (ret != XA_RESULT_SUCCESS)
+        {
+        XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
+        return ret;
+        }
+
+    XAAdaptationBase_AddEventHandler(pObjImpl->adaptationCtx,
+            &XAMediaRecorderImpl_AdaptCb, XA_OBJECTITFEVENTS, pObjImpl);
+    
     pObj->state = XA_OBJECT_STATE_REALIZED;
     DEBUG_API("<-XAMediaRecorderImpl_DoRealize");
     XA_IMPL_THREAD_SAFETY_EXIT( XATSMediaRecorder );
@@ -436,7 +367,6 @@
     XAMediaRecorderImpl* pImpl = (XAMediaRecorderImpl*) (*self);
     DEBUG_API("->XAMediaRecorderImpl_FreeResources");
     XA_IMPL_THREAD_SAFETY_ENTRY_FOR_VOID_FUNCTIONS( XATSMediaRecorder );
-    assert( pObj && pImpl && pObj == pObj->self );
 
     /* free all allocated interfaces */
     for (itfIdx = 0; itfIdx < MR_ITFCOUNT; itfIdx++)
@@ -449,24 +379,12 @@
                 case MR_AUDIOENCODERITF:
                     XAAudioEncoderItfImpl_Free(pItf);
                     break;
-                case MR_CONFIGEXTENSIONITF:
-                    XAConfigExtensionsItfImpl_Free(pItf);
-                    break;
                 case MR_DIMITF:
                     XADIMItfImpl_Free(pItf);
                     break;
-                case MR_METADATAINSERTIONITF:
-                    XAMetadataInsertionItfImpl_Free(pItf);
-                    break;
                 case MR_RECORDITF:
                     XARecordItfImpl_Free(pItf);
                     break;
-                case MR_VOLUMEITF:
-                    XAVolumeItfImpl_Free(pItf);
-                    break;
-                case MR_METADATAEXTRACTIONITF:
-                    XAMetadataExtractionItfImpl_Free(pItf);
-                    break;
                 default:
                     break;
                 }
@@ -496,6 +414,38 @@
     return;
     }
 
+/* void XARecordItfImpl_AdaptCb
+ * Description: Listen changes in adaptation
+ */
+void XAMediaRecorderImpl_AdaptCb(void *pHandlerCtx, XAAdaptEvent *event)
+    {
+    XAObjectItfImpl* impl = (XAObjectItfImpl*) pHandlerCtx;
+    DEBUG_API("->XAMediaRecorderImpl_AdaptCb");
+
+    if (!impl)
+        {
+        DEBUG_ERR("XAMediaRecorderImpl_AdaptCb, invalid context pointer!");
+        DEBUG_API("<-XAMediaRecorderImpl_AdaptCb");
+        return;
+        }
+
+    if(impl->callBack)
+        {
+        if(event)
+            {
+            XAObjItfCBData* data = (XAObjItfCBData*)(event->data);
+            if(data->event == XA_OBJECT_EVENT_RESOURCES_LOST )
+                {
+                impl->state = data->param;
+                }
+            impl->callBack(impl->cbPtrToSelf, impl->context, data->event, data->result, data->param, data->interface);
+            }
+        }
+    
+    DEBUG_API("<-XAMediaRecorderImpl_AdaptCb");
+    }
+
+
 /*****************************************************************************
  * MediaRecorderImpl -specific methods
  *****************************************************************************/
@@ -506,10 +456,6 @@
 XAresult XAMediaRecorderImpl_DoAddItf(XAObjectItf self,
         XAObjItfMapEntry *mapEntry)
     {
-
-    XAObjectItfImpl* pObj = (XAObjectItfImpl*) (*self);
-    XAMediaRecorderImpl* pImpl = (XAMediaRecorderImpl*) (pObj);
-
     XAresult ret = XA_RESULT_SUCCESS;
 
     DEBUG_API("->XAMediaRecorderImpl_DoAddItf");
@@ -519,10 +465,6 @@
         {
         switch (mapEntry->mapIdx)
             {
-
-            case MR_METADATAINSERTIONITF:
-                mapEntry->pItf = XAMetadataInsertionItfImpl_Create(pImpl);
-                break;
             default:
                 DEBUG_ERR("XAMediaRecorderImpl_DoAddItf unknown id");
                 ret = XA_RESULT_FEATURE_UNSUPPORTED;
@@ -574,9 +516,6 @@
         {
         switch (mapEntry->mapIdx)
             {
-            case MR_METADATAINSERTIONITF:
-                XAMetadataInsertionItfImpl_Free(mapEntry->pItf);
-                break;
             default:
                 DEBUG_ERR("XAMediaRecorderImpl_DoRemoveItf unknown id");
                 ret = XA_RESULT_FEATURE_UNSUPPORTED;
--- a/khronosfws/openmax_al/src/mediarecorder/xamediarecorder.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediarecorder/xamediarecorder.h	Mon Oct 04 00:51:56 2010 +0300
@@ -34,12 +34,8 @@
     {
     MR_OBJECTITF,
     MR_AUDIOENCODERITF,
-    MR_CONFIGEXTENSIONITF,
     MR_DIMITF,
-    MR_METADATAINSERTIONITF,
     MR_RECORDITF,
-    MR_VOLUMEITF,
-    MR_METADATAEXTRACTIONITF,
     MR_ITFCOUNT
     } MRInterfaces;
 
@@ -65,6 +61,7 @@
 XAresult XAMediaRecorderImpl_DoRealize(XAObjectItf self);
 XAresult XAMediaRecorderImpl_DoResume(XAObjectItf self);
 void XAMediaRecorderImpl_FreeResources(XAObjectItf self);
+void XAMediaRecorderImpl_AdaptCb(void *pHandlerCtx, XAAdaptEvent *event);
 
 /* MediaRecorderImpl -specific methods*/
 XAresult XAMediaRecorderImpl_DoAddItf(XAObjectItf self,
--- a/khronosfws/openmax_al/src/mediarecorder/xametadatainsertionitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,473 +0,0 @@
-/*
- * 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: Metadata Insertion Itf Impl
- *
- */
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <assert.h>
-#include "xametadatainsertionitf.h"
-
-#include "xametadataadaptation.h"
-
-#define MAX_TAGS 255
-/* XAMetadataInsertionItfImpl* GetImpl(XAMetadataInsertionItf self)
- * Description: Validate interface pointer and cast it to implementation pointer.
- */
-static XAMetadataInsertionItfImpl* GetImpl(XAMetadataInsertionItf self)
-    {
-    if (self)
-        {
-        XAMetadataInsertionItfImpl* impl =
-                (XAMetadataInsertionItfImpl*) (*self);
-        if (impl && (impl == impl->self))
-            {
-            return impl;
-            }
-        }
-    return NULL;
-    }
-
-/*****************************************************************************
- * Base interface XAMetadataInsertionItf implementation
- *****************************************************************************/
-
-/* XAMetadataInsertionItfImpl_CreateChildNode
- * Description: Creates a new child node for the given parent.
- */
-XAresult XAMetadataInsertionItfImpl_CreateChildNode(
-        XAMetadataInsertionItf self, XAint32 parentNodeID, XAuint32 type,
-        XAchar *mimeType, XAint32 *pChildNodeID)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_CreateChildNode");
-    impl = GetImpl(self);
-    if (!impl || !mimeType || !pChildNodeID)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_CreateChildNode(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, parentNodeID,
-                        type, mimeType, pChildNodeID);
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_CreateChildNode");
-            return XA_RESULT_FEATURE_UNSUPPORTED;
-            }
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_CreateChildNode");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_GetSupportedKeysCount
- * Description: A query method to tell if the metadata keys (for writing metadata)
- * can be freely chosen by the application or if they are fixed (for the given node).
- */
-XAresult XAMetadataInsertionItfImpl_GetSupportedKeysCount(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAboolean *pFreeKeys,
-        XAuint32 *pKeyCount, XAuint32 *pEncodingCount)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_GetSupportedKeysCount");
-    impl = GetImpl(self);
-    if (!impl || !pFreeKeys || !pKeyCount || !pEncodingCount)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_GetSupportedKeysCount(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, nodeID,
-                        pFreeKeys, pKeyCount, pEncodingCount);
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_GetSupportedKeysCount");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_GetSupportedKeysCount");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_GetKeySize
- * Description: Returns the byte size required for a supported metadata
- * key pointed by the given index
- */
-XAresult XAMetadataInsertionItfImpl_GetKeySize(XAMetadataInsertionItf self,
-        XAint32 nodeID, XAuint32 keyIndex, XAuint32 *pKeySize)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_GetKeySize");
-    impl = GetImpl(self);
-    if (!impl || !pKeySize)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_GetKeySize(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, nodeID,
-                        keyIndex, pKeySize);
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_GetKeySize");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_GetKeySize");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_GetKey
- * Description; Returns a XAMetadataInfo structure and associated data
- * referenced by the structure for a supported key
- */
-XAresult XAMetadataInsertionItfImpl_GetKey(XAMetadataInsertionItf self,
-        XAint32 nodeID, XAuint32 keyIndex, XAuint32 keySize,
-        XAMetadataInfo *pKey)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_GetKey");
-    impl = GetImpl(self);
-    if (!impl || !pKey)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_GetKey(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, nodeID,
-                        keyIndex, keySize, pKey);
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_GetKey");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_GetKey");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_GetFreeKeysEncoding
- * Description: A method to be used in case implementation supports
- * free keys for metadata insertion.
- */
-XAresult XAMetadataInsertionItfImpl_GetFreeKeysEncoding(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAuint32 encodingIndex,
-        XAuint32 *pEncoding)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_GetFreeKeysEncoding");
-    impl = GetImpl(self);
-    if (!impl || !pEncoding)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_GetFreeKeysEncoding(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, nodeID,
-                        encodingIndex, pEncoding);
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_GetFreeKeysEncoding");
-            return XA_RESULT_PARAMETER_INVALID;
-            }
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_GetFreeKeysEncoding");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_InsertMetadataItem
- * Description: Inserts the key/value pair to the specified node of the metadata tree.
- */
-XAresult XAMetadataInsertionItfImpl_InsertMetadataItem(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAMetadataInfo *pKey,
-        XAMetadataInfo *pValue, XAboolean overwrite)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_InsertMetadataItem");
-    impl = GetImpl(self);
-    if (!impl || !pKey || !pValue)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        /* invalid parameter */
-        ret = XA_RESULT_PARAMETER_INVALID;
-        }
-    else
-        {
-        if (impl->adaptCtx && impl->adaptCtx->fwtype == FWMgrFWGST)
-            {
-
-            if (impl->adaptCtx)
-                {
-                ret = XAMetadataInsertionItfAdapt_InsertMetadataItem(
-                        (XAAdaptationGstCtx*) impl->adaptCtx, nodeID, pKey,
-                        pValue, overwrite);
-                impl->currentTags.mdeKeys[impl->currentTags.itemcount] = pKey;
-                impl->currentTags.mdeValues[impl->currentTags.itemcount]
-                        = pValue;
-                impl->currentTags.itemcount++;
-                }
-            else
-                {
-                ret = XA_RESULT_INTERNAL_ERROR;
-                }
-            }
-        else
-            {
-            DEBUG_ERR("XA_RESULT_FEATURE_UNSUPPORTED");
-            DEBUG_API("<-XAMetadataInsertionItfImpl_GetFreeKeysEncoding");
-            return XA_RESULT_FEATURE_UNSUPPORTED;
-            }
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_InsertMetadataItem");
-    return ret;
-    }
-
-/* XAresult XAMetadataInsertionItfImpl_RegisterCallback
- * Description: Registers a callback on the object that executes after each of
- * the actual writings of metadata key/value pairs takes place.
- */
-XAresult XAMetadataInsertionItfImpl_RegisterCallback(
-        XAMetadataInsertionItf self, xaMetadataInsertionCallback callback,
-        void *pContext)
-    {
-    XAMetadataInsertionItfImpl *impl = NULL;
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_RegisterCallback");
-    impl = GetImpl(self);
-    if (!impl)
-        {
-        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-        DEBUG_API("<-XAMetadataInsertionItfImpl_RegisterCallback");
-        /* invalid parameter */
-        return XA_RESULT_PARAMETER_INVALID;
-        }
-
-    if (callback)
-        {
-        XAAdaptationBase_AddEventHandler(impl->adaptCtx,
-                &XAMetadataInsertionItfImpl_AdaptCb, XA_METADATAEVENTS, impl);
-        impl->callback = callback;
-        impl->cbcontext = pContext;
-        impl->cbPtrToSelf = self;
-        }
-    else
-        {
-        XAAdaptationBase_RemoveEventHandler(impl->adaptCtx,
-                &XAMetadataInsertionItfImpl_AdaptCb);
-        }
-
-    DEBUG_API("<-XAMetadataInsertionItfImpl_RegisterCallback");
-    return XA_RESULT_SUCCESS;
-    }
-
-/*****************************************************************************
- * XAMetadataTraversalImpl -specific methods
- *****************************************************************************/
-
-/* XAMetadataInsertionItfImpl* XAMetadataInsertionItfImpl_Create()
- * Description: Allocate and initialize MetadataInsertionItfImpl
- */
-XAMetadataInsertionItfImpl* XAMetadataInsertionItfImpl_Create(
-        XAMediaRecorderImpl* impl)
-    {
-    XAMetadataInsertionItfImpl* self = (XAMetadataInsertionItfImpl*) calloc(
-            1, sizeof(XAMetadataInsertionItfImpl));
-    //XAMediaRecorderAdaptationCtx* mCtx = (XAMediaRecorderAdaptationCtx*)(impl->adaptationCtx);
-
-    DEBUG_API("->XAMetadataInsertionItfImpl_Create");
-    if (self)
-        {
-        //if(mCtx->fwtype == FWMgrFWGST)
-            {
-            /* init itf default implementation */
-            self->itf.CreateChildNode
-                    = XAMetadataInsertionItfImpl_CreateChildNode;
-            self->itf.GetFreeKeysEncoding
-                    = XAMetadataInsertionItfImpl_GetFreeKeysEncoding;
-            self->itf.GetKey = XAMetadataInsertionItfImpl_GetKey;
-            self->itf.GetKeySize = XAMetadataInsertionItfImpl_GetKeySize;
-            self->itf.GetSupportedKeysCount
-                    = XAMetadataInsertionItfImpl_GetSupportedKeysCount;
-            self->itf.InsertMetadataItem
-                    = XAMetadataInsertionItfImpl_InsertMetadataItem;
-            self->itf.RegisterCallback
-                    = XAMetadataInsertionItfImpl_RegisterCallback;
-            }
-
-        /* init variables*/
-
-        self->callback = NULL;
-        self->cbcontext = NULL;
-        self->cbPtrToSelf = NULL;
-        self->adaptCtx = impl->adaptationCtx;
-        self->currentTags.mdeKeys = calloc(MAX_TAGS, sizeof(XAMetadataInfo*));
-        self->currentTags.mdeValues = calloc(MAX_TAGS,
-                sizeof(XAMetadataInfo*));
-        self->self = self;
-
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_Create");
-    return self;
-    }
-
-/* void XAMetadataInsertionItfImpl_Free(XAMetadataInsertionItfImpl* self)
- * Description: Free all resources reserved at XAMetadataInsertionItfImpl_Create()
- */
-void XAMetadataInsertionItfImpl_Free(XAMetadataInsertionItfImpl* self)
-    {
-    DEBUG_API("->XAMetadataInsertionItfImpl_Free");
-    assert( self==self->self );
-    if (self->callback)
-        {
-        XAAdaptationBase_RemoveEventHandler(self->adaptCtx,
-                &XAMetadataInsertionItfImpl_AdaptCb);
-        }
-    XAMetadataAdapt_FreeImplTagList(&(self->currentTags), XA_BOOLEAN_FALSE);
-    free(self);
-    DEBUG_API("<-XAMetadataInsertionItfImpl_Free");
-    }
-
-/* With this method, adaptation infroms that tags are written to stream
- */
-void XAMetadataInsertionItfImpl_AdaptCb(void *pHandlerCtx,
-        XAAdaptEvent *event)
-    {
-    XAMetadataInsertionItfImpl* impl = NULL;
-    XAuint32 idx = 0, nodeID = XA_ROOT_NODE_ID;
-    XAboolean result = XA_BOOLEAN_TRUE;
-    DEBUG_API("->XAMetadataInsertionItfImpl_AdaptCb");
-    impl = (XAMetadataInsertionItfImpl*) pHandlerCtx;
-    if (!impl)
-        {
-        DEBUG_ERR("XAMetadataInsertionItfImpl_AdaptCb, invalid context pointer!");
-        DEBUG_API("<-XAMetadataInsertionItfImpl_AdaptCb");
-        return;
-        }
-    if (event && event->eventid == XA_ADAPT_MDE_TAGS_WRITTEN)
-        {
-        /*here datasize field is used for return value*/
-        if (event->datasize != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR_A1("Adaptation failed to write metadata (code %x)!",(int)event->datasize);
-            result = XA_BOOLEAN_FALSE;
-            }
-        /*all tags written, send cb for client to free the memory*/
-        for (idx = 0; idx < impl->currentTags.itemcount; idx++)
-            {
-            if (impl->callback)
-                {
-                impl->callback(impl->cbPtrToSelf, impl->cbcontext,
-                        impl->currentTags.mdeKeys[idx],
-                        impl->currentTags.mdeValues[idx], nodeID, result);
-                }
-            impl->currentTags.mdeKeys[idx] = NULL;
-            impl->currentTags.mdeValues[idx] = NULL;
-            }
-        impl->currentTags.itemcount = 0;
-        }
-    else
-        {
-        DEBUG_INFO("unhandled");
-        }
-    DEBUG_API("<-XAMetadataInsertionItfImpl_AdaptCb");
-    }
-
--- a/khronosfws/openmax_al/src/mediarecorder/xametadatainsertionitf.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,86 +0,0 @@
-/*
- * 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: Metadata Insertion Itf Impl
- *
- */
-
-#ifndef XAMETADATAINSERTIONITF_H
-#define XAMETADATAINSERTIONITF_H
-
-#include "xametadataadaptation.h"
-#include "xamediarecorder.h"
-/** MACROS **/
-
-/** TYPES **/
-
-/** ENUMERATIONS **/
-
-/** STRUCTURES **/
-/* Definition of XAMetadataInsertionItf implementation */
-typedef struct XAMetadataInsertionItfImpl_
-    {
-    /* parent interface */
-    struct XAMetadataInsertionItf_ itf;
-    /* pointer to self */
-    struct XAMetadataInsertionItfImpl_* self;
-
-    /* variables */
-    XAAdaptationBaseCtx *adaptCtx;
-    XAMetadataImplTagList currentTags;
-
-    /*Callback*/
-    xaMetadataInsertionCallback callback;
-    void *cbcontext;
-    XAMetadataInsertionItf cbPtrToSelf;
-
-    } XAMetadataInsertionItfImpl;
-
-/** METHODS **/
-
-/* Base interface XAMetadataInsertionItf implementation */
-XAresult XAMetadataInsertionItfImpl_CreateChildNode(
-        XAMetadataInsertionItf self, XAint32 parentNodeID, XAuint32 type,
-        XAchar *mimeType, XAint32 *pChildNodeID);
-
-XAresult XAMetadataInsertionItfImpl_GetSupportedKeysCount(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAboolean *pFreeKeys,
-        XAuint32 *pKeyCount, XAuint32 *pEncodingCount);
-
-XAresult XAMetadataInsertionItfImpl_GetKeySize(XAMetadataInsertionItf self,
-        XAint32 nodeID, XAuint32 keyIndex, XAuint32 *pKeySize);
-
-XAresult XAMetadataInsertionItfImpl_GetKey(XAMetadataInsertionItf self,
-        XAint32 nodeID, XAuint32 keyIndex, XAuint32 keySize,
-        XAMetadataInfo *pKey);
-
-XAresult XAMetadataInsertionItfImpl_GetFreeKeysEncoding(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAuint32 encodingIndex,
-        XAuint32 *pEncoding);
-
-XAresult XAMetadataInsertionItfImpl_InsertMetadataItem(
-        XAMetadataInsertionItf self, XAint32 nodeID, XAMetadataInfo *pKey,
-        XAMetadataInfo *pValue, XAboolean overwrite);
-
-XAresult XAMetadataInsertionItfImpl_RegisterCallback(
-        XAMetadataInsertionItf self, xaMetadataInsertionCallback callback,
-        void *pContext);
-
-/* XAMetadataInsertionItfImpl -specific methods */
-XAMetadataInsertionItfImpl* XAMetadataInsertionItfImpl_Create(
-        XAMediaRecorderImpl* impl);
-void XAMetadataInsertionItfImpl_AdaptCb(void *pHandlerCtx,
-        XAAdaptEvent *event);
-void XAMetadataInsertionItfImpl_Free(XAMetadataInsertionItfImpl* self);
-
-#endif /* XAMETADATAINSERTIONITF_H */
--- a/khronosfws/openmax_al/src/mediarecorder/xarecorditf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mediarecorder/xarecorditf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,7 +17,6 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include "xarecorditf.h"
 
 #include "xarecorditfadaptation.h"
@@ -238,7 +237,7 @@
     XAresult ret = XA_RESULT_SUCCESS;
     XARecordItfImpl* impl = GetImpl(self);
     DEBUG_API_A1("->XARecordItfImpl_SetCallbackEventsMask- %lu", eventFlags);
-    XA_IMPL_THREAD_SAFETY_ENTRY(XATSMediaRecorder);
+    //XA_IMPL_THREAD_SAFETY_ENTRY(XATSMediaRecorder);
 
     if (!impl || (eventFlags > (XA_RECORDEVENT_HEADATLIMIT
             | XA_RECORDEVENT_HEADATMARKER | XA_RECORDEVENT_HEADATNEWPOS
@@ -306,7 +305,7 @@
                 }
             }
         }
-    XA_IMPL_THREAD_SAFETY_EXIT(XATSMediaRecorder);
+    //XA_IMPL_THREAD_SAFETY_EXIT(XATSMediaRecorder);
     DEBUG_API("<-XARecordItfImpl_SetCallbackEventsMask");
     return ret;
     }
@@ -323,7 +322,7 @@
     XARecordItfImpl *impl = GetImpl(self);
     DEBUG_API("->XARecordItfImpl_GetCallbackEventsMask");
 
-    DEBUG_INFO_A1("pEventFlags - %u", pEventFlags);
+    DEBUG_INFO_A1("pEventFlags - %u", (int) pEventFlags);
 
     if (!impl || !pEventFlags)
         {
@@ -407,6 +406,7 @@
         /* invalid parameter */
         return XA_RESULT_PARAMETER_INVALID;
         }
+    
     if (impl->markerPosition == NO_POSITION)
         {
         DEBUG_ERR("No marker position set.");
@@ -533,7 +533,6 @@
 void XARecordItfImpl_Free(XARecordItfImpl* self)
     {
     DEBUG_API("->XARecordItfImpl_Free");
-    assert( self==self->self );
     XAAdaptationBase_RemoveEventHandler(self->adapCtx,
             &XARecordItfImpl_AdaptCb);
     free(self);
@@ -554,12 +553,10 @@
         DEBUG_API("<-XARecordItfImpl_AdaptCb");
         return;
         }
-    assert(event);
     /* check position update events */
     if (event->eventid == XA_ADAPT_POSITION_UPDATE_EVT)
         {
         XAuint32 newpos = 0;
-        assert(event->data);
         newpos = *((XAuint32*) (event->data));
         DEBUG_INFO_A1("new position %u",newpos);
         /* check if marker passed and callback needed */
--- a/khronosfws/openmax_al/src/metadataextractor/xametadataextractor.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/metadataextractor/xametadataextractor.c	Mon Oct 04 00:51:56 2010 +0300
@@ -17,12 +17,10 @@
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <assert.h>
 #include "xametadataextractor.h"
 #include "xadynamicsourceitf.h"
 #include "xadynintmgmtitf.h"
 #include "xametadataextractionitf.h"
-#include "xaconfigextensionsitf.h"
 
 #include "xacapabilitiesmgr.h"
 #include "xathreadsafety.h"
@@ -36,7 +34,6 @@
     &XA_IID_OBJECT,
     &XA_IID_DYNAMICINTERFACEMANAGEMENT,
     &XA_IID_METADATAEXTRACTION,
-    &XA_IID_CONFIGEXTENSION,
     &XA_IID_DYNAMICSOURCE
     };
 
@@ -140,9 +137,6 @@
         }
 
     // Mark interfaces that can be handled dynamically 
-    pBaseObj->interfaceMap[MDE_CONFIGEXTENSIONITF].isDynamic
-            = XA_BOOLEAN_TRUE;
-
     //Set ObjectItf to point to newly created object 
     *pMetadataExtractor = (XAObjectItf) &(pBaseObj->self);
 
@@ -280,11 +274,6 @@
                     pItf = XAMetadataExtractionItfImpl_Create(
                             pObjImpl->curAdaptCtx);
                     break;
-                case MDE_CONFIGEXTENSIONITF:
-                    pItf = XAConfigExtensionsItfImpl_Create();
-                    XAConfigExtensionsItfImpl_SetContext(pItf,
-                            pObjImpl->curAdaptCtx);
-                    break;
                 case MDE_DYNAMICSOURCEITF:
                     pItf = XADynamicSourceItfImpl_Create(
                             pObjImpl->curAdaptCtx);
@@ -353,8 +342,6 @@
     DEBUG_API("->XAMetadataExtractorImpl_FreeResources");
     XA_IMPL_THREAD_SAFETY_ENTRY_FOR_VOID_FUNCTIONS(XATSMediaPlayer);
 
-    assert( pObj && pImpl && pObj == pObj->self );
-
     for (itfIdx = 0; itfIdx < MDE_ITFCOUNT; itfIdx++)
         {
         pItf = pObj->interfaceMap[itfIdx].pItf;
@@ -371,9 +358,6 @@
                 case MDE_DIMITF:
                     XADIMItfImpl_Free(pItf);
                     break;
-                case MDE_CONFIGEXTENSIONITF:
-                    XAConfigExtensionsItfImpl_Free(pItf);
-                    break;
                 }
             pObj->interfaceMap[itfIdx].pItf = NULL;
             }
@@ -406,10 +390,6 @@
 XAresult XAMetadataExtractorImpl_DoAddItf(XAObjectItf self,
         XAObjItfMapEntry *mapEntry)
     {
-
-    XAObjectItfImpl* pObj = (XAObjectItfImpl*) (*self);
-    XAMetadataExtractorImpl* pImpl = (XAMetadataExtractorImpl*) (pObj);
-
     XAresult ret = XA_RESULT_SUCCESS;
     DEBUG_API("->XAMetadataExtractorImpl_DoAddItf");
 
@@ -417,13 +397,6 @@
         {
         switch (mapEntry->mapIdx)
             {
-            case MDE_CONFIGEXTENSIONITF:
-                mapEntry->pItf = XAConfigExtensionsItfImpl_Create();
-
-                XAConfigExtensionsItfImpl_SetContext(mapEntry->pItf,
-                        pImpl->adaptationCtxGst);
-
-                break;
             default:
                 DEBUG_ERR("XAMetadataExtractorImpl_DoAddItf unknown id");
                 ret = XA_RESULT_FEATURE_UNSUPPORTED;
@@ -471,9 +444,6 @@
         {
         switch (mapEntry->mapIdx)
             {
-            case MDE_CONFIGEXTENSIONITF:
-                XAConfigExtensionsItfImpl_Free(mapEntry->pItf);
-                break;
             default:
                 DEBUG_ERR("XAMetadataExtractorImpl_DoRemoveItf unknown id");
                 ret = XA_RESULT_FEATURE_UNSUPPORTED;
--- a/khronosfws/openmax_al/src/metadataextractor/xametadataextractor.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/metadataextractor/xametadataextractor.h	Mon Oct 04 00:51:56 2010 +0300
@@ -34,7 +34,6 @@
     MDE_OBJECTITF, /* <-keep this first */
     MDE_DIMITF,
     MDE_METADATAEXTRACTIONITF,
-    MDE_CONFIGEXTENSIONITF,
     MDE_DYNAMICSOURCEITF,
     MDE_ITFCOUNT
     } XAMetadataExtractorInterfaces;
--- a/khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -22,6 +22,7 @@
 #include "cmmfbackendengine.h"
 #include "markerpositiontimer.h"
 #include "positionupdatetimer.h"
+#include "prefetchlevelupdatetimer.h"
 #include "profileutilmacro.h"
 #include <mmf/common/mmfvideoenums.h>
 
@@ -51,6 +52,13 @@
 
 CMMFBackendEngine::CMMFBackendEngine() :
     iPositionUpdatePeriod(1000), /* default is 1000 millisec */
+	bPrefetchCallbackRegistered(EFalse),	
+	bStatusChangeMask(EFalse),
+	iPrefetchLevelUpdatePeriod(1000),
+	iPrefetchStatus(XA_PREFETCHSTATUS_SUFFICIENTDATA), //assume sufficient data
+	iNumStreams(0),
+	iAudioOnly(false),
+	iStreamInfoEventSubscribed(EFalse),
     iUriPtr(NULL, 0)
     {
     iRecordState = ERecorderNotReady;
@@ -110,8 +118,15 @@
                 iAudioPlayer, iVideoPlayer);
         iPlayItfPositionUpdateTimer->SetContext(iAdaptContext);
         }
+	if(!iPrefetchLevelUpdateTimer)
+	{
+		iPrefetchLevelUpdateTimer = CPrefetchLevelUpdateTimer::NewL(iAudioPlayer, iVideoPlayer);
+		iPrefetchLevelUpdateTimer->SetPrefetchLevelUpdatePeriod(iPrefetchLevelUpdatePeriod); //set default update period at beginning
+		iPrefetchLevelUpdateTimer->SetContext(iAdaptContext);
+	}
     iMarkerPositionTimer->Stop();
     iPlayItfPositionUpdateTimer->Stop();
+	iPrefetchLevelUpdateTimer->Stop();
     }
 
 TInt CMMFBackendEngine::SetFileName(char* uri, XAuint32 format,
@@ -215,9 +230,9 @@
                 RET_IF_ERR(iErrorCode, XA_RESULT_INTERNAL_ERROR);
 
                 /* Prepare utility */
-                TAG_TIME_PROFILING_BEGIN_NO_VAR_DEF;
+                TAG_TIME_PROFILING_BEGIN;
                 iVideoPlayer->Prepare();
-                TAG_TIME_PROFILING_END_NO_VAR_DEF; 
+                TAG_TIME_PROFILING_END; 
                 PRINT_TO_CONSOLE_TIME_DIFF;
 
                 /* Wait until we receive  MvpuoPrepareComplete */
@@ -331,6 +346,7 @@
     iMediaDuration = 0;
     iMarkerPositionTimer->ResetPlayer();
     iPlayItfPositionUpdateTimer->ResetPlayer();
+    iPrefetchLevelUpdateTimer->ResetPlayer();
     if (iErrorCode == KErrNone)
         {
         iMMFPlayerState = EPlayerPrepared;
@@ -344,6 +360,7 @@
             iMediaPlayerState = XA_PLAYSTATE_STOPPED;
             iMarkerPositionTimer->UseVideoPlayer();
             iPlayItfPositionUpdateTimer->UseVideoPlayer();
+			iPrefetchLevelUpdateTimer->UseVideoPlayer();
             if (m_pWs && m_pScr && m_pWindow)
                 {
                 TRect videoExtent = TRect(m_pWindow->Size());
@@ -354,6 +371,7 @@
                 TAG_TIME_PROFILING_END; 
                 PRINT_TO_CONSOLE_TIME_DIFF;
                 }
+			SetStreamInfo();
             }
         }
     if (iActiveSchedulerWait && iActiveSchedulerWait->IsStarted())
@@ -413,12 +431,12 @@
         {
         //RDebug::Print(_L("CMMFBackendEngine::MvpuoEvent: Audio Device taken"));
         PausePlayback();
-        XAAdaptEvent alEvent =
+        XAAdaptEvent event1 =
             {
             XA_PLAYITFEVENTS, XA_OBJECT_EVENT_RESOURCES_LOST, 0, NULL
             };
         XAAdaptationBase_SendAdaptEvents(
-                (XAAdaptationBaseCtx*) iAdaptContext, &alEvent);
+                (XAAdaptationBaseCtx*) iAdaptContext, &event1);
         }
     else if (event.iEventType == KMMFRefreshMetaData)
         {
@@ -434,11 +452,36 @@
 // From MRebufferCallback
 void CMMFBackendEngine::MvloLoadingStarted()
     {
+    	iPrefetchStatus = XA_PREFETCHSTATUS_UNDERFLOW;
+		
+    	if(bStatusChangeMask)
+    	{
+			XAAdaptEvent event =
+			{
+				XA_PREFETCHITFEVENTS, XA_PREFETCHEVENT_STATUSCHANGE, 0, NULL
+			};
+			XAAdaptationBase_SendAdaptEvents(
+				(XAAdaptationBaseCtx*) iAdaptContext, &event);
+    	}
+
+		iPrefetchLevelUpdateTimer->Start();
     }
 
 void CMMFBackendEngine::MvloLoadingComplete()
     {
-    //file playing
+		iPrefetchStatus = XA_PREFETCHSTATUS_SUFFICIENTDATA;
+
+		if(bStatusChangeMask)
+    	{
+			XAAdaptEvent event =
+				{
+					XA_PREFETCHITFEVENTS, XA_PREFETCHEVENT_STATUSCHANGE, 0, NULL
+				};
+			XAAdaptationBase_SendAdaptEvents(
+				(XAAdaptationBaseCtx*) iAdaptContext, &event);
+    	}
+
+		iPrefetchLevelUpdateTimer->Stop();
     }
 
 //MMdaAudioPlayerCallback
@@ -453,6 +496,7 @@
     iMediaDuration = 0;
     iMarkerPositionTimer->ResetPlayer();
     iPlayItfPositionUpdateTimer->ResetPlayer();
+    iPrefetchLevelUpdateTimer->ResetPlayer();
     if (iErrorCode == KErrNone)
         {
         iMediaDuration = aDuration;
@@ -461,6 +505,9 @@
         iMMFPlayerState = EPlayerOpened;
         iMarkerPositionTimer->UseAudioPlayer();
         iPlayItfPositionUpdateTimer->UseAudioPlayer();
+		iPrefetchLevelUpdateTimer->UseAudioPlayer();
+		//set stream parameters
+		SetStreamInfo();
         }
     if (iActiveSchedulerWait && iActiveSchedulerWait->IsStarted())
         {
@@ -615,6 +662,10 @@
         {
         iPlayItfPositionUpdateTimer->Stop();
         }
+    if (iPrefetchLevelUpdateTimer)
+        {
+        iPrefetchLevelUpdateTimer->Stop();
+        }
 
     if (iBaseVideoPlayer && iVideoPlayer)
         {
@@ -674,6 +725,8 @@
     iMarkerPositionTimer = NULL;
     delete iPlayItfPositionUpdateTimer;
     iPlayItfPositionUpdateTimer = NULL;
+	delete iPrefetchLevelUpdateTimer; 
+	iPrefetchLevelUpdateTimer = NULL;
     delete iBaseVideoPlayer;
     iBaseVideoPlayer = NULL;
     iVideoPlayer = NULL;
@@ -1363,58 +1416,36 @@
     }
 
 XAresult CMMFBackendEngine::GetNumStreams(XAuint32* numstreams)
-    {
-    XAresult retVal(XA_RESULT_SUCCESS);
-    TInt bitRate(0);
-    TInt numS(0);
-    if (iAPIBeingUsed == EAudioPlayerUtility)
-        {
-        numS = 1;
-        *numstreams = numS;
-        }
-    else if (iAPIBeingUsed == EVideoPlayerUtility)
-        {
-        TRAPD(err, bitRate = iVideoPlayer->VideoBitRateL());
-        if (!err && bitRate)
-            {
-            numS++;
-            *numstreams = numS;
-            }
-
-        bitRate = 0;
-        TRAP(err, bitRate = iVideoPlayer->AudioBitRateL());
-        if (!err && bitRate)
-            {
-            numS++;
-            *numstreams = numS;
-            }
-        }
-    return retVal;
-    }
+{
+    *numstreams = iNumStreams;
+    return XA_RESULT_SUCCESS;
+}
 
 XAresult CMMFBackendEngine::GetStreamInfo(XAuint32 streamindex,
         XAuint32* streamtype)
     {
     XAresult retVal(XA_RESULT_SUCCESS);
-    if (iAPIBeingUsed == EAudioPlayerUtility)
-        {
-        *streamtype = XA_DOMAINTYPE_AUDIO;
-        }
-    else if (iAPIBeingUsed == EVideoPlayerUtility)
-        {
-        switch (streamindex)
-            {
-            case 1:
-                *streamtype = XA_DOMAINTYPE_VIDEO;
-                break;
-            case 2:
-                *streamtype = XA_DOMAINTYPE_AUDIO;
-                break;
-            default:
-                retVal = XA_RESULT_PARAMETER_INVALID;
-                break;
-            }
-        }
+
+	switch (streamindex)
+	{
+		case 1: 			
+			if(iAudioOnly)
+			{
+				*streamtype = XA_DOMAINTYPE_AUDIO;
+			}
+			else
+			{
+				*streamtype = XA_DOMAINTYPE_VIDEO;
+			}
+			break;
+		case 2:
+			*streamtype = XA_DOMAINTYPE_AUDIO;
+			break;
+		default:
+			retVal = XA_RESULT_PARAMETER_INVALID;
+			break;
+	}
+
     return retVal;
     }
 
@@ -1471,13 +1502,11 @@
         switch (streamindex)
             {
             case 1:
-                TRAP(err, iVideoPlayer->SetVideoEnabledL(active))
-                ;
+                TRAP(err, iVideoPlayer->SetVideoEnabledL(active));
                 retVal = err;
                 break;
             case 2:
-                TRAP(err, iVideoPlayer->SetAudioEnabledL(active))
-                ;
+                TRAP(err, iVideoPlayer->SetAudioEnabledL(active));
                 retVal = err;
                 break;
             default:
@@ -1679,6 +1708,301 @@
         }
     return retVal;
     }
+	
+XAresult CMMFBackendEngine::RegisterPrefetchCallback(xaPrefetchCallback callback)
+{
+	if(*callback == NULL)
+	{
+		bPrefetchCallbackRegistered = EFalse;
+	}
+	else
+	{
+		bPrefetchCallbackRegistered = ETrue;
+	}
+	
+    return XA_RESULT_SUCCESS;
+}
+
+XAresult CMMFBackendEngine::SetPrefetchLevelUpdatePeriod(XApermille pfPeriod)
+{
+	if(iPrefetchLevelUpdateTimer)
+	{
+		iPrefetchLevelUpdateTimer->SetUpdateIncrement(pfPeriod); //In AL its effectively update increment and not time period
+	}
+		
+    return XA_RESULT_SUCCESS;
+}
+
+XAresult CMMFBackendEngine::SetPrefetchCallbackEventsMask(XAuint32 eventflags)
+{
+	if(eventflags & XA_PREFETCHEVENT_STATUSCHANGE)
+	{
+		bStatusChangeMask = ETrue;
+	}
+
+	if(iPrefetchLevelUpdateTimer)
+	{
+		iPrefetchLevelUpdateTimer->SetCallbackEventMask(eventflags);
+	}
+	
+    return XA_RESULT_SUCCESS;
+}
+
+XAresult CMMFBackendEngine::GetPrefetchStatus(XAuint32* status)
+{
+	if(!status)
+	{
+		return XA_RESULT_PARAMETER_INVALID;
+	}
+
+	*status = iPrefetchStatus;
+
+    return XA_RESULT_SUCCESS;
+}
+
+XAresult CMMFBackendEngine::GetPrefetchFillLevel(XApermille * level)
+{
+	if(!level)
+	{
+		return XA_RESULT_PARAMETER_INVALID;
+	}
+
+	TInt fillLevel = 0;
+	iPrefetchLevelUpdateTimer->GetLoadingProgress(fillLevel);
+	*level = fillLevel*10; //convert to permille
+
+	return XA_RESULT_SUCCESS;	
+}
+
+void CMMFBackendEngine::SetStreamInfo()
+{
+    TInt bitRate(0);
+
+	TInt numStreams = iNumStreams;
+	bool bAudioOnly = iAudioOnly;
+	
+	//reset
+	iNumStreams = 0;
+	iAudioOnly = ETrue;
+	
+    if (iAPIBeingUsed == EAudioPlayerUtility)
+	{
+        iNumStreams = 1;
+    }
+    else if (iAPIBeingUsed == EVideoPlayerUtility)
+    {
+        TRAPD(err, bitRate = iVideoPlayer->VideoBitRateL());
+        if (!err && bitRate)
+        {
+            iNumStreams++;
+            iAudioOnly = EFalse;
+        }
+
+        bitRate = 0;
+        TRAP(err, bitRate = iVideoPlayer->AudioBitRateL());
+        if (!err && bitRate)
+        {
+            iNumStreams++;
+        }
+    }
+
+	if(numStreams != iNumStreams)
+	{
+		SendStreamInfoEvent(0);
+	}
+	else if(bAudioOnly != iAudioOnly)
+	{
+		SendStreamInfoEvent(1);
+	}
+}
+
+void CMMFBackendEngine::SendStreamInfoEvent(TInt eventData)
+{
+	if(iStreamInfoEventSubscribed)
+	{
+		XAAdaptEvent event =
+			{
+				XA_STREAMINFOEVENTS, eventData, 0, NULL
+			};
+		XAAdaptationBase_SendAdaptEvents(
+			(XAAdaptationBaseCtx*) iAdaptContext, &event);
+	}
+}
+
+XAresult CMMFBackendEngine::RegisterStreamInfoCallback(xaStreamEventChangeCallback cb)
+{
+	if(*cb)
+	{
+		iStreamInfoEventSubscribed = ETrue;
+	}
+	else
+	{
+		iStreamInfoEventSubscribed = EFalse;
+	}
+
+	return XA_RESULT_SUCCESS;
+}
+
+XAresult CMMFBackendEngine::SetSourceRect(const XARectangle* rect)
+    {
+    XAresult retVal(XA_RESULT_PARAMETER_INVALID);
+    
+    switch (iMediaPlayerState)
+        {
+        case XA_PLAYSTATE_STOPPED:
+        case XA_PLAYSTATE_PAUSED:
+        case XA_PLAYSTATE_PLAYING:
+            if (iAPIBeingUsed == EAudioPlayerUtility)
+                {
+                retVal = XA_RESULT_FEATURE_UNSUPPORTED;
+                }
+            else
+                {
+                TRect inputrect(rect->left, rect->top, rect->left + rect->width, rect->top + rect->height);
+                TAG_TIME_PROFILING_BEGIN;
+                TRAPD(err, iVideoPlayer->SetCropRegionL(inputrect));
+                TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+                if(!err)
+                    {
+                    retVal = XA_RESULT_SUCCESS; 
+                    }
+                }
+            break;
+        case XA_PLAYSTATE_PLAYERUNINITIALIZED:
+        default:
+            break;
+        }
+    return retVal;
+    }
+
+XAresult CMMFBackendEngine::SetDestinationRect(const XARectangle* rect)
+    {
+    XAresult retVal(XA_RESULT_PARAMETER_INVALID);
+    
+    switch (iMediaPlayerState)
+        {
+        case XA_PLAYSTATE_STOPPED:
+        case XA_PLAYSTATE_PAUSED:
+        case XA_PLAYSTATE_PLAYING:
+            if (iAPIBeingUsed == EAudioPlayerUtility)
+                {
+                retVal = XA_RESULT_FEATURE_UNSUPPORTED;
+                }
+            else
+                {
+                TRect inputrect(rect->left, rect->top, rect->left + rect->width, rect->top + rect->height);
+                TAG_TIME_PROFILING_BEGIN;
+                TRAPD(err, iVideoPlayer->SetVideoExtentL(*m_pWindow,inputrect));
+                TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+                if(!err)
+                    {
+                    retVal = XA_RESULT_SUCCESS; 
+                    }
+                }
+            break;
+        case XA_PLAYSTATE_PLAYERUNINITIALIZED:
+        default:
+            break;
+        }
+    return retVal;
+    }
+
+XAresult CMMFBackendEngine::SetRotation(XAmillidegree rotation)
+    {
+    XAresult retVal(XA_RESULT_PARAMETER_INVALID);
+    
+    switch (iMediaPlayerState)
+        {
+        case XA_PLAYSTATE_STOPPED:
+        case XA_PLAYSTATE_PAUSED:
+        case XA_PLAYSTATE_PLAYING:
+            if (iAPIBeingUsed == EAudioPlayerUtility)
+                {
+                retVal = XA_RESULT_FEATURE_UNSUPPORTED;
+                }
+            else
+                {
+                TVideoRotation rot(EVideoRotationNone);
+                switch(rotation)
+                    {
+                    case 0:
+                        rot = EVideoRotationNone; 
+                        break;
+                    case 90000:
+                        rot = EVideoRotationClockwise90;
+                        break;
+                    case 180000:
+                        rot = EVideoRotationClockwise180;
+                        break;
+                    case 270000:
+                        rot = EVideoRotationClockwise270;
+                        break;
+                    default:
+                        rot = EVideoRotationNone; 
+                        break;
+                    }
+                TAG_TIME_PROFILING_BEGIN;
+                TRAPD(err, iVideoPlayer->SetRotationL(*m_pWindow, rot));
+                TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+                if(!err)
+                    {
+                    retVal = XA_RESULT_SUCCESS; 
+                    }
+                }
+            break;
+        case XA_PLAYSTATE_PLAYERUNINITIALIZED:
+        default:
+            break;
+        }
+    return retVal;
+    }
+
+XAresult CMMFBackendEngine::SetScaleOptions(XAuint32 options)
+    {
+    XAresult retVal(XA_RESULT_PARAMETER_INVALID);
+    
+    switch (iMediaPlayerState)
+        {
+        case XA_PLAYSTATE_STOPPED:
+        case XA_PLAYSTATE_PAUSED:
+        case XA_PLAYSTATE_PLAYING:
+            if (iAPIBeingUsed == EAudioPlayerUtility)
+                {
+                retVal = XA_RESULT_FEATURE_UNSUPPORTED;
+                }
+            else
+                {
+                TAutoScaleType scale(EAutoScaleBestFit);
+                switch(options)
+                    {
+                    case XA_VIDEOSCALE_STRETCH:
+                        scale = EAutoScaleStretch;
+                        break;
+                    case XA_VIDEOSCALE_FIT:
+                        scale = EAutoScaleBestFit;
+                        break;
+                    case XA_VIDEOSCALE_CROP:
+                        scale = EAutoScaleClip;
+                        break;
+                    default:
+                        scale = EAutoScaleBestFit;
+                        break;
+                    }
+                TAG_TIME_PROFILING_BEGIN;
+                TRAPD(err, iVideoPlayer->SetAutoScaleL(*m_pWindow, scale));
+                TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+                if(!err)
+                    {
+                    retVal = XA_RESULT_SUCCESS; 
+                    }
+                }
+            break;
+        case XA_PLAYSTATE_PLAYERUNINITIALIZED:
+        default:
+            break;
+        }
+    return retVal;
+    }
 
 extern "C"
     {
@@ -1927,4 +2251,57 @@
         {
         return ((CMMFBackendEngine *) (context))->GetPlaybackRateCapabilities(forward,backward);
         }
+    XAresult mmf_prefetchstatusitf_register_callback(	void * context,
+            												xaPrefetchCallback callback)
+	{
+        return ((CMMFBackendEngine *) (context))->RegisterPrefetchCallback(callback);
     }
+    XAresult mmf_prefetchstatusitf_set_fill_level_update_period(	void * context,
+            														XAmillisecond mSec)
+	{
+        return ((CMMFBackendEngine *) (context))->SetPrefetchLevelUpdatePeriod(mSec);
+    }
+
+	
+    XAresult mmf_prefetchstatusitf_set_callback_events_mask(void * context,
+            														XAuint32 evtMask)
+	{
+        return ((CMMFBackendEngine *) (context))->SetPrefetchCallbackEventsMask(evtMask);
+    }
+
+	
+	XAresult mmf_prefetchstatusitf_get_status(void *context, XAuint32* status)
+	{
+		return ((CMMFBackendEngine *) (context))->GetPrefetchStatus(status);
+	}
+	
+	XAresult mmf_prefetchstatusitf_get_fill_level(void *context, XApermille * fillLevel)
+	{
+		return ((CMMFBackendEngine *) (context))->GetPrefetchFillLevel(fillLevel);
+	}
+	
+	XAresult mmf_streaminfoitf_register_callback(void * context, xaStreamEventChangeCallback callback)
+	{
+		return ((CMMFBackendEngine *) (context))->RegisterStreamInfoCallback(callback);
+	}
+	
+    XAresult mmf_videoppitf_set_sourcerectangle(void * context, const XARectangle* rect)
+        {
+        return ((CMMFBackendEngine *) (context))->SetSourceRect(rect);
+        }
+
+    XAresult mmf_videoppitf_set_destinationrectangle(void * context, const XARectangle* rect)
+        {
+        return ((CMMFBackendEngine *) (context))->SetDestinationRect(rect);
+        }
+
+    XAresult mmf_videoppitf_set_rotation(void * context, XAmillidegree rotation)
+        {
+        return ((CMMFBackendEngine *) (context))->SetRotation(rotation);
+        }
+
+    XAresult mmf_videoppitf_set_scalingoptions(void * context, XAuint32 options)
+        {
+        return ((CMMFBackendEngine *) (context))->SetScaleOptions(options);
+        }
+    }
--- a/khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/cmmfbackendengine.h	Mon Oct 04 00:51:56 2010 +0300
@@ -54,6 +54,7 @@
 
 class CMarkerPositionTimer;
 class CPositionUpdateTimer;
+class CPrefetchLevelUpdateTimer;
 NONSHARABLE_CLASS(CMMFBackendEngine) : public CBase,
         public MVideoPlayerUtilityObserver,
         public MVideoLoadingObserver,
@@ -139,6 +140,20 @@
 
     XAresult SetPlaybackRate(XAint16 rate);
     XAresult GetPlaybackRateCapabilities(XAboolean* forward, XAboolean* backward);
+	//PrefetchStatus
+	XAresult RegisterPrefetchCallback(xaPrefetchCallback);
+	XAresult SetPrefetchLevelUpdatePeriod(XApermille);
+	XAresult SetPrefetchCallbackEventsMask(XAuint32 eventflags);
+	
+	XAresult GetPrefetchStatus(XAuint32* status);
+	XAresult GetPrefetchFillLevel(XApermille* level);
+
+	XAresult RegisterStreamInfoCallback(xaStreamEventChangeCallback);
+
+    XAresult SetSourceRect(const XARectangle* rect);
+    XAresult SetDestinationRect(const XARectangle* rect);
+    XAresult SetRotation(XAmillidegree rotation);
+    XAresult SetScaleOptions(XAuint32 options);
 
 public:
 
@@ -184,6 +199,10 @@
     void DoPostEvent(XAuint32 event);
     TInt InitializeURIForMMFUtil(char *uri);
 
+	//StreamInfo
+	void SetStreamInfo();
+	void SendStreamInfoEvent(TInt);	
+
 private:
     CVideoPlayerUtility2* iVideoPlayer;
     CBase* iBaseVideoPlayer;
@@ -245,6 +264,19 @@
     XAmillisecond iMarkerPosition;
     /* Property set by client */
     XAmillisecond iPositionUpdatePeriod;
+
+	//PrefetchStatus Interface variables
+	TBool bPrefetchCallbackRegistered;
+	TBool bStatusChangeMask;
+    CPrefetchLevelUpdateTimer* iPrefetchLevelUpdateTimer;
+    XAmillisecond iPrefetchLevelUpdatePeriod;
+	XAuint32 iPrefetchStatus;
+
+	//StreamInfo
+	TInt iNumStreams;
+	TBool iAudioOnly; 
+	TBool iStreamInfoEventSubscribed;
+
     /* Property set by client (for file without file:///) */
     HBufC* iUri; /* owns */
     TPtr iUriPtr;
@@ -319,6 +351,20 @@
 extern XAresult mmf_playbackrateitf_get_playbackratecaps(void * context,
                                 XAboolean* forward, XAboolean* backward);
 
+extern XAresult mmf_prefetchstatusitf_register_callback(void * context, xaPrefetchCallback callback);
+extern XAresult mmf_prefetchstatusitf_set_callback_events_mask(void * context,	XAuint32 cbMask);
+extern XAresult mmf_prefetchstatusitf_set_fill_level_update_period( void * context, XAmillisecond mSec);
+
+extern XAresult mmf_prefetchstatusitf_get_status(void *context, XAuint32* status);
+extern XAresult mmf_prefetchstatusitf_get_fill_level(void *context,XApermille* fillLevel);
+
+extern XAresult mmf_streaminfoitf_register_callback(void * context, xaStreamEventChangeCallback callback);
+
+extern XAresult mmf_videoppitf_set_sourcerectangle(void * context, const XARectangle* rect);
+extern XAresult mmf_videoppitf_set_destinationrectangle(void * context, const XARectangle* rect);
+extern XAresult mmf_videoppitf_set_rotation(void * context, XAmillidegree rotation);
+extern XAresult mmf_videoppitf_set_scalingoptions(void * context, XAuint32 options);
+
 #endif /* __cplusplus */
 
 #endif /* CMMFBackendEngine_H */
--- a/khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -60,6 +60,7 @@
 
 CMMFRadioBackendEngine::~CMMFRadioBackendEngine()
 {
+
 }
 
 CMMFRadioBackendEngine::CMMFRadioBackendEngine()
@@ -111,7 +112,7 @@
     }
 }
 
-TInt CMMFRadioBackendEngine::GetFrequency(TInt& aFreq)
+XAresult CMMFRadioBackendEngine::GetFrequency(TInt& aFreq)
 {
 //    DEBUG_CPP_API("CMMFRadioBackendEngine::GetFrequency");
     TInt ret = KErrNotFound;
@@ -125,10 +126,10 @@
         }
     }
 //  DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetFrequency RET: %d", ret);
-    return ret;
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::GetSignalStrength(TInt& aSignalStrength)
+XAresult CMMFRadioBackendEngine::GetSignalStrength(TInt& aSignalStrength)
 {
     TInt ret = KErrNotFound;
     if (iFmTunerUtility)
@@ -136,8 +137,7 @@
         ret = iFmTunerUtility->GetSignalStrength(aSignalStrength);
     }
 //    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetSignalStrength RET: %d", ret);
-//  RDebug::Print(_L("CMMFRadioBackendEngine::GetSignalStrength RET: %d"), ret);
-    return ret;
+    return TranslateError(ret);
 }
 
 void CMMFRadioBackendEngine::CancelSetFrequency()
@@ -164,7 +164,7 @@
     }
 }
 
-TInt CMMFRadioBackendEngine::GetFreqRange(TFmRadioFrequencyRange& aRange)
+XAresult CMMFRadioBackendEngine::GetFreqRange(TFmRadioFrequencyRange& aRange)
 {
     TInt ret = KErrNotFound;
     TInt minFreq;
@@ -181,11 +181,11 @@
             ret = KErrNone;
         }
     }
- //   DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetFreqRange RET: %d", ret);
-    return ret;
+//    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetFreqRange RET: %d", ret);
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::GetFreqRangeProperties(TFmRadioFrequencyRange& aRange, TInt& aMinFreq, TInt& aMaxFreq)
+XAresult CMMFRadioBackendEngine::GetFreqRangeProperties(TFmRadioFrequencyRange& aRange, TInt& aMinFreq, TInt& aMaxFreq)
 {
     TInt ret = KErrNotFound;
     if (iFmTunerUtility)
@@ -199,53 +199,44 @@
             ret = KErrNone;
         }
     }
-//    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetFreqRangeProperties RET: %d", ret);
-    return ret;
-}
-TInt CMMFRadioBackendEngine::GetMaxVolume(TInt& aMaxVol)
-{
-    TInt ret = KErrNotFound;
-    if (iRadioPlayerUtility)
-    {
-        ret = iRadioPlayerUtility->GetMaxVolume(aMaxVol);
-    }
-    return ret;
+ //   DEBUG_CPP_API_A1("CMMFRadioBackendEngine::GetFreqRangeProperties RET: %d", ret);
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::SetVolume(TInt aVol)
+XAresult CMMFRadioBackendEngine::SetVolume(TInt aVol)
 {
     TInt ret = KErrNotFound; 
     if (iRadioPlayerUtility)
     {
         ret = iRadioPlayerUtility->SetVolume(aVol);
     }
-    return ret;
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::SetMute(TBool aMute)
+XAresult CMMFRadioBackendEngine::SetMute(TBool aMute)
 {
     TInt ret = KErrNotFound;
     if (iRadioPlayerUtility)
     {
         ret = iRadioPlayerUtility->Mute(aMute);
     }
-    return ret;
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::GetVolume(TInt& aVol)
+XAresult CMMFRadioBackendEngine::GetVolume(TInt& aVol)
 {
     TInt ret = KErrNotFound;
     if (iRadioPlayerUtility)
     {
         ret = iRadioPlayerUtility->GetVolume(aVol);
     }
-    return ret;
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::GetForcedMonoReception(TUint& aForcedMono)
+XAresult CMMFRadioBackendEngine::GetForcedMonoReception(TUint& aForcedMono)
 {
     TInt ret = KErrNotFound;
-    TBool forceMono(EFalse);
+    TBool forceMono = XA_BOOLEAN_FALSE;
 
     if (iFmTunerUtility)
     {
@@ -253,7 +244,7 @@
         if (ret == KErrNotReady)
         {
             aForcedMono = XA_STEREOMODE_AUTO; // Radio Utility Default value
-            return KErrNone;
+            return TranslateError(KErrNone);
         }
     }
 
@@ -268,7 +259,7 @@
         else
             aForcedMono = XA_STEREOMODE_AUTO;
     }
-    return ret;
+    return TranslateError(ret);
 }
 
 void CMMFRadioBackendEngine::PlayRadio()
@@ -287,14 +278,14 @@
     }
 }
 
-TInt CMMFRadioBackendEngine::ForceMonoReception(TUint aForcedMono)
+XAresult CMMFRadioBackendEngine::ForceMonoReception(TUint aForcedMono)
 {
     TInt ret = KErrNotFound;
     TUint currentMode;
 
     ret = GetForcedMonoReception(currentMode);
     if (ret != XA_RESULT_SUCCESS)
-        return ret;
+        return TranslateError(ret);
 
     if (iFmTunerUtility)
     {
@@ -328,14 +319,14 @@
             }
         }
     }
- //   DEBUG_CPP_API_A1("CMMFRadioBackendEngine::ForceMonoReception RET: %d", ret);
-    return ret;
+//    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::ForceMonoReception RET: %d", ret);
+    return TranslateError(ret);
 }
 
 XAresult CMMFRadioBackendEngine::SetForceMonoFlag() 
 {
     TInt ret = KErrNotFound;
-    TBool forceMono;
+    TBool forceMono = XA_BOOLEAN_FALSE;
 
     if (iFmTunerUtility)
     {
@@ -344,10 +335,10 @@
         {
             // For Radio Utility Default value = XA_STEREOMODE_STEREO
             iForceStereo = ETrue;
-            return KErrNone;
+            return TranslateError(KErrNone);
         }
     }
-    if (forceMono == XA_STEREOMODE_MONO)
+    if (!forceMono)
     {
         iForceStereo = EFalse;
     }
@@ -355,27 +346,27 @@
     {
         iForceStereo = ETrue;
     }
-  return ret;
+  return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::GetSquelch(TBool& aSquelch)
+XAresult CMMFRadioBackendEngine::GetSquelch(TBool& aSquelch)
 {
     TInt ret = KErrNotFound;
     if (iFmTunerUtility)
     {
         ret = iFmTunerUtility->GetSquelch(aSquelch);
     }
-    return ret;
+    return TranslateError(ret);
 }
 
-TInt CMMFRadioBackendEngine::SetSquelch(TBool aSquelch)
+XAresult CMMFRadioBackendEngine::SetSquelch(TBool aSquelch)
 {
     TInt ret = KErrNotFound;
     if (iFmTunerUtility)
     {
         ret = iFmTunerUtility->SetSquelch(aSquelch);
     }
-    return ret;
+    return TranslateError(ret);
 }
 
 void CMMFRadioBackendEngine::SetAdaptContext(void * adaptcontext)
@@ -383,7 +374,7 @@
     iAdaptContext = (XAAdaptationBaseCtx*)adaptcontext;
 }
 
-XAresult TranslateError(TInt error)
+XAresult CMMFRadioBackendEngine::TranslateError(TInt error)
     {
     XAresult status(XA_RESULT_SUCCESS);
     switch(error)
@@ -391,6 +382,9 @@
         case KErrNone:
             status = XA_RESULT_SUCCESS;
             break;
+        case KErrNotFound:
+            status = XA_RESULT_MEMORY_FAILURE;
+            break;
         // to do: investigate and add other possible errors:
             
        /* case XA_RESULT_PRECONDITIONS_VIOLATED:
@@ -399,9 +393,7 @@
         case XA_RESULT_PARAMETER_INVALID:
 
             break;
-        case XA_RESULT_MEMORY_FAILURE:
 
-            break;
         case XA_RESULT_RESOURCE_ERROR:
 
             break;
@@ -432,9 +424,7 @@
         case XA_RESULT_INTERNAL_ERROR:
 
             break;
-        case XA_RESULT_UNKNOWN_ERROR:
 
-            break;
         case XA_RESULT_OPERATION_ABORTED:
 
             break;
@@ -443,7 +433,8 @@
             break;
             */
         default:
-        	break;
+            status = XA_RESULT_UNKNOWN_ERROR;
+            break;
         } // end switch
     return status;
     }
@@ -502,7 +493,7 @@
 void CMMFRadioBackendEngine::MrftoFrequencyRangeChange(
     TFmRadioFrequencyRange aNewRange )
 {
- //   DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrftoFrequencyRangeChange: aNewRange =  %d", aNewRange);
+//    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrftoFrequencyRangeChange: aNewRange =  %d", aNewRange);
     XARadioItfAdapt_FrequencyRangeChange((XAAdaptationBaseCtx*)iAdaptContext, aNewRange);
 }
 
@@ -559,9 +550,8 @@
     TInt aError )
 {
 //    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrftoSetFrequencyComplete: aError =  %d", aError);
-//  RDebug::Print(_L("CMMFRadioBackendEngine::MrftoFrrequencyComplete: aError = %d"), aError);
     TInt freq = 0;
-    if (!aError)
+    if (aError == KErrNone)
     {
         iFmTunerUtility->GetFrequency(freq);
     }
@@ -636,7 +626,7 @@
 {
 //    if ( aError )
 //    {
- //       DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrpoStateChange: aError =  %d", aError);
+//        DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrpoStateChange: aError =  %d", aError);
 //    }
 
 //    DEBUG_CPP_API_A1("CMMFRadioBackendEngine::MrpoStateChange: new state =  %d", aState);
@@ -662,6 +652,7 @@
     void cmmfradiobackendengine_delete(void* pContext)
     { 
         ((CMMFRadioBackendEngine*)(pContext))->DeleteInstance();
+        delete ((CMMFRadioBackendEngine*)pContext);
     }
 
     void  set_frequency(void* pContext, void* pAdaptcontext, XAuint32 freq)
@@ -712,11 +703,6 @@
         return ((CMMFRadioBackendEngine*)(pContext))->GetFreqRangeProperties((TFmRadioFrequencyRange&) aRange, (TInt&) *pMinFreq, (TInt&) *pMaxFreq);
     }
 
-    XAresult  get_max_volume(void* pContext, XAmillibel* pMaxVol)
-    {
-        return  ((CMMFRadioBackendEngine*)(pContext))->GetMaxVolume((TInt&)*pMaxVol);
-    }
-
     XAresult  set_volume(void* pContext, void* pAdaptcontext, XAuint32 vol)
     {
         ((CMMFRadioBackendEngine*)(pContext))->SetAdaptContext(pAdaptcontext);
--- a/khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/cmmfradiobackendengine.h	Mon Oct 04 00:51:56 2010 +0300
@@ -41,24 +41,23 @@
     ~CMMFRadioBackendEngine();
     
     void SetFrequency(TInt aFreq);
-    TInt GetFrequency(TInt& aFreq);
-    TInt GetSignalStrength(TInt& aFreq);
+    XAresult GetFrequency(TInt& aFreq);
+    XAresult GetSignalStrength(TInt& aFreq);
     void StationSeek(TBool aUpwards);
     void CancelSetFrequency();
     void CancelStationSeek();
     void SetFreqRange(TFmRadioFrequencyRange aRange);
-    TInt GetFreqRange(TFmRadioFrequencyRange& aRange);
-    TInt GetFreqRangeProperties(TFmRadioFrequencyRange& aRange, TInt& aMinFreq, TInt& aMaxFreq);
-    TInt GetMaxVolume(TInt& aMaxVol);
-    TInt SetVolume(TInt aVol);
-    TInt GetVolume(TInt& aVol);
-    TInt SetMute(TBool aMute);
-    TInt GetForcedMonoReception(TUint& aForcedMono);
-    TInt ForceMonoReception(TUint aForcedMono);
+    XAresult GetFreqRange(TFmRadioFrequencyRange& aRange);
+    XAresult GetFreqRangeProperties(TFmRadioFrequencyRange& aRange, TInt& aMinFreq, TInt& aMaxFreq);
+    XAresult SetVolume(TInt aVol);
+    XAresult GetVolume(TInt& aVol);
+    XAresult SetMute(TBool aMute);
+    XAresult GetForcedMonoReception(TUint& aForcedMono);
+    XAresult ForceMonoReception(TUint aForcedMono);
     void PlayRadio();
     void StopRadio();
-    TInt GetSquelch(TBool& aSquelch);
-    TInt SetSquelch(TBool aSquelch);
+    XAresult GetSquelch(TBool& aSquelch);
+    XAresult SetSquelch(TBool aSquelch);
     void SetAdaptContext(void* adaptcontext);
 
     /**
@@ -231,13 +230,13 @@
     XAresult SetForceMonoFlag();
 
 private:
-    CRadioUtility*          iRadioUtility; 
+    CRadioUtility*          iRadioUtility;
     CRadioFmTunerUtility*   iFmTunerUtility;
     CRadioPlayerUtility*    iRadioPlayerUtility;
     TBool                   iForceStereo;
     void*                   iAdaptContext;
     TFmRadioFrequencyRange  iDefaultFreqRange;
-    TUint                   iDefaultFrequency;     
+    TUint                   iDefaultFrequency;
     TInt                    iDefaultMinFreq;
     TInt                    iDefaultMaxFreq; 
        
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/prefetchlevelupdatetimer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,198 @@
+/*
+ * 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: Handles new position timer implementation 
+ *
+ */
+
+#include "prefetchlevelupdatetimer.h"
+#include <mdaaudiosampleplayer.h>
+#include <mdaaudiosampleplayer.h>
+#include <videoplayer2.h>
+#include <e32math.h>
+
+extern "C"
+{
+	#include "xaadaptationmmf.h"
+}
+
+#define RET_ERR_IF_ERR(s) if (s!=KErrNone) return s;
+#define RET_IF_ERR(s) if (s!=KErrNone) return;
+
+CPrefetchLevelUpdateTimer::CPrefetchLevelUpdateTimer(	CMdaAudioPlayerUtility* aAudioPlayer,
+        												CVideoPlayerUtility2* aVideoPlayer) :
+				    										CActive(CActive::EPriorityStandard), 
+															iAudioPlayer(aAudioPlayer),
+															iVideoPlayer(aVideoPlayer),
+															iNotifyIncrement(10),
+															iLastIncrement(0)
+{
+	CActiveScheduler::Add(this);
+}
+
+CPrefetchLevelUpdateTimer::~CPrefetchLevelUpdateTimer()
+{
+	Cancel();
+    iTimer.Close();
+}
+
+CPrefetchLevelUpdateTimer* CPrefetchLevelUpdateTimer::NewL(	CMdaAudioPlayerUtility* aAudioPlayer,
+        														CVideoPlayerUtility2* aVideoPlayer)
+{
+	CPrefetchLevelUpdateTimer* self = new (ELeave) CPrefetchLevelUpdateTimer(aAudioPlayer,aVideoPlayer);
+    CleanupStack::PushL(self);
+    self->ConstructL();
+    CleanupStack::Pop(self);
+    return self;
+}
+
+void CPrefetchLevelUpdateTimer::ConstructL()
+{
+	User::LeaveIfError(iTimer.CreateLocal());
+}
+
+void CPrefetchLevelUpdateTimer::SetContext(TAny* aCtx)
+{
+	iCtx = aCtx;
+}
+
+void CPrefetchLevelUpdateTimer::SetCallbackEventMask(XAuint32 aMask)
+{
+	iCallbackEventMask = aMask;
+}
+
+void CPrefetchLevelUpdateTimer::SetPrefetchLevelUpdatePeriod(XAmillisecond aPos)
+{
+    iUpdatePeriod = TTimeIntervalMicroSeconds32(aPos * 1000);
+}
+
+void CPrefetchLevelUpdateTimer::SetUpdateIncrement(XApermille inc)
+{
+	if(0<=inc && inc<=1000)
+	{
+		iNotifyIncrement = inc / 10;
+	}
+}
+
+void CPrefetchLevelUpdateTimer::UseAudioPlayer()
+{
+	iPlayerToUse = static_cast<CBase*> (iAudioPlayer);
+}
+void CPrefetchLevelUpdateTimer::UseVideoPlayer()
+{
+	iPlayerToUse = static_cast<CBase*> (iVideoPlayer);
+}
+
+void CPrefetchLevelUpdateTimer::ResetPlayer()
+{
+    iPlayerToUse = NULL;
+}
+
+void CPrefetchLevelUpdateTimer::Start()
+{
+    if (IsActive())
+    {
+	    Cancel();
+	}
+
+	SendFillLevelChangeEvent(); //send a fill level change event (0%) right away 
+	iLastIncrement = 0;
+
+	
+	iStatus = KRequestPending;
+	iTimer.After(iStatus, iUpdatePeriod);
+	SetActive();
+}
+
+void CPrefetchLevelUpdateTimer::Stop()
+{
+    if (IsActive())
+    {
+		SendFillLevelChangeEvent(); //send a fill level change event (100%)
+	}
+
+	Cancel();
+	iLastIncrement = 0;
+}
+
+void CPrefetchLevelUpdateTimer::RunL()
+{
+    if ((iStatus == KErrNone) && iPlayerToUse)
+	{
+		TInt progress = 0;
+		if(GetLoadingProgress(progress) == KErrNone)
+		{
+			if(progress==100)
+			{
+				Stop();
+			}
+			else if(progress >= (iLastIncrement + iNotifyIncrement))
+			{
+				SendFillLevelChangeEvent();
+				iLastIncrement = progress - (progress % iNotifyIncrement);
+			}
+		}
+	}
+
+	iStatus = KRequestPending;
+    iTimer.After(iStatus, iUpdatePeriod);
+    SetActive();
+}
+
+void CPrefetchLevelUpdateTimer::DoCancel()
+{
+    iTimer.Cancel();
+}
+
+TInt CPrefetchLevelUpdateTimer::RunError(TInt aError)
+{
+    return aError;
+}
+
+TInt CPrefetchLevelUpdateTimer::GetLoadingProgress(TInt& progress)
+{
+    TInt err(KErrNone);
+    if (iPlayerToUse && (iPlayerToUse == iAudioPlayer))
+    {
+		//TRAP(err, iAudioPlayer->GetAudioLoadingProgressL(progress));
+        //always retrun 100 for audio
+        progress = 100;
+    }
+    else if (iPlayerToUse && (iPlayerToUse == iVideoPlayer))
+    {
+        TRAP(err, iVideoPlayer->GetVideoLoadingProgressL(progress));
+    }
+    else
+	{
+		err = KErrNotFound;
+    }
+
+    return err;
+}
+
+void CPrefetchLevelUpdateTimer::SendFillLevelChangeEvent()
+{
+	if(iCallbackEventMask & XA_PREFETCHEVENT_FILLLEVELCHANGE)
+	{		
+		//use callback to send progress
+		XAAdaptEvent xaevent =
+		{
+			XA_PREFETCHITFEVENTS, XA_PREFETCHEVENT_FILLLEVELCHANGE, 0, 0
+		};
+	
+		XAAdaptationBase_SendAdaptEvents((XAAdaptationBaseCtx*) iCtx, &xaevent);
+	}
+
+}
+	
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/prefetchlevelupdatetimer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,78 @@
+/*
+ * 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: Handles marker timer implementation 
+ *
+ */
+
+#ifndef PREFETCHLEVELUPDATETIMER_H
+#define PREFETCHLEVELUPDATETIMER_H
+
+#include <e32base.h>
+#include "openmaxalwrapper.h"
+
+class CMdaAudioPlayerUtility;
+class CVideoPlayerUtility2;
+
+NONSHARABLE_CLASS(CPrefetchLevelUpdateTimer) : public CActive
+//class CPrefetchLevelUpdateTimer : public CActive
+    {
+public:
+    // Construct/destruct
+    static CPrefetchLevelUpdateTimer* NewL(	CMdaAudioPlayerUtility* aAudioPlayer,
+            								CVideoPlayerUtility2* aVideoPlayer);
+    virtual ~CPrefetchLevelUpdateTimer();
+
+public:
+    void SetContext(TAny* aCtx);
+    void SetPrefetchLevelUpdatePeriod(XAmillisecond aPos);
+	void SetUpdateIncrement(XApermille inc);
+    void SetCallbackEventMask(XAuint32 aMask);
+    void RegisterCallback(xaPrefetchCallback aCallback);
+    void Start();
+    void Stop();
+
+	TInt GetLoadingProgress(TInt&);
+
+    void UseAudioPlayer();
+    void UseVideoPlayer();
+    void ResetPlayer();
+protected:
+    // From CActive
+    void RunL();
+    void DoCancel();
+    TInt RunError(TInt aError);
+
+private:
+    CPrefetchLevelUpdateTimer(	CMdaAudioPlayerUtility* aAudioPlayer,
+            					CVideoPlayerUtility2* aVideoPlayer);
+    void ConstructL();
+
+	void SendFillLevelChangeEvent();
+
+private:
+    RTimer iTimer; // Has
+    TAny* iCtx;
+    XAuint32 iCallbackEventMask;
+    xaPrefetchCallback iCallback;
+    TTimeIntervalMicroSeconds32 iUpdatePeriod;
+
+    CBase* iPlayerToUse;
+    CMdaAudioPlayerUtility* iAudioPlayer;
+    CVideoPlayerUtility2* iVideoPlayer;
+
+	TInt iNotifyIncrement;
+	TInt iLastIncrement;
+};
+
+#endif /* PREFETCHLEVELUPDATETIMER_H */
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,6 @@
  *
  */
 
-#include <assert.h>
 #include <string.h>
 #include "xaadaptationmmf.h"
 #include "xaadaptationmmf.h"
@@ -45,7 +44,7 @@
         }
     else
         {
-        DEBUG_ERR("Invalid Adaptation Base Context.")
+        DEBUG_ERR("Invalid Adaptation Base Context.");
         return XA_RESULT_PARAMETER_INVALID;
         }
 
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaadaptationmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -135,11 +135,6 @@
 
     } XARadioAdaptationCtx_;
 /* FUNCTIONS */
-/*
- * gboolean XAAdaptationBase_GstBusCb( GstBus *bus, GstMessage *message, gpointer data );
- * Default CallBack handler for gst-bus messages. This will be called if object specific callback is
- * not implemented.
- */
 
 XAresult XAAdaptationBaseMMF_Init(XAAdaptationMMFCtx* pSelf, XAuint32 ctxId);
 XAresult XAAdaptationBaseMMF_PostInit(XAAdaptationMMFCtx* ctx);
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaengineadaptctxmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,89 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#include <string.h>
-#include "xaengineadaptctxmmf.h"
-#include "xaadaptationmmf.h"
-
-/*
- * XAAdaptationBaseCtx* XAEngineAdaptMMF_Create()
- * Allocates memory for Engine Adaptation Context and makes 1st phase initialization
- * @returns XAEngineAdaptationCtx* - Pointer to created context
- */
-XAAdaptationMMFCtx* XAEngineAdaptMMF_Create()
-{
-    XAEngineAdaptationMMFCtx *pSelf = NULL;
-    DEBUG_API("->XAEngineAdaptMMF_Create");
-
-    pSelf = (XAEngineAdaptationMMFCtx*)calloc(1, sizeof(XAEngineAdaptationMMFCtx));
-    if ( pSelf)
-    {
-        if( XAAdaptationBaseMMF_Init(&(pSelf->baseObj),XAEngineAdaptation)
-                    != XA_RESULT_SUCCESS )
-            {
-                DEBUG_ERR("Failed to init base context!!!");
-                free(pSelf);
-                pSelf = NULL;
-            }
-            else
-            {
-                /* Init internal variables */
-            }
-    }
-
-    DEBUG_API("<-XAEngineAdaptMMF_Create");
-    return (XAAdaptationMMFCtx*)pSelf;
-}
-
-/*
- * XAresult XAEngineAdaptMMF_PostInit()
- * 2nd phase initialization of engine Adaptation Context
- */
-XAresult XAEngineAdaptMMF_PostInit(XAAdaptationMMFCtx* bCtx)
-{
-    XAresult ret = XA_RESULT_SUCCESS;
-
-    DEBUG_API("<-XAEngineAdaptMMF_PostInit");
-    return ret;
-}
-
-/*
- * void XAEngineAdapt_Destroy(XAEngineAdaptationCtx* ctx)
- * Destroys Engine Adaptation Context
- * @param ctx - Engine Adaptation context to be destroyed
- */
-void XAEngineAdaptMMF_Destroy(XAAdaptationMMFCtx* bCtx)
-{
-	XAEngineAdaptationMMFCtx* ctx = NULL;
-
-	DEBUG_API("->XAEngineAdaptMMF_Destroy");
-//	if( !bCtx || bCtx->ctxId != XAEngineAdaptation )
-//	{
-//		DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
-//		DEBUG_API("<-XAEngineAdaptMMF_Destroy");
-//		return;
-//	}
-	ctx = (XAEngineAdaptationMMFCtx*)bCtx;
-  
-  XAAdaptationBaseMMF_Free(&(ctx->baseObj));
-
-
-    free(ctx);
-    ctx = NULL;
-
-    DEBUG_API("<-XAEngineAdaptMMF_Destroy");
-}
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaengineadaptctxmmf.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/*
-* 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: 
-*
-*/
-
-#ifndef XAENGINEADAPTCTXMMF_H_
-#define XAENGINEADAPTCTXMMF_H_
-
-#include "xaadaptationmmf.h"
-
-
-/* TYPEDEFS */
-
-typedef struct XAEngineAdaptationMMFCtx_ XAEngineAdaptationMMFCtx;
-
-/* FUNCTIONS */
-XAAdaptationMMFCtx* XAEngineAdaptMMF_Create(void);
-XAresult XAEngineAdaptMMF_PostInit(XAAdaptationMMFCtx* bCtx);
-void XAEngineAdaptMMF_Destroy(XAAdaptationMMFCtx* bCtx);
-
-#endif /* XAENGINEADAPTCTXMMF_H_ */
--- a/khronosfws/openmax_al/src/mmf_adaptation/xamediaplayeradaptctxmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xamediaplayeradaptctxmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,6 @@
  *
  */
 
-#include <assert.h>
 #include <stdlib.h>
 #include "xamediaplayeradaptctxmmf.h"
 #include "xaadaptationmmf.h"
@@ -82,6 +81,7 @@
             pSelf->cameraSinkSynced = XA_BOOLEAN_FALSE;
             pSelf->rateprops = XA_RATEPROP_SMOOTHVIDEO | XA_RATEPROP_NOPITCHCORAUDIO;
             pSelf->playrate = 1000;
+            pSelf->mmfContext = NULL;
             }
         }
     else
@@ -93,7 +93,7 @@
     if (pSelf)
         {
         res = mmf_backend_engine_init(&(pSelf->mmfContext));
-        if (!(pSelf->mmfContext) || (res != XA_RESULT_SUCCESS))
+        if ((res != XA_RESULT_SUCCESS) || !(pSelf->mmfContext))
             {
             /* TODO Check to make sure there is no undeleted MMF objects here*/
             DEBUG_ERR("Failed to init mmf context!!!");
@@ -111,12 +111,16 @@
             if (!pSelf->mmfMetadataContext)
                 {
                 DEBUG_ERR("Failed to init mmf metadata context!!!");
-                pSelf->mmfMetadataContext = NULL;
+                free(pSelf);
+                pSelf = NULL;
+                return NULL;
                 }
             }
         else
             {
             DEBUG_ERR("Failed to create XAMediaPlayerAdaptationMMFCtx !!!");
+            free(pSelf);
+            pSelf = NULL;
             return NULL;
             }
         }
--- a/khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -16,7 +16,6 @@
  */
 
 #include <string.h>
-#include <assert.h>
 #include "xamediarecorderadaptctxmmf.h"
 #include "xaadaptationmmf.h"
 #include "cmmfbackendengine.h"
@@ -39,60 +38,56 @@
 
     pSelf = (XAMediaRecorderAdaptationMMFCtx*) calloc(1,
             sizeof(XAMediaRecorderAdaptationMMFCtx));
-    if (pSelf)
-        {
-        if (XAAdaptationBaseMMF_Init(&(pSelf->baseObj),
-                XAMediaRecorderAdaptation) != XA_RESULT_SUCCESS)
-            {
-            DEBUG_ERR("Failed to init base context!!!");
-            free(pSelf);
-            pSelf = NULL;
-            }
-        else
-            {
-            pSelf->xaAudioSource = pAudioSrc;
-            pSelf->xaVideoSource = pImageVideoSrc;
-            pSelf->xaSink = pDataSnk;
-            pSelf->xaRecordState = XA_RECORDSTATE_STOPPED;
-            pSelf->curMirror = XA_VIDEOMIRROR_NONE;
-            pSelf->curRotation = 0;
-            pSelf->recModes = recModes;
-            pSelf->isRecord = XA_BOOLEAN_FALSE;
-
-            /* defaults from API spec */
-            pSelf->imageEncSettings.width = 640;
-            pSelf->imageEncSettings.height = 480;
-            pSelf->imageEncSettings.compressionLevel = 0;
-            pSelf->imageEncSettings.encoderId = XA_IMAGECODEC_JPEG;
-            pSelf->imageEncSettings.colorFormat = XA_COLORFORMAT_UNUSED;
-            /* no specified defaults for rest, determined later from container type */
-            pSelf->videoEncSettings.encoderId = XA_ADAPTID_UNINITED;
-            pSelf->videoEncSettings.width = 640;
-            pSelf->videoEncSettings.height = 480;
-            pSelf->videoEncSettings.frameRate = 15;
-            pSelf->audioEncSettings.encoderId = XA_ADAPTID_UNINITED;
-            pSelf->audioEncSettings.channelsIn = 2;
-            pSelf->audioEncSettings.channelsOut = 2;
-            pSelf->audioEncSettings.bitsPerSample = 8;
-            pSelf->audioEncSettings.bitRate = 128;
-            pSelf->audioEncSettings.sampleRate = 44100;
-            }
-        }
-    else
+    if (!pSelf)
         {
         DEBUG_ERR("Failed to create XAMediaRecorderAdaptationMMFCtx !!!");
+        DEBUG_API("<-XAMediaRecorderAdaptMMF_Create");
+        return NULL;
+        }
+
+    if (XAAdaptationBaseMMF_Init(&(pSelf->baseObj),
+            XAMediaRecorderAdaptation) != XA_RESULT_SUCCESS)
+        {
+        free(pSelf);
+        DEBUG_ERR("Failed to init base context!!!");
+        DEBUG_API("<-XAMediaRecorderAdaptMMF_Create");
         return NULL;
         }
 
-    if (pSelf)
+    pSelf->xaAudioSource = pAudioSrc;
+    pSelf->xaVideoSource = pImageVideoSrc;
+    pSelf->xaSink = pDataSnk;
+    pSelf->xaRecordState = XA_RECORDSTATE_STOPPED;
+    pSelf->curMirror = XA_VIDEOMIRROR_NONE;
+    pSelf->curRotation = 0;
+    pSelf->recModes = recModes;
+    pSelf->isRecord = XA_BOOLEAN_FALSE;
+
+    /* defaults from API spec */
+    pSelf->imageEncSettings.width = 640;
+    pSelf->imageEncSettings.height = 480;
+    pSelf->imageEncSettings.compressionLevel = 0;
+    pSelf->imageEncSettings.encoderId = XA_IMAGECODEC_JPEG;
+    pSelf->imageEncSettings.colorFormat = XA_COLORFORMAT_UNUSED;
+    /* no specified defaults for rest, determined later from container type */
+    pSelf->videoEncSettings.encoderId = XA_ADAPTID_UNINITED;
+    pSelf->videoEncSettings.width = 640;
+    pSelf->videoEncSettings.height = 480;
+    pSelf->videoEncSettings.frameRate = 15;
+    pSelf->audioEncSettings.encoderId = XA_ADAPTID_UNINITED;
+    pSelf->audioEncSettings.channelsIn = 2;
+    pSelf->audioEncSettings.channelsOut = 2;
+    pSelf->audioEncSettings.bitsPerSample = 8;
+    pSelf->audioEncSettings.bitRate = 128;
+    pSelf->audioEncSettings.sampleRate = 44100;
+
+    res = mmf_backend_engine_init(&(pSelf->mmfContext));
+    if (!(pSelf->mmfContext) || (res != XA_RESULT_SUCCESS))
         {
-        res = mmf_backend_engine_init(&(pSelf->mmfContext));
-        if (!(pSelf->mmfContext) || (res != XA_RESULT_SUCCESS))
-            {
-            DEBUG_ERR("Failed to init mmf context!!!");
-            free(pSelf);
-            pSelf = NULL;
-            }
+        free(pSelf);
+        DEBUG_ERR("Failed to init mmf context!!!");
+        DEBUG_API("<-XAMediaRecorderAdaptMMF_Create");
+        return NULL;
         }
 
     DEBUG_API("<-XAMediaRecorderAdaptMMF_Create");
@@ -116,6 +111,8 @@
     if(!bCtx)
         {
         ret = XA_RESULT_PARAMETER_INVALID;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
         return ret;
         }
     
@@ -126,12 +123,20 @@
         tempFormat = (XADataFormat_MIME*) (pSelf->xaSink->pFormat);
         ret = mmf_set_recorder_uri(pSelf->mmfContext, (char *) (tempUri->URI),
                 tempFormat->containerType);
-        if(ret == XA_RESULT_SUCCESS)
+        if (ret != XA_RESULT_SUCCESS)
             {
-            ret = mmf_set_adapt_context(pSelf->mmfContext, &(pSelf->baseObj));
+            DEBUG_ERR("Failed to set recorder uri on mmf!!!");
+            DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
+            return ret;
+            }
+        ret = mmf_set_adapt_context(pSelf->mmfContext, &(pSelf->baseObj));
+        if (ret != XA_RESULT_SUCCESS)
+            {
+            DEBUG_ERR("Failed to set adapt context on mmf!!!");
+            DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
+            return ret;
             }
         }
-
     DEBUG_API("<-XAMediaRecorderAdapt_PostInit");
     return ret;
     }
--- a/khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xamediarecorderadaptctxmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -35,7 +35,7 @@
     XAuint8 recModes;
 
     /* GST elements */
-    XAboolean isobjsink; /*is sink another XA object?*/
+    //XAboolean isobjsink; /*is sink another XA object?*/
     XAboolean isobjasrc; /*is audio source another XA object?*/
     XAboolean isobjvsrc; /*is video source another XA object?*/
     XAboolean encodingchanged;
--- a/khronosfws/openmax_al/src/mmf_adaptation/xametadataadaptctxmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xametadataadaptctxmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,6 @@
  *
  */
 
-#include <assert.h>
 #include <stdlib.h>
 #include "xametadataadaptctxmmf.h"
 #include "xaobjectitf.h"
--- a/khronosfws/openmax_al/src/mmf_adaptation/xammfcapabilitiesmgr.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xammfcapabilitiesmgr.c	Mon Oct 04 00:51:56 2010 +0300
@@ -25,198 +25,203 @@
 static XAresult XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities(
         XACapabilities **ppNode);
 
-/* XAresult XAMMFCapabilitiesMgr_UpdateCapabilitieList
- * Description: Update the capabilities list supported by GStreamer framework.
+/* XAresult XAMMFCapabilitiesMgr_UpdateCapabilitieList(
+ *       FrameworkMap *frameworkMap, XACapabilities **ppListHead)
+ * Description: Append capabilities supported by MMF framework.
  */
 XAresult XAMMFCapabilitiesMgr_UpdateCapabilitieList(
         FrameworkMap *frameworkMap, XACapabilities **ppListHead)
 
     {
     XAresult res = XA_RESULT_SUCCESS;
-    XACapabilities *lastNode;
-    XACapabilities *firstNode;
     XACapabilities *newNode = NULL;
     FWMgrFwType fwtype = FWMgrFWUknown;
     char *uri = NULL;
-    DEBUG_API("->XAGSTCapabilitiesMgr_UpdateCapabilitieList");
+    XACapabilities *lastNode = NULL;
+    XACapabilities *firstNode = NULL;
+
+    DEBUG_API("->XAMMFCapabilitiesMgr_UpdateCapabilitieList");
 
     if (!frameworkMap || !ppListHead)
         {
-        res = XA_RESULT_PARAMETER_INVALID;
-        return res;
-        }
-
-    lastNode = firstNode = *ppListHead;
-
-    /* traverse and point to the last node in the list */
-    while (lastNode && lastNode->next)
-        {
-        lastNode = lastNode->next;
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_UpdateCapabilitieList");
+        return XA_RESULT_PARAMETER_INVALID;
         }
 
     uri = "file:///c:/test.mp4";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWMMF)
         {
-        /* Add codec capabilities */
         newNode = NULL;
         res = XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAMMFCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        // We dont have a else for the code below because firstnode will
+        // always be NULL here
+        if (!firstNode)
             {
-            lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                {
-                firstNode = newNode;
-                }
+            firstNode = newNode;
             lastNode = newNode;
             }
         }
 
     uri = "file:///c:/test.amr";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWMMF)
         {
-        newNode = NULL;
         res = XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAMMFCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        if (!firstNode)
+            {
+            firstNode = newNode;
+            lastNode = newNode;
+            }
+        else
             {
             lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                {
-                firstNode = newNode;
-                }
             lastNode = newNode;
             }
         }
 
     uri = "file:///c:/test.wav";
     fwtype = XAFrameworkMgr_GetFramework(frameworkMap, uri, FWMgrMORecorder);
-
     if (fwtype == FWMgrFWMMF)
         {
-        newNode = NULL;
         res = XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities(&newNode);
         if (res != XA_RESULT_SUCCESS)
             {
+            XACapabilitiesMgr_DeleteCapabilitieList(&firstNode);
+            DEBUG_API("<-XAMMFCapabilitiesMgr_UpdateCapabilitieList");
             return res;
             }
-        if (lastNode)
+        if (!firstNode)
+            {
+            firstNode = newNode;
+            lastNode = newNode;
+            }
+        else
             {
             lastNode->next = newNode;
-            }
-        if (newNode)
-            { /* if a new node is created move lastNode to the new item */
-            if (!firstNode)
-                {
-                firstNode = newNode;
-                }
             lastNode = newNode;
             }
         }
-    /* if empty list, then append first node as the head */
-    if (!(*ppListHead))
+
+    /* if we have some capabilities supported by MMF framework */
+    if (firstNode)
         {
-        *ppListHead = firstNode;
+        /* if empty list, then append first node as the head */
+        if (!(*ppListHead))
+            {
+            *ppListHead = firstNode;
+            }
+        else /* traverse to the last item in the list and link firstNode to it */
+            {
+            lastNode = *ppListHead;
+            while(lastNode->next)
+                {
+                lastNode = lastNode->next;
+                }
+            lastNode->next = firstNode;
+            }
         }
-    DEBUG_API("<-XAGSTCapabilitiesMgr_UpdateCapabilitieList");
+    DEBUG_API("<-XAMMFCapabilitiesMgr_UpdateCapabilitieList");
     return res;
     }
 
+/* XAresult XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities(
+        XACapabilities **ppNode)
+ * Description: If return value is XA_RESULT_SUCCESS, Creats a new XACapabilities
+ * node and update ppNode to contain pointer to it.
+ * Otherwise return error code for failure.
+ */
 XAresult XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities(
         XACapabilities **ppNode)
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_AAC;
-    newNode->noOfEntries = 1;
+
 
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
+    /* create XAAudioCodecDescriptor for AAC and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(1, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-
-    newNode->pEntry = (void*) entries;
+    newNode->noOfEntries = 1;
+    newNode->pEntry = (void *)codecDesc;
 
-    entries->maxChannels = 2;
-    entries->minBitsPerSample = 16;
-    entries->maxBitsPerSample = 16;
-    entries->minSampleRate = 8000000; /*milliHz*/
-    entries->maxSampleRate = 48000000;
-    entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numSampleRatesSupported = 7;
-    entries->pSampleRatesSupported = (XAmilliHertz*) calloc(
-            entries->numSampleRatesSupported, sizeof(XAmilliHertz));
-    if (!entries->pSampleRatesSupported)
+    codecDesc->maxChannels = 2;
+    codecDesc->minBitsPerSample = 16;
+    codecDesc->maxBitsPerSample = 16;
+    codecDesc->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 96000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = (XAmilliHertz*)calloc(5, sizeof(XAmilliHertz));
+    if (!(codecDesc->pSampleRatesSupported))
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-    /* entries in milliHz */
-    entries->pSampleRatesSupported[0] = 8000000;
-    entries->pSampleRatesSupported[1] = 11025000;
-    entries->pSampleRatesSupported[2] = 16000000;
-    entries->pSampleRatesSupported[3] = 22050000;
-    entries->pSampleRatesSupported[4] = 32000000;
-    entries->pSampleRatesSupported[5] = 44100000;
-    entries->pSampleRatesSupported[6] = 48000000;
-
-    entries->minBitRate = 32000;
-    entries->maxBitRate = 256000;
-    entries->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numBitratesSupported = 8;
-    entries->pBitratesSupported = (XAuint32*) calloc(
-            entries->numBitratesSupported, sizeof(XAuint32));
-    if (!entries->pBitratesSupported)
+    codecDesc->pSampleRatesSupported[0] = 8000000;
+    codecDesc->pSampleRatesSupported[1] = 16000000;
+    codecDesc->pSampleRatesSupported[2] = 24000000;
+    codecDesc->pSampleRatesSupported[3] = 32000000;
+    codecDesc->pSampleRatesSupported[4] = 48050000;
+    codecDesc->numSampleRatesSupported = 5;
+    codecDesc->minBitRate = 32000;
+    codecDesc->maxBitRate = 256000;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = (XAuint32 *)calloc(8, sizeof(XAuint32));;
+    if (!(codecDesc->pBitratesSupported))
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-    (entries->pBitratesSupported)[0] = 32000;
-    (entries->pBitratesSupported)[1] = 64000;
-    (entries->pBitratesSupported)[2] = 96000;
-    (entries->pBitratesSupported)[3] = 128000;
-    (entries->pBitratesSupported)[4] = 160000;
-    (entries->pBitratesSupported)[5] = 192000;
-    (entries->pBitratesSupported)[6] = 224000;
-    (entries->pBitratesSupported)[7] = 256000;
-
-    entries->profileSetting = XA_AUDIOPROFILE_AAC_AAC;
-    entries->modeSetting = XA_AUDIOMODE_AAC_LC;
+    codecDesc->pBitratesSupported[0] = 32000;
+    codecDesc->pBitratesSupported[1] = 64000;
+    codecDesc->pBitratesSupported[2] = 96000;
+    codecDesc->pBitratesSupported[3] = 128000;
+    codecDesc->pBitratesSupported[4] = 160000;
+    codecDesc->pBitratesSupported[5] = 192000;
+    codecDesc->pBitratesSupported[6] = 224000;
+    codecDesc->pBitratesSupported[7] = 256000;
+    codecDesc->numBitratesSupported = 8;    
+    codecDesc->profileSetting = XA_AUDIOPROFILE_AAC_AAC;
+    codecDesc->modeSetting = XA_AUDIOMODE_AAC_MAIN;
 
     *ppNode = newNode;
+
+    DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAACEncoderCapabilities");
     return res;
     }
 
@@ -225,63 +230,66 @@
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_AMR;
-    newNode->noOfEntries = 1;
-
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
+    
+    /* create XAAudioCodecDescriptor for AMR and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(1, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-
-    newNode->pEntry = (void*) entries;
+    newNode->noOfEntries = 1;
+    newNode->pEntry = (void *)codecDesc;
 
-    entries->maxChannels = 1;
-    entries->minBitsPerSample = 8;
-    entries->maxBitsPerSample = 8;
-    entries->minSampleRate = 8000000; /*milliHz*/
-    entries->maxSampleRate = 8000000;
-    entries->isFreqRangeContinuous = XA_BOOLEAN_TRUE;
-    entries->numSampleRatesSupported = 1;
-    entries->minBitRate = 4750;
-    entries->maxBitRate = 12200;
-    entries->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numBitratesSupported = 8;
-    entries->pBitratesSupported = (XAuint32*) calloc(
-            entries->numBitratesSupported, sizeof(XAuint32));
-    if (!entries->pBitratesSupported)
+    codecDesc->maxChannels = 1;
+    codecDesc->minBitsPerSample = 8;
+    codecDesc->maxBitsPerSample = 8;
+    codecDesc->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 8000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = NULL;
+    codecDesc->numSampleRatesSupported = 0;
+    codecDesc->minBitRate = 4750;
+    codecDesc->maxBitRate = 12200;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = (XAuint32 *)calloc(8, sizeof(XAuint32));;
+    if (!(codecDesc->pBitratesSupported))
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-    (entries->pBitratesSupported)[0] = 4750;
-    (entries->pBitratesSupported)[1] = 5150;
-    (entries->pBitratesSupported)[2] = 5900;
-    (entries->pBitratesSupported)[3] = 6700;
-    (entries->pBitratesSupported)[4] = 7400;
-    (entries->pBitratesSupported)[5] = 7950;
-    (entries->pBitratesSupported)[6] = 10200;
-    (entries->pBitratesSupported)[7] = 12200;
+    codecDesc->pBitratesSupported[0] = 4750;
+    codecDesc->pBitratesSupported[1] = 5150;
+    codecDesc->pBitratesSupported[2] = 5900;
+    codecDesc->pBitratesSupported[3] = 6700;
+    codecDesc->pBitratesSupported[4] = 7400;
+    codecDesc->pBitratesSupported[5] = 7950;
+    codecDesc->pBitratesSupported[6] = 10200;
+    codecDesc->pBitratesSupported[7] = 12200;    
+    codecDesc->numBitratesSupported = 8;
+    codecDesc->profileSetting = XA_AUDIOPROFILE_AMR;
+    codecDesc->modeSetting = 0;
+    
+    *ppNode = newNode;
 
-    entries->profileSetting = XA_AUDIOPROFILE_AMR;
-    entries->modeSetting = 0;
-
-    *ppNode = newNode;
+    DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioAMREncoderCapabilities");
     return res;
     }
 
@@ -290,66 +298,69 @@
     {
     XAresult res = XA_RESULT_SUCCESS;
     XACapabilities *newNode = NULL;
-    XAAudioCodecDescriptor *entries = NULL;
+    XAAudioCodecDescriptor *codecDesc = NULL;
 
+    DEBUG_API("->XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
     newNode = (XACapabilities *) calloc(1, sizeof(XACapabilities));
     if (!newNode)
         {
-        res = XA_RESULT_MEMORY_FAILURE;
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
 
     newNode->capsType = AUD_E;
     newNode->xaid = XA_AUDIOCODEC_PCM;
+    
+    /* create XAAudioCodecDescriptor for PCM and initialize values */
+    codecDesc = (XAAudioCodecDescriptor*) calloc(1, sizeof(XAAudioCodecDescriptor));
+    if (!codecDesc)
+        {
+        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
+        }
     newNode->noOfEntries = 1;
-
-    /* Allocate array */
-    entries = (XAAudioCodecDescriptor*) calloc(1,
-            sizeof(XAAudioCodecDescriptor));
-    if (!entries)
-        {
-        res = XA_RESULT_MEMORY_FAILURE;
-        XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
-        }
+    newNode->pEntry = (void *)codecDesc;
 
-    newNode->pEntry = (void*) entries;
-
-    entries->maxChannels = 2;
-    entries->minBitsPerSample = 16;
-    entries->maxBitsPerSample = 16;
-    entries->minSampleRate = 8000000; /*milliHz*/
-    entries->maxSampleRate = 96000000;
-    entries->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->numSampleRatesSupported = 10;
-    entries->pSampleRatesSupported = (XAmilliHertz*) calloc(
-            entries->numSampleRatesSupported, sizeof(XAmilliHertz));
-    if (!entries->pSampleRatesSupported)
+    codecDesc->maxChannels = 2;
+    codecDesc->minBitsPerSample = 16;
+    codecDesc->maxBitsPerSample = 16;
+    codecDesc->minSampleRate = 8000000;
+    codecDesc->maxSampleRate = 96000000;
+    codecDesc->isFreqRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pSampleRatesSupported = (XAmilliHertz*)calloc(12, sizeof(XAmilliHertz));
+    if (!(codecDesc->pSampleRatesSupported))
         {
-        res = XA_RESULT_MEMORY_FAILURE;
         XACapabilitiesMgr_DeleteCapabilitieList(&newNode);
-        return res;
+        DEBUG_ERR("XA_RESULT_MEMORY_FAILURE");
+        DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
+        return XA_RESULT_MEMORY_FAILURE;
         }
-    /* entries in milliHz */
-    entries->pSampleRatesSupported[0] = 12000000;
-    entries->pSampleRatesSupported[1] = 16000000;
-    entries->pSampleRatesSupported[2] = 22050000;
-    entries->pSampleRatesSupported[3] = 24000000;
-    entries->pSampleRatesSupported[4] = 32000000;
-    entries->pSampleRatesSupported[5] = 44100000;
-    entries->pSampleRatesSupported[6] = 48000000;
-    entries->pSampleRatesSupported[7] = 64000000;
-    entries->pSampleRatesSupported[8] = 88200000;
-    entries->pSampleRatesSupported[9] = 96000000;
+    codecDesc->pSampleRatesSupported[0] = 8000000;
+    codecDesc->pSampleRatesSupported[1] = 11025000;            
+    codecDesc->pSampleRatesSupported[2] = 12000000;
+    codecDesc->pSampleRatesSupported[3] = 16000000;
+    codecDesc->pSampleRatesSupported[4] = 22050000;
+    codecDesc->pSampleRatesSupported[5] = 24000000;
+    codecDesc->pSampleRatesSupported[6] = 32000000;
+    codecDesc->pSampleRatesSupported[7] = 44100000;
+    codecDesc->pSampleRatesSupported[8] = 48000000;
+    codecDesc->pSampleRatesSupported[9] = 64000000;
+    codecDesc->pSampleRatesSupported[10] = 88200000;
+    codecDesc->pSampleRatesSupported[11] = 96000000;
+    codecDesc->numSampleRatesSupported = 12;
+    codecDesc->minBitRate = 0;
+    codecDesc->maxBitRate = 0;
+    codecDesc->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
+    codecDesc->pBitratesSupported = NULL;
+    codecDesc->numBitratesSupported = 0;
+    codecDesc->profileSetting = XA_AUDIOPROFILE_PCM;
+    codecDesc->modeSetting = 0;
+    
+    *ppNode = newNode;
 
-    entries->minBitRate = 0;
-    entries->maxBitRate = 0;
-    entries->isBitrateRangeContinuous = XA_BOOLEAN_FALSE;
-    entries->pBitratesSupported = NULL;
-    entries->numBitratesSupported = 0;
-    entries->profileSetting = XA_AUDIOPROFILE_PCM;
-    entries->modeSetting = 0;
-
-    *ppNode = newNode;
+    DEBUG_API("<-XAMMFCapabilitiesMgr_GetAudioPCMEncoderCapabilities");
     return res;
     }
--- a/khronosfws/openmax_al/src/mmf_adaptation/xangavideosink.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,166 +0,0 @@
-/*
-* 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: 
-*
-*/
-/*
-Media Helper Class for handling surface events
-
-Shy Ward
-*/
-
-#include "xangavideosink.h"
-#include "openmaxalwrapper.h"
-
-
-CNgaVideoSink* CNgaVideoSink::NewL()
-{
-	CNgaVideoSink* self = new CNgaVideoSink();
-	self->ConstructL();
-	return self;
-}
-
-CNgaVideoSink::~CNgaVideoSink()
-{
-    RemoveWindow();
-    
-    delete iMediaClientVideoDisplay;
-    if(IsActive())
-    {
-    Cancel();
-    }	
-}
-    
-void CNgaVideoSink::RemoveWindow()
-    {
-    iMediaClientVideoDisplay->RemoveDisplayWindow(*m_pWindow);
-    }
-
-CNgaVideoSink::CNgaVideoSink()
-                  :CActive(EPriorityStandard)
-{
-	iMediaClientVideoDisplay = NULL;
-  CActiveScheduler::Add(this);
-  m_ThreadHandle.Duplicate(RThread());
-  m_MediaHelperInitialized = EInitializedReady;
-  m_rotation = EVideoRotationNone;
-  m_scaleWidth = (100.0f);
-  m_scaleHeight = (100.0f);
-  m_horizPos = (EHorizontalAlignCenter);
-  m_vertPos = (EVerticalAlignCenter);      
-}
-
-void CNgaVideoSink::RunL()
-{
-	  iMediaClientVideoDisplay->SurfaceCreated(m_surfaceId,m_cropRect,m_pixelAspectRatio,m_cropRegion);	
-}
-
-void CNgaVideoSink::Activate()
-{
-    if(!IsActive())
-    {
-        iStatus = KRequestPending;
-        SetActive();
-    }
-}
-
-void CNgaVideoSink::DoCancel()
-{
-      if(iStatus.Int() == KRequestPending)
-      {
-          TRequestStatus* pStatus = &iStatus;
-          m_ThreadHandle.RequestComplete(pStatus, KErrCancel);
-    }
-}
-
-void CNgaVideoSink::CompleteRequest(TInt status)
-{
-    // Checking for IsActive alone results in this block getting executed 
-    // from other thread more thanone time. Hence the chk for iStatus
-    if(IsActive() && iStatus == KRequestPending)
-    {
-        TRequestStatus* pStatus = &iStatus;
-        m_ThreadHandle.RequestComplete(pStatus, status);
-    }
-}
-
-void CNgaVideoSink::SurfaceCreated(int surfaceid0,int surfaceid1,int surfaceid2,int surfaceid3,int crop_rect_tl_x,
-                     									 int crop_rect_tl_y,int crop_rect_br_x,int crop_rect_br_y,int aspect_ratio_num,int aspect_ratio_denom)
-{
-   
-   m_surfaceId.iInternal[0] = surfaceid0;
-   m_surfaceId.iInternal[1] = surfaceid1;
-   m_surfaceId.iInternal[2] = surfaceid2;
-   m_surfaceId.iInternal[3] = surfaceid3;
-   m_cropRect.iTl.iX = crop_rect_tl_x;
-   m_cropRect.iTl.iY = crop_rect_tl_y;
-   m_cropRect.iBr.iX = crop_rect_br_x;
-   m_cropRect.iBr.iY = crop_rect_br_y;
-   m_pixelAspectRatio.iNumerator = aspect_ratio_num;
-   m_pixelAspectRatio.iDenominator = aspect_ratio_denom;  
-   
-   Activate();
-   CompleteRequest(KErrNone);
-   	
-}
-
-void CNgaVideoSink::ConstructL()
-{
-	iMediaClientVideoDisplay = CMediaClientVideoDisplay::NewL(0);
-	Activate();
-} 
-
-void CNgaVideoSink::SetNativeDisplayInformation(void* display_info)
-{
-	//display_info is of type XADataSink
-	//display_info.pLocator is of type XADataLocator_NativeDisplay
-	XADataLocator_NativeDisplay* nativeDisplay;
-	XADataSink* videoSink = (XADataSink*)display_info;
-	
-	nativeDisplay = (XADataLocator_NativeDisplay*) (videoSink->pLocator);
-	//TODO: scrDevice is not been passed Properly
-  // Add the display window
-  m_cropRegion = TRect(((RWindow*)(nativeDisplay->hWindow))->Size());
-  m_videoExtent = TRect(((RWindow*)(nativeDisplay->hWindow))->Size());
-  m_cropRect = TRect(((RWindow*)(nativeDisplay->hWindow))->Size());
-  m_clipRect = TRect(((RWindow*)(nativeDisplay->hWindow))->Size());
-  m_cropRegion = TRect(((RWindow*)(nativeDisplay->hWindow))->Size());
-  m_pWindow = ((RWindow*)(nativeDisplay->hWindow));
-  
-
-  TRAPD(err, iMediaClientVideoDisplay->AddDisplayWindowL(m_pWindow, m_clipRect, m_cropRegion, m_videoExtent, m_scaleWidth, m_scaleHeight,
-                                               m_rotation, EAutoScaleBestFit, m_horizPos, m_vertPos, m_pWindow));  
-
-}
-
-extern "C" {
-
-    void* nga_video_sink_init()
-    { 
-          return CNgaVideoSink::NewL();
-    }
-        
-    void surface_created(void* context,int surfaceid0,int surfaceid1,int surfaceid2,int surfaceid3,int crop_rect_tl_x,
-                         									int crop_rect_tl_y,int crop_rect_br_x,int crop_rect_br_y,int aspect_ratio_num,int aspect_ratio_denom)
-    {
-            ((CNgaVideoSink*)(context))->SurfaceCreated(surfaceid0,surfaceid1,surfaceid2,surfaceid3,crop_rect_tl_x,
-                         									                  crop_rect_tl_y,crop_rect_br_x,crop_rect_br_y,aspect_ratio_num,aspect_ratio_denom);
-    }
-        
-    void  setup_native_display(void* context, void* display_info)
-    {
-            ((CNgaVideoSink*)(context))->SetNativeDisplayInformation(display_info);
-    }
-
-}
--- a/khronosfws/openmax_al/src/mmf_adaptation/xangavideosink.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,100 +0,0 @@
-/*
-* 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: 
-*
-*/
-/*
-Media Helper Class for handling surface events
-
-Shy Ward
-*/
-
-#ifndef XA_CNGAVIDEOSINK_H
-#define XA_CNGAVIDEOSINK_H
-
-#define ENABLE_GRAPHICS_SURFACE_INTEGRATION
-
-
-#ifdef __cplusplus
-
-#include <e32base.h>
-#ifdef ENABLE_GRAPHICS_SURFACE_INTEGRATION
-#include <graphics/surface.h> //TSurfaceId
-#include <mmf/common/mmfvideo.h> //TVideoAspectRatio
-#include <mediaclientvideodisplay.h>
-#endif
-
-NONSHARABLE_CLASS(CNgaVideoSink) : public CBase,
-                      public CActive
-    {
-public:
-
-    static CNgaVideoSink* NewL();
-    ~CNgaVideoSink();
-    void SurfaceCreated(int surfaceid0,int surfaceid1,int surfaceid2,int surfaceid3,int crop_rect_tl_x,
-         							 int crop_rect_tl_y,int crop_rect_br_x,int crop_rect_br_y,int aspect_ratio_num,int aspect_ratio_denom);    
-    void SetNativeDisplayInformation(void* display_info);
-    
-    // CActive methods
-    virtual void RunL();
-    virtual void DoCancel();
-    void Activate();
-    void RemoveWindow();
-    void CompleteRequest(TInt status = KErrNone);    
-    
-private:
-    CNgaVideoSink();
-    void ConstructL();
-    
-    RThread     m_ThreadHandle;
-    
-    enum InitializeState
-    {
-        EInitializedReady = 0,
-        EInitializedSuccess,
-        EInitializedFailed,
-    };
-    
-#ifdef ENABLE_GRAPHICS_SURFACE_INTEGRATION
-    CMediaClientVideoDisplay* iMediaClientVideoDisplay;
-    TSurfaceId surfaceId;
-    TRect m_clipRect;
-    TRect m_videoExtent;    
-    TRect m_cropRegion;
-    TVideoAspectRatio m_pixelAspectRatio;
-    RWindow* m_pWindow;
-    TRect m_cropRect;
-    TSurfaceId m_surfaceId;
-    InitializeState     m_MediaHelperInitialized;    
-    TVideoRotation m_rotation;
-    TReal32 m_scaleWidth;
-    TReal32 m_scaleHeight;
-    TInt m_horizPos;
-    TInt m_vertPos;    
-
-#endif /*ENABLE_GRAPHICS_SURFACE_INTEGRATION*/    
-    };
-#else  /* __cplusplus */
-
-
-extern void* nga_video_sink_init();
-
-extern void  surface_created(void* context,int surfaceid0,int surfaceid1,int surfaceid2,int surfaceid3,int crop_rect_tl_x,
-                     									int crop_rect_tl_y,int crop_rect_br_x,int crop_rect_br_y,int aspect_ratio_num,int aspect_ratio_denom);
-extern void  setup_native_display(void* context, void* display_info);
-
-
-#endif /* __cplusplus */
-
-#endif /* XA_CNGAVIDEOSINK_H */
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaplayitfadaptationmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaplayitfadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -47,7 +47,7 @@
     mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
 
 
-//    DEBUG_API_A1_STR("->XAPlayItfAdaptMMF_SetPlayState %s",PLAYSTATENAME(state));
+    DEBUG_API_A1_STR("->XAPlayItfAdaptMMF_SetPlayState %s",PLAYSTATENAME(state));
 
     /* bCtx and parameter pointer validation happens in the calling function.
      * We don't need to repeat it here*/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaprefetchstatusitfadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,128 @@
+/*
+ * 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: Play Itf Adapt MMF
+ *
+ */
+
+//#include "unistd.h"
+#include "xamediaplayeradaptctxmmf.h"
+#include "xaplayitfadaptationmmf.h"
+#include "xaadaptationmmf.h"
+#include "cmmfbackendengine.h"
+#include "cmmfradiobackendengine.h"
+#include <glib.h>
+
+
+XAresult XAPrefetchStatusItfAdaptMMF_GetPrefetchStatus(XAAdaptationBaseCtx *bCtx, XAuint32 *pStatus)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx;
+    if (!bCtx)
+    {
+        ret = XA_RESULT_PARAMETER_INVALID;
+        return ret;
+    }
+
+    mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
+    DEBUG_API("->XAPrefetchStatusItfAdaptMMF_GetPrefetchStatus");
+
+	ret = mmf_prefetchstatusitf_get_status(mCtx->mmfContext, pStatus);
+
+    DEBUG_API("<-XAPrefetchStatusItfAdaptMMF_GetPrefetchStatus");
+    return ret;
+
+}
+
+XAresult XAPrefetchStatusItfAdaptMMF_GetFillLevel(XAAdaptationBaseCtx *bCtx, XApermille *pLevel)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx;
+    if (!bCtx)
+    {
+        ret = XA_RESULT_PARAMETER_INVALID;
+        return ret;
+    }
+
+    mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
+    DEBUG_API("->XAPrefetchStatusItfAdaptMMF_GetFillLevel");
+
+	
+    ret = mmf_prefetchstatusitf_get_fill_level(mCtx->mmfContext, pLevel);
+
+    DEBUG_API("<-XAPrefetchStatusItfAdaptMMF_GetFillLevel");
+    return ret;
+}
+
+XAresult XAPrefetchStatusItfAdaptMMF_RegisterCallback(XAAdaptationBaseCtx *bCtx,
+                                                    			xaPrefetchCallback callback)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx;
+    if (!bCtx)
+    {
+        ret = XA_RESULT_PARAMETER_INVALID;
+        return ret;
+    }
+
+    mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
+    DEBUG_API("->XAPrefetchStatusItfAdaptMMF_RegisterCallback");
+
+	
+    ret = mmf_prefetchstatusitf_register_callback(mCtx->mmfContext, callback);
+
+    DEBUG_API("<-XAPrefetchStatusItfAdaptMMF_RegisterCallback");
+    return ret;
+}
+
+XAresult XAPrefetchStatusItfAdaptMMF_SetCallbackEventsMask(XAAdaptationBaseCtx *bCtx,
+                                                         XAuint32 eventFlags)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx;
+    if (!bCtx)
+    {
+        ret = XA_RESULT_PARAMETER_INVALID;
+        return ret;
+    }
+
+    mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
+    DEBUG_API("->XAPrefetchStatusItfAdaptMMF_SetCallbackEventsMask");
+
+	
+    ret = mmf_prefetchstatusitf_set_callback_events_mask(mCtx->mmfContext, eventFlags);
+
+    DEBUG_API("<-XAPrefetchStatusItfAdaptMMF_SetCallbackEventsMask");
+    return ret;
+}
+
+XAresult XAPrefetchStatusItfAdaptMMF_SetFillUpdatePeriod(XAAdaptationBaseCtx *bCtx,
+                                                       XApermille period)
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx;
+    if (!bCtx)
+    {
+        ret = XA_RESULT_PARAMETER_INVALID;
+        return ret;
+    }
+
+    mCtx = (XAMediaPlayerAdaptationMMFCtx*) bCtx;
+    DEBUG_API("->XAPrefetchStatusItfAdaptMMF_SetFillUpdatePeriod");
+
+    ret = mmf_prefetchstatusitf_set_fill_level_update_period(mCtx->mmfContext, period);
+
+    DEBUG_API("<-XAPrefetchStatusItfAdaptMMF_SetFillUpdatePeriod");
+    return ret;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaprefetchstatusitfadaptationmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,38 @@
+/*
+ * 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: Play Itf Adaptation MMF Header
+ *
+ */
+
+#ifndef XAPREFETCHSTATUSITFADAPTATIONMMF_H
+#define XAPREFETCHSTATUSITFADAPTATIONMMF_H
+
+#include "xaadaptationmmf.h"
+
+/* FUNCTIONS */
+
+XAresult XAPrefetchStatusItfAdaptMMF_GetPrefetchStatus(XAAdaptationBaseCtx *bCtx, XAuint32 *pStatus);
+
+XAresult XAPrefetchStatusItfAdaptMMF_GetFillLevel(XAAdaptationBaseCtx *bCtx, XApermille *pLevel);
+
+XAresult XAPrefetchStatusItfAdaptMMF_RegisterCallback(XAAdaptationBaseCtx *bCtx,
+                                                    xaPrefetchCallback callback);
+
+XAresult XAPrefetchStatusItfAdaptMMF_SetCallbackEventsMask(XAAdaptationBaseCtx *bCtx,
+                                                         XAuint32 eventFlags);
+
+XAresult XAPrefetchStatusItfAdaptMMF_SetFillUpdatePeriod(XAAdaptationBaseCtx *bCtx,
+                                                       XApermille period);
+
+#endif /* XAPLAYITFADAPTATIONMMF_H */
--- a/khronosfws/openmax_al/src/mmf_adaptation/xaradioitfadaptation.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xaradioitfadaptation.c	Mon Oct 04 00:51:56 2010 +0300
@@ -16,7 +16,6 @@
 */
 
 #include <unistd.h>
-#include <openMAXAL.h>
 #include "xadebug.h"
 #include "xaadaptationmmf.h"
 #include "xaradioitfadaptation.h"
@@ -214,7 +213,6 @@
  */
 void XARadioItfAdapt_Free()
 {
-    DEBUG_API("->XARadioItfAdapt_Free");
 }
 
 void XARadioItfAdapt_SeekComplete(XAAdaptationBaseCtx *ctx, TInt aError, TInt aFrequency)
--- a/khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -38,7 +38,7 @@
         XA_RECORDITFEVENTS, XA_RECORDEVENT_HEADSTALLED, 0, NULL
         };
     XAMediaRecorderAdaptationMMFCtx* mCtx = NULL;
-    DEBUG_API_A1("->XARecordItfAdaptMMF_SetRecordState %s",RECORDSTATENAME(state));
+    DEBUG_API_A1_STR("->XARecordItfAdaptMMF_SetRecordState %s",RECORDSTATENAMEMMF(state));
     if (!bCtx)
         {
         DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
--- a/khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xarecorditfadaptationmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -30,7 +30,7 @@
             "XA_RECORDSTATE_PAUSED",
             "XA_RECORDSTATE_RECORDING",
     };
-#define RECORDSTATENAME(i) ((i>0&&i<4)?recordstatenamesmmf[i-1]:"INVALID")
+#define RECORDSTATENAMEMMF(i) ((i>0&&i<4)?recordstatenamesmmf[i-1]:"INVALID")
 #endif /*_DEBUG*/
 
 /*forward declaration of position updater callback*/
--- a/khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -234,22 +234,6 @@
             streamInfo->duration = duration;
             }
             break;
-/*
-        case XA_DOMAINTYPE_MIDI:
-            {
-            XAMIDIStreamInformation* streamInfo =
-                    (XAMIDIStreamInformation*) info;
-            DEBUG_INFO("Assigning values for XAMIDIStreamInformation");*/
-            /*currently there is no way to get these information from gstreamer*/
-/*            streamInfo->channels = XA_MIDI_UNKNOWN;
-            streamInfo->tracks = XA_MIDI_UNKNOWN;
-            streamInfo->bankType = XA_MIDIBANK_DEVICE;*/
-            /*streamInfo->bitRate = 0;*/
-/*            streamInfo->langCountry[0] = '\0';
-            streamInfo->duration = duration;
-            }
-            break;
-*/
         case XA_DOMAINTYPE_VIDEO:
             {
             XAVideoStreamInformation* streamInfo =
@@ -263,21 +247,6 @@
             streamInfo->frameRate = frameRate;
             }
             break;
-/*
-        case XA_DOMAINTYPE_IMAGE:
-            {
-            XAImageStreamInformation* streamInfo =
-                    (XAImageStreamInformation*) info;
-            DEBUG_INFO("Assigning values for XAImageStreamInformation");
-            streamInfo->codecId = codecId;
-            streamInfo->width = width;
-            streamInfo->height = height;
-            streamInfo->presentationDuration = duration;
-            }
-            break;
-        default:
-            break;
-*/
         };
     DEBUG_API("<-XAStreamInformationItfAdaptMMF_QueryStreamInformation");
     return ret;
@@ -460,3 +429,12 @@
     DEBUG_API("->XAStreamInformationItfAdaptMMF_SetActiveStream");
     return ret;
     }
+
+XAresult XAStreamInformationItfAdaptMMF_RegisterCallback(
+					XAAdaptationBaseCtx *adaptCtx,
+					xaStreamEventChangeCallback callback)
+{
+    DEBUG_API("<->XAStreamInformationItfAdaptMMF_RegisterCallback");
+	return mmf_streaminfoitf_register_callback(((XAMediaPlayerAdaptationMMFCtx*) adaptCtx)->mmfContext,callback);
+}
+
--- a/khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xastreaminformationitfadaptationmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -46,4 +46,8 @@
         XAAdaptationBaseCtx *adaptCtx, XAuint32 streamNum, XAboolean active,
         XAboolean commitNow);
 
+XAresult XAStreamInformationItfAdaptMMF_RegisterCallback(
+				XAAdaptationBaseCtx *adaptCtx,
+				xaStreamEventChangeCallback callback);
+
 #endif /* XASTREAMINFORMATIONITFADAPTATION_H */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xavideopostprosessingitfadaptationmmf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,74 @@
+/*
+* 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: 
+*
+*/
+
+#include "xamediaplayeradaptctxmmf.h"
+#include "xavideopostprosessingitfadaptationmmf.h"
+#include "cmmfbackendengine.h"
+/*
+ * XAresult XAVideoPostProcessingItfAdapt_Commit(XAAdaptationMMFCtx *bCtx)
+ */
+XAresult XAVideoPostProcessingItfAdapt_Commit(XAAdaptationMMFCtx *bCtx,
+                                              XAmillidegree rotation,
+                                              XAuint32 scaleOptions,
+                                              XAuint32 backgroundColor,
+                                              XAuint32 renderingHints,
+                                              const XARectangle *pSrcRect,
+                                              const XARectangle *pDestRect,
+                                              XAuint32 mirror,
+                                              XAboolean isMirror,
+                                              XAboolean isRotate,
+                                              XAboolean isDestRect,
+                                              XAboolean isSrcRect,
+                                              XAboolean isScaleOptions
+                                              )
+{
+    XAresult ret = XA_RESULT_SUCCESS;
+    XAMediaPlayerAdaptationMMFCtx* mCtx = (XAMediaPlayerAdaptationMMFCtx*)bCtx;
+    
+    DEBUG_API("->XAVideoPostProcessingItfAdapt_Commit");
+
+    if( !bCtx || (bCtx->baseObj.ctxId != XAMediaPlayerAdaptation))
+    {
+        DEBUG_ERR("XA_RESULT_PARAMETER_INVALID");
+        DEBUG_API("<-XAVideoPostProcessingItfAdapt_Commit");
+        return XA_RESULT_PARAMETER_INVALID;
+    }
+
+    if(isSrcRect)
+        {
+        ret = mmf_videoppitf_set_sourcerectangle(mCtx->mmfContext, pSrcRect);
+        }
+    
+    if(ret == XA_RESULT_SUCCESS && isDestRect)
+        {
+        ret = mmf_videoppitf_set_destinationrectangle(mCtx->mmfContext, pDestRect);
+        }
+    
+    if(ret == XA_RESULT_SUCCESS && isRotate)
+        {
+        ret = mmf_videoppitf_set_rotation(mCtx->mmfContext, rotation);
+        }
+
+    if(ret == XA_RESULT_SUCCESS && isScaleOptions)
+        {
+        ret = mmf_videoppitf_set_scalingoptions(mCtx->mmfContext, scaleOptions);
+        }
+
+    DEBUG_API("<-XAVideoPostProcessingItfAdapt_Commit");
+    return ret;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/mmf_adaptation/xavideopostprosessingitfadaptationmmf.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,52 @@
+/*
+* 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: 
+*
+*/
+
+#ifndef XAVIDEOPOSTPROSESSINGITFADAPTATIONMMF_H
+#define XAVIDEOPOSTPROSESSINGITFADAPTATIONMMF_H
+
+#include "xaadaptationmmf.h"
+#include "xathreadsafety.h"
+
+/* MACROS */
+#define BLACK_BG_COLOR_MASK  0x00FFFFFF
+#define GREEN_BG_COLOR_MASK  0x0000FF00
+#define BLUE_BG_COLOR_MASK   0x000000FF
+#define ALPHA_VALUE_MASK     0x000000FF
+
+#define TEST_VIDEO_WIDTH     640
+#define TEST_VIDEO_HEIGHT    480
+
+#define ROTATION_RATIO       360000
+#define ROTATION_RATIO_NEG   -360000
+
+/* FUNCTIONS */
+XAresult XAVideoPostProcessingItfAdapt_Commit(XAAdaptationMMFCtx *bCtx,
+                                              XAmillidegree rotation,
+                                              XAuint32 scaleOptions,
+                                              XAuint32 backgroundColor,
+                                              XAuint32 renderingHints,
+                                              const XARectangle *pSrcRect,
+                                              const XARectangle *pDestRect,
+                                              XAuint32 mirror,
+                                              XAboolean isMirror,
+                                              XAboolean isRotate,
+                                              XAboolean isDestRect,
+                                              XAboolean isSrcRect,
+                                              XAboolean isScaleOptions
+                                              );
+
+#endif /* XAVIDEOPOSTPROSESSINGITFADAPTATIONMMF_H */
--- a/khronosfws/openmax_al/src/radio/xaradiodevice.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/radio/xaradiodevice.c	Mon Oct 04 00:51:56 2010 +0300
@@ -19,7 +19,6 @@
 #include <stdlib.h>
 #include "xaradiodevice.h"
 #include "xaradioitf.h"
-#include "xaconfigextensionsitf.h"
 #include "xadynintmgmtitf.h"
 #include "xathreadsafety.h"
 #include "xaradioadaptctx.h"
@@ -28,7 +27,6 @@
 {
     &XA_IID_OBJECT,
     &XA_IID_RADIO,
-    &XA_IID_CONFIGEXTENSION,
     &XA_IID_DYNAMICINTERFACEMANAGEMENT
 };
 
@@ -117,14 +115,16 @@
         }
     }
 
-    *pDevice = (XAObjectItf)&(pBaseObj->self);
     pImpl->adaptationCtx = XARadioAdapt_Create();
     if (pImpl->adaptationCtx == NULL)
     {
+        XAObjectItfImpl_Destroy((XAObjectItf)&(pBaseObj));
         XA_IMPL_THREAD_SAFETY_EXIT(XATSRadio);
-        DEBUG_API("<-XARadioDeviceImpl_Create With ERROR");
+        DEBUG_API("<-XARadioDeviceImpl_CreateRadioDevice With ERROR");
         return XA_RESULT_RESOURCE_ERROR;
     }
+
+    *pDevice = (XAObjectItf)&(pBaseObj->self);
     XA_IMPL_THREAD_SAFETY_EXIT(XATSRadio);
     DEBUG_API("<-XARadioDeviceImpl_Create");
     return XA_RESULT_SUCCESS;
@@ -226,10 +226,6 @@
                 case RADIO_RADIOITF:
 
                     pItf = XARadioItfImpl_Create( pObjImpl->adaptationCtx );
-
-                    break;
-                case RADIO_CONFIGEXTENSIONITF:
-                    pItf = XAConfigExtensionsItfImpl_Create();
                     break;
                 case RADIO_DIMITF:
                     pItf = XADIMItfImpl_Create();
@@ -291,9 +287,6 @@
                 case RADIO_RADIOITF:
                     XARadioItfImpl_Free( pItf );
                     break;
-                case RADIO_CONFIGEXTENSIONITF:
-                    XAConfigExtensionsItfImpl_Free( pItf );
-                    break;
                 case RADIO_DIMITF:
                     XADIMItfImpl_Free( pItf );
                     break;
--- a/khronosfws/openmax_al/src/radio/xaradiodevice.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/radio/xaradiodevice.h	Mon Oct 04 00:51:56 2010 +0300
@@ -35,7 +35,6 @@
 {
     RADIO_OBJECTITF,
     RADIO_RADIOITF,
-    RADIO_CONFIGEXTENSIONITF,
     RADIO_DIMITF,
     RADIO_ITFCOUNT
 } XARadioDeviceInterfaces;
--- a/khronosfws/openmax_al/src/radio/xaradioitf.c	Fri Sep 17 08:33:15 2010 +0300
+++ b/khronosfws/openmax_al/src/radio/xaradioitf.c	Mon Oct 04 00:51:56 2010 +0300
@@ -169,7 +169,7 @@
         DEBUG_API("<-XARadioItfImpl_GetFreqRangeProperties");
         return XA_RESULT_PARAMETER_INVALID;
     }
-
+    
     ret = XARadioItfAdapt_GetFreqRangeProperties( (XAAdaptationMMFCtx*)impl->adapCtx,
             range, pMinFreq, pMaxFreq );
     if (ret == XA_RESULT_SUCCESS)
@@ -497,7 +497,7 @@
 {
     XAresult ret = XA_RESULT_SUCCESS;
     XAuint32 presetValue = 0;
-    pNumPresets = &presetValue;
+    *pNumPresets = presetValue;
     DEBUG_API("->XARadioItfImpl_GetNumberOfPresets");
 
     return ret;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/khronosfws/openmax_al/src/xadebugtraceutility/xadebugtraceutility.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,80 @@
+/*
+* Copyright (c) 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"
+* 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:  xadebugtraceutility functionality
+*
+*/
+
+#include <e32debug.h>
+
+extern "C"  {
+
+    void xa_print(const char* formatString)
+    {
+        RDebug::Printf(formatString);
+    }
+
+    void xa_print_1(const char* formatString, int a1)
+    {
+        RDebug::Printf(formatString, a1);
+    }
+
+    void xa_print_1_str(const char* formatString, const char* a1)
+    {
+        RDebug::Printf(formatString, a1);
+    }
+
+    void xa_print_2(const char* formatString, int a1, int a2)
+    {
+        RDebug::Printf(formatString, a1, a2);
+    }
+
+    void xa_print_2_str(const char* formatString, const char* a1, const char* a2)
+    {
+        RDebug::Printf(formatString, a1, a2);
+    }
+
+    void xa_print_3(const char* formatString, int a1, int a2, int a3)
+    {
+        RDebug::Printf(formatString, a1, a2, a3);
+    }
+
+    void xa_print_4(const char* formatString, int a1, int a2, int a3, int a4)
+    {
+        RDebug::Printf(formatString, a1, a2, a3, a4);
+    }
+
+    void xa_heap_total_alloc_print(const char* formatString)
+    {
+        RThread thread;
+        TInt cells = User::CountAllocCells();
+        TInt threadId = thread.Id();
+        RDebug::Printf(formatString);
+        RDebug::Print(_L("ThreadId[%d] Cells[%d]"),threadId, cells);
+    }
+}
+
+void xa_cppprint(const char* formatString)
+{
+    RDebug::Printf(formatString);
+}
+
+void xa_cppprint_1(const char* formatString, int a1)
+{
+    RDebug::Printf(formatString, a1);
+}
+
+void xa_cppprint_2(const char* formatString, int a1, int a2)
+{
+    RDebug::Printf(formatString, a1, a2);
+}
--- a/mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/group/MetaDataDisplay.pkg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/group/MetaDataDisplay.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -21,7 +21,7 @@
 &EN
 
 ; Package header
-#{"STIF MetaDataDisplayTest Application"},(0x101F7961),1,0,0,TYPE=SA
+#{"STIF MetaDataDisplayTest Application"},(0x10207CBB),1,0,0,TYPE=SA, RU
 
 ; Localised Vendor name
 %{"Nokia EN"}
@@ -44,17 +44,29 @@
 ; None
 
 ; Install files
-; "..\..\data\mmc\DownUnder_remix.aac"   -   "e:\testing\data\DownUnder_remix.aac"
-; "..\..\data\mmc\DRM_NRTmeta.dcf"   -   "e:\testing\data\DRM_NRTmeta.dcf"
-; "..\..\data\mmc\JapJap.mp3"   -   "e:\testing\data\JapJap.mp3"
-; "..\..\data\mmc\JepJep.mp3"   -   "e:\testing\data\JepJep.mp3"
-; "..\..\data\mmc\JipJip.mp3"   -   "e:\testing\data\JipJip.mp3"
-; "..\..\data\mmc\MP3_MD.mp3"   -   "e:\testing\data\MP3_MD.mp3"
-; "..\..\data\mmc\test3gp.3gp"   -   "e:\testing\data\test3gp.3gp"
-; "..\..\data\mmc\testm4a.m4a"   -   "e:\testing\data\testm4a.m4a"
-; "..\..\data\mmc\testmp4.mp4"   -   "e:\testing\data\testmp4.mp4"
-"..\..\init\TestFramework.ini"   -   "c:\TestFramework\TestFramework.ini" 
-"..\..\conf\MetaDataDisplay.cfg"   -   "c:\TestFramework\MetaDataDisplay.cfg"
+"..\..\data\mmc\DownUnder_remix.aac"   -   "c:\testing\data\DownUnder_remix.aac"
+"..\..\data\mmc\DRM_NRTmeta.dcf"   -   "c:\testing\data\DRM_NRTmeta.dcf"
+"..\..\data\mmc\JapJap.mp3"   -   "c:\testing\data\JapJap.mp3"
+"..\..\data\mmc\JepJep.mp3"   -   "c:\testing\data\JepJep.mp3"
+"..\..\data\mmc\JipJip.mp3"   -   "c:\testing\data\JipJip.mp3"
+"..\..\data\mmc\MP3_MD.mp3"   -   "c:\testing\data\MP3_MD.mp3"
+"..\..\data\mmc\test3gp.3gp"   -   "c:\testing\data\test3gp.3gp"
+"..\..\data\mmc\testm4a.m4a"   -   "c:\testing\data\testm4a.m4a"
+"..\..\data\mmc\testmp4.mp4"   -   "c:\testing\data\testmp4.mp4"
+"..\..\data\mmc\320kbps_44khz_cbr_stereo.wma"   -   "c:\testing\data\320kbps_44khz_cbr_stereo.wma"
+"..\..\data\mmc\wma_no_data.wma"   -   "c:\testing\data\wma_no_data.wma"
+"..\..\data\mmc\IDV22.mp3"   -   "c:\testing\data\IDV22.mp3"
+"..\..\data\mmc\IDV22_no_data.mp3"   -   "c:\testing\data\IDV22_no_data.mp3"
+"..\..\data\mmc\IDV23.mp3"   -   "c:\testing\data\IDV23.mp3"
+"..\..\data\mmc\IDV23_no_data.mp3"   -   "c:\testing\data\IDV23_no_data.mp3"
+"..\..\data\mmc\IDV24.mp3"   -   "c:\testing\data\IDV24.mp3"
+"..\..\data\mmc\IDV24_no_data.mp3"   -   "c:\testing\data\IDV24_no_data.mp3"
+"..\..\data\mmc\122-24KHz-31b-MP4-LC.odf"   -   "c:\testing\data\122-24KHz-31b-MP4-LC.odf"
+"..\..\data\mmc\Madona_Papa_Dont_Preach.ra"   -   "c:\testing\data\Madona_Papa_Dont_Preach.ra"
+"..\..\data\mmc\04_Imma_Be.m4a"   -   "c:\testing\data\04_Imma_Be.m4a"
+;"..\..\init\TestFramework.ini"   -   "c:\TestFramework\TestFramework.ini" 
+;"..\..\conf\MetaDataDisplay.cfg"   -   "c:\TestFramework\MetaDataDisplay.cfg"
+;"..\..\conf\MetaDataDisplay_Add.cfg"   -   "c:\TestFramework\MetaDataDisplay_Add.cfg"
 "\epoc32\release\armv5\urel\MetaDataDisplay.dll"   -   "!:\Sys\Bin\MetaDataDisplay.dll"
   
 ; Embedded SIS 
--- a/mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/src/MetaDataDisplayBlocks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/audio_metadata_reader_api/tsrc/MetaDataDisplay/src/MetaDataDisplayBlocks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -226,6 +226,10 @@
 		{
     	iLog->Log(_L("CMetaDataDisplay::TestCreateUtility returned no error"));
     	}
+    for (TInt i=0; i < KNumMetaDataField; i++)
+        {
+        iMetaDataFieldID[i] = TMetaDataFieldId(i);
+        }
     return err;
     }
 
--- a/mmmw_plat/audio_metadata_reader_api/tsrc/conf/MetaDataDisplay.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/audio_metadata_reader_api/tsrc/conf/MetaDataDisplay.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -93,6 +93,127 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.3.7 - OpenFile 320kbps_44khz_cbr_stereo.wma
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile 320kbps_44khz_cbr_stereo.wma
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.8 - OpenFile IDV22.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV22.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.9 - OpenFile IDV23.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV23.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.10 - OpenFile IDV24.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV24.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.11 - OpenFile 122-24KHz-31b-MP4-LC.odf
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile 122-24KHz-31b-MP4-LC.odf
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.12 - OpenFile Madona_Papa_Dont_Preach.ra
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile Madona_Papa_Dont_Preach.ra
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.13 - OpenFile 04_Imma_Be.m4a
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile 04_Imma_Be.m4a
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.14 - OpenFile wma_no_data.wma
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile 320kbps_44khz_cbr_stereo.wma
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.15 - OpenFile IDV22_no_data.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV22_no_data.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.16 - OpenFile IDV23_no_data.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV22_no_data.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.3.17 - OpenFile IDV24_no_data.mp3
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFile IDV22_no_data.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.4.1 - OpenFileWithField test3gp.3gp 
 create MetaDataDisplay Utility
 Utility TestCreateUtility
@@ -158,6 +279,82 @@
 delete Utility
 [Endtest]
 
+[Test]
+title MetadataUtility.4.7 - OpenFileWithField 320kbps_44khz_cbr_stereo.wma 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL 320kbps_44khz_cbr_stereo.wma 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.8 - OpenFileWithField IDV22.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL IDV22.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.9 - OpenFileWithField IDV23.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL IDV23.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.10 - OpenFileWithField IDV24.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL IDV24.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.11 - OpenFileWithField 122-24KHz-31b-MP4-LC.odf 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL 122-24KHz-31b-MP4-LC.odf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.12 - OpenFileWithField Madona_Papa_Dont_Preach.ra
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL Madona_Papa_Dont_Preach.ra 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.4.13 - OpenFileWithField 04_Imma_Be.m4a
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenFileWithFieldL 04_Imma_Be.m4a 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
 
 [Test]
 title MetadataUtility.5.1 - OpenRFile test3gp.3gp 
@@ -226,6 +423,83 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.5.7 - OpenRFile 320kbps_44khz_cbr_stereo.wma 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile 320kbps_44khz_cbr_stereo.wma
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.8 - OpenRFile IDV22.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile IDV22.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.9 - OpenRFile IDV23.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile IDV23.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.10 - OpenRFile IDV24.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile IDV24.mp3
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.11 - OpenRFile 122-24KHz-31b-MP4-LC.odf 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile 122-24KHz-31b-MP4-LC.odf
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.12 - OpenRFile Madona_Papa_Dont_Preach.ra 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile Madona_Papa_Dont_Preach.ra
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.5.13 - OpenRFile 04_Imma_Be.m4a 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFile 04_Imma_Be.m4a
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.6.1 - OpenRFileWithField test3gp.3gp 
 create MetaDataDisplay Utility
 Utility TestCreateUtility
@@ -292,6 +566,83 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.6.7 - OpenRFileWithField 320kbps_44khz_cbr_stereo.wma 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL 320kbps_44khz_cbr_stereo.wma 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.8 - OpenRFileWithField IDV22.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL IDV22.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.9 - OpenRFileWithField IDV23.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL IDV23.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.10 - OpenRFileWithField IDV24.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL IDV24.mp3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.11 - OpenRFileWithField 122-24KHz-31b-MP4-LC.odf 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL 122-24KHz-31b-MP4-LC.odf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.12 - OpenRFileWithField Madona_Papa_Dont_Preach.ra
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL Madona_Papa_Dont_Preach.ra 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.6.13 - OpenRFileWithField 04_Imma_Be.m4a
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenRFileWithFieldL 04_Imma_Be.m4a 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.7.1 - OpenDesFile test3gp.3gp 
 create MetaDataDisplay Utility
 Utility TestCreateUtility
@@ -347,6 +698,17 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.7.6 - OpenDesFile 122-24KHz-31b-MP4-LC.odf 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenDesL 122-24KHz-31b-MP4-LC.odf
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.8.1 - OpenDesFileWithField test3gp.3gp 
 create MetaDataDisplay Utility
 Utility TestCreateUtility
@@ -402,6 +764,17 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.8.6 - OpenDesFileWithField 122-24KHz-31b-MP4-LC.odf 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestOpenDesWithFieldL 122-24KHz-31b-MP4-LC.odf 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.9.1 - MetaDataCount test3gp.3gp
 create MetaDataDisplay Utility
 Utility TestCreateUtility
@@ -468,6 +841,83 @@
 [Endtest]
 
 [Test]
+title MetadataUtility.9.7 - MetaDataCount 320kbps_44khz_cbr_stereo.wma 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL 320kbps_44khz_cbr_stereo.wma 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.8 - MetaDataCount IDV22.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL IDV22.mp3 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.9 - MetaDataCount IDV23.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL IDV23.mp3 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.10 - MetaDataCount IDV24.mp3 
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL IDV24.mp3 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.11 - MetaDataCount 122-24KHz-31b-MP4-LC.odf
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL 122-24KHz-31b-MP4-LC.odf 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.12 - MetaDataCount Madona_Papa_Dont_Preach.ra
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL Madona_Papa_Dont_Preach.ra 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
+title MetadataUtility.9.13 - MetaDataCount 04_Imma_Be.m4a
+create MetaDataDisplay Utility
+Utility TestCreateUtility
+pause 1000
+Utility TestMetaDataCountL 04_Imma_Be.m4a 8
+pause 1000
+Utility TestDeleteUtility
+delete Utility
+[Endtest]
+
+[Test]
 title MetadataUtility.10 - MetaDataFields testmp4.mp4
 create MetaDataDisplay Utility
 Utility TestCreateUtility
--- a/mmmw_plat/enhanced_media_client_api/tsrc/EnhanMediaTestClass/group/EnhanMediaTestClass.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/enhanced_media_client_api/tsrc/EnhanMediaTestClass/group/EnhanMediaTestClass.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -56,7 +56,6 @@
 LIBRARY         euser.lib
 LIBRARY 		efsrv.lib				// File server session for database
 LIBRARY         EStor.lib
-LIBRARY 		downloadmgr.lib
 LIBRARY 		commdb.lib
 LIBRARY			stiftestinterface.lib
 LIBRARY         EnhancedMediaClient.lib 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/non_supported_aac.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,3985 @@
+
+
+
+
+#####-#-----------44100--------------
+
+[Test]
+title 8.138 Mp4 recording at Br32k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.139 Mp4 recording at Br32k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.140 Mp4 recording at Br64k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.141 Mp4 recording at Br64k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.142 Mp4 recording at Br96k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.143 Mp4 recording at Br96k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.144 Mp4 recording at Br128k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.145 Mp4 recording at Br128k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.146 Mp4 recording at Br160k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.147 Mp4 recording at Br160k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.148 Mp4 recording at Br192k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.149 Mp4 recording at Br192k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.150 Mp4 recording at Br224k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.151 Mp4 recording at Br224k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 8.152 Mp4 recording at Br256k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.153 Mp4 recording at Br256k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.154 WAV recording at 11.025khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_11025k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 11025000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 8.155 WAV recording at 11.025khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_11025k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 11025000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.156 WAV recording at 22050khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_22050k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 22050000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 8.157 WAV recording at 22050khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_22050k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 22050000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.158 WAV recording at 44.1khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_44100k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 44100000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 8.159 WAV recording at 44.1khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_44100k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 44100000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+#----------------------------------
+
+
+###-#-------11025---------
+
+[Test]
+title 81.106 Mp4 recording at Br32k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.107 Mp4 recording at Br32k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.108 Mp4 recording at Br64k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.109 Mp4 recording at Br64k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.110 Mp4 recording at Br96k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.111 Mp4 recording at Br96k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.112 Mp4 recording at Br128k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.113 Mp4 recording at Br128k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.114 Mp4 recording at Br160k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.115 Mp4 recording at Br160k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.116 Mp4 recording at Br192k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.117 Mp4 recording at Br192k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.118 Mp4 recording at Br224k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.119 Mp4 recording at Br224k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 81.120 Mp4 recording at Br256k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.121 Mp4 recording at Br256k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+####-#------22050-----------
+
+[Test]
+title 81.122 Mp4 recording at Br32k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.123 Mp4 recording at Br32k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.124 Mp4 recording at Br64k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.125 Mp4 recording at Br64k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.126 Mp4 recording at Br96k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.127 Mp4 recording at Br96k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.128 Mp4 recording at Br128k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.129 Mp4 recording at Br128k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.130 Mp4 recording at Br160k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.131 Mp4 recording at Br160k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.132 Mp4 recording at Br192k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.133 Mp4 recording at Br192k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.134 Mp4 recording at Br224k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.135 Mp4 recording at Br224k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 81.136 Mp4 recording at Br256k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.137 Mp4 recording at Br256k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+#####-#-----------44100--------------
+
+[Test]
+title 81.138 Mp4 recording at Br32k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.139 Mp4 recording at Br32k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.140 Mp4 recording at Br64k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.141 Mp4 recording at Br64k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.142 Mp4 recording at Br96k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.143 Mp4 recording at Br96k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.144 Mp4 recording at Br128k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.145 Mp4 recording at Br128k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.146 Mp4 recording at Br160k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.147 Mp4 recording at Br160k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.148 Mp4 recording at Br192k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.149 Mp4 recording at Br192k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 81.150 Mp4 recording at Br224k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.151 Mp4 recording at Br224k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 81.152 Mp4 recording at Br256k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 81.153 Mp4 recording at Br256k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+###-#-------11025---------
+
+[Test]
+title 82.106 Mp4 HE  recording at Br32k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.107 Mp4 HE  recording at Br32k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.108 Mp4 HE  recording at Br64k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.109 Mp4 HE  recording at Br64k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.110 Mp4 HE  recording at Br96k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.111 Mp4 HE  recording at Br96k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.112 Mp4 HE  recording at Br128k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.113 Mp4 HE  recording at Br128k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.114 Mp4 HE  recording at Br160k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.115 Mp4 HE  recording at Br160k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.116 Mp4 HE  recording at Br192k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.117 Mp4 HE  recording at Br192k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.118 Mp4 HE  recording at Br224k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.119 Mp4 HE  recording at Br224k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 82.120 Mp4 HE  recording at Br256k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.121 Mp4 HE  recording at Br256k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+####-#------22050-----------
+
+[Test]
+title 82.122 Mp4 HE  recording at Br32k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.123 Mp4 HE  recording at Br32k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.124 Mp4 HE  recording at Br64k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.125 Mp4 HE  recording at Br64k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+/*
+[Test]
+title 82.126 Mp4 HE  recording at Br96k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.127 Mp4 HE  recording at Br96k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+/*
+[Test]
+title 82.128 Mp4 HE  recording at Br128k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+*/
+
+[Test]
+title 82.129 Mp4 HE  recording at Br128k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+/*
+[Test]
+title 82.130 Mp4 HE  recording at Br160k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+*/
+
+[Test]
+title 82.131 Mp4 HE  recording at Br160k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+/*
+[Test]
+title 82.132 Mp4 HE  recording at Br192k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+*/
+
+[Test]
+title 82.133 Mp4 HE  recording at Br192k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.134 Mp4 HE  recording at Br224k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.135 Mp4 HE  recording at Br224k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 82.136 Mp4 HE  recording at Br256k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.137 Mp4 HE  recording at Br256k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+#####-#-----------44100--------------
+
+[Test]
+title 82.138 Mp4 HE  recording at Br32k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.139 Mp4 HE  recording at Br32k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.140 Mp4 HE  recording at Br64k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.141 Mp4 HE  recording at Br64k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.142 Mp4 HE  recording at Br96k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.143 Mp4 HE  recording at Br96k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.144 Mp4 HE  recording at Br128k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.145 Mp4 HE  recording at Br128k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.146 Mp4 HE  recording at Br160k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.147 Mp4 HE  recording at Br160k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.148 Mp4 HE  recording at Br192k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.149 Mp4 HE  recording at Br192k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 82.150 Mp4 HE  recording at Br224k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.151 Mp4 HE  recording at Br224k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 82.152 Mp4 HE  recording at Br256k Sr 44.1Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 44100000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 82.153 Mp4 HE  recording at Br256k Sr 44.1Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 44100000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+###-#-------11025---------
+
+[Test]
+title 8.106 Mp4 recording at Br32k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.107 Mp4 recording at Br32k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.108 Mp4 recording at Br64k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.109 Mp4 recording at Br64k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.110 Mp4 recording at Br96k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.111 Mp4 recording at Br96k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.112 Mp4 recording at Br128k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.113 Mp4 recording at Br128k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.114 Mp4 recording at Br160k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.115 Mp4 recording at Br160k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.116 Mp4 recording at Br192k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.117 Mp4 recording at Br192k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.118 Mp4 recording at Br224k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.119 Mp4 recording at Br224k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 8.120 Mp4 recording at Br256k Sr 11.025Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 11025000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.121 Mp4 recording at Br256k Sr 11.025Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 11025000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+####-#------22050-----------
+
+[Test]
+title 8.122 Mp4 recording at Br32k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.123 Mp4 recording at Br32k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.124 Mp4 recording at Br64k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.125 Mp4 recording at Br64k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.126 Mp4 recording at Br96k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.127 Mp4 recording at Br96k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.128 Mp4 recording at Br128k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.129 Mp4 recording at Br128k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.130 Mp4 recording at Br160k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.131 Mp4 recording at Br160k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.132 Mp4 recording at Br192k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.133 Mp4 recording at Br192k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 8.134 Mp4 recording at Br224k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.135 Mp4 recording at Br224k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+[Test]
+title 8.136 Mp4 recording at Br256k Sr 22.050Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 22050000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 8.137 Mp4 recording at Br256k Sr 22.050Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask 7
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 22050000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState 3
+pause 5000
+ALImpl al_recorditf_SetRecordState 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_common_videoppitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,250 @@
+//
+// 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:
+//
+//
+
+
+[StifSettings]
+CheckHeapBalance=off
+[EndStifSettings]
+
+[Test]
+title 28.1 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetRotation this 90000
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.2 VideoPPItf IsArbitraryRotationSupported
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_IsArbitraryRotationSupported this 0
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.3 VideoPPItf SetSourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.4 VideoPPItf SetDestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetDestinationRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.5 VideoPPItf SetScaleOptions STRETCH
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_SetScaleOptions this 1 1 1
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.6 VideoPPItf SetScaleOptions FIT
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_SetScaleOptions this 2 1 1
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.7 VideoPPItf SetScaleOptions CROP
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 5000
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_SetScaleOptions this 3 1 1
+ALImpl al_videoppitf_Commit this
+pause 5000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetMirror this 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_audenccapitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_audenccapitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -16,46 +16,46 @@
 //
 
 // IID numbers for interfaces to mention during object creation
-//	 XA_IID_NULL                    	1
-//	 XA_IID_OBJECT                    	2
-//	 XA_IID_CONFIGEXTENSION             3
-//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
-//	 XA_IID_ENGINE                    	5
-//	 XA_IID_THREADSYNC                  6
-//	 XA_IID_PLAY                    	7
-//	 XA_IID_PLAYBACKRATE                8
-//	 XA_IID_PREFETCHSTATUS              9
-//	 XA_IID_SEEK                    	10
-//	 XA_IID_VOLUME                    	11
-//	 XA_IID_IMAGECONTROLS               12
-//	 XA_IID_IMAGEEFFECTS                13
-//	 XA_IID_VIDEOPOSTPROCESSING         14
-//	 XA_IID_RECORD                    	15
-//	 XA_IID_SNAPSHOT                    16
-//	 XA_IID_METADATAEXTRACTION          17
-//	 XA_IID_METADATAINSERTION           18
-//	 XA_IID_METADATATRAVERSAL           19
-//	 XA_IID_DYNAMICSOURCE               20
-//	 XA_IID_CAMERACAPABILITIES          21
-//	 XA_IID_CAMERA                    	22
-//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
-//	 XA_IID_DEVICEVOLUME                24
-//	 XA_IID_EQUALIZER                   25
-//	 XA_IID_OUTPUTMIX                   26
-//	 XA_IID_RADIO                    	27
-//	 XA_IID_RDS                         28
-//	 XA_IID_VIBRA                    	29
-//	 XA_IID_LED                         30
-//	 XA_IID_AUDIODECODERCAPABILITIES    31
-//	 XA_IID_AUDIOENCODER                32
-//	 XA_IID_AUDIOENCODERCAPABILITIES    33
-//	 XA_IID_IMAGEENCODERCAPABILITIES    34
-//	 XA_IID_IMAGEDECODERCAPABILITIES    35
-//	 XA_IID_IMAGEENCODER                36
-//	 XA_IID_VIDEODECODERCAPABILITIES    37
-//	 XA_IID_VIDEOENCODER                38
-//	 XA_IID_VIDEOENCODERCAPABILITIES    39
-//	 XA_IID_STREAMINFORMATION           40
+//   XA_IID_NULL                        1
+//   XA_IID_OBJECT                      2
+//   XA_IID_CONFIGEXTENSION             3
+//   XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//   XA_IID_ENGINE                      5
+//   XA_IID_THREADSYNC                  6
+//   XA_IID_PLAY                        7
+//   XA_IID_PLAYBACKRATE                8
+//   XA_IID_PREFETCHSTATUS              9
+//   XA_IID_SEEK                        10
+//   XA_IID_VOLUME                      11
+//   XA_IID_IMAGECONTROLS               12
+//   XA_IID_IMAGEEFFECTS                13
+//   XA_IID_VIDEOPOSTPROCESSING         14
+//   XA_IID_RECORD                      15
+//   XA_IID_SNAPSHOT                    16
+//   XA_IID_METADATAEXTRACTION          17
+//   XA_IID_METADATAINSERTION           18
+//   XA_IID_METADATATRAVERSAL           19
+//   XA_IID_DYNAMICSOURCE               20
+//   XA_IID_CAMERACAPABILITIES          21
+//   XA_IID_CAMERA                      22
+//   XA_IID_AUDIOIODEVICECAPABILITIES   23
+//   XA_IID_DEVICEVOLUME                24
+//   XA_IID_EQUALIZER                   25
+//   XA_IID_OUTPUTMIX                   26
+//   XA_IID_RADIO                       27
+//   XA_IID_RDS                         28
+//   XA_IID_VIBRA                       29
+//   XA_IID_LED                         30
+//   XA_IID_AUDIODECODERCAPABILITIES    31
+//   XA_IID_AUDIOENCODER                32
+//   XA_IID_AUDIOENCODERCAPABILITIES    33
+//   XA_IID_IMAGEENCODERCAPABILITIES    34
+//   XA_IID_IMAGEDECODERCAPABILITIES    35
+//   XA_IID_IMAGEENCODER                36
+//   XA_IID_VIDEODECODERCAPABILITIES    37
+//   XA_IID_VIDEOENCODER                38
+//   XA_IID_VIDEOENCODERCAPABILITIES    39
+//   XA_IID_STREAMINFORMATION           40
 
 
 [StifSettings]
@@ -63,7 +63,18 @@
 [EndStifSettings]
 
 [Test]
-title 4.1 AudioEncCapItf GetAudioEncoders
+title 4.1 AudioEncCapItf GetAudioEncoders correct size for encoderIDS.
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 33
+ALImpl al_audioencodercapitf_GetAudioEncoders 3
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 4.2 AudioEncCapItf GetAudioEncoders Encoderids as Null
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -74,12 +85,57 @@
 [Endtest] 
 
 [Test]
-title 4.2 AudioEncCapItf GetAudioEncoderCapabilities
+title 4.3 AudioEncCapItf GetAudioEncoderCapabilities AAC Index 0
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 33
+ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 6 0 2 16 16 8000000 48000000 0 5 8000000 16000000 24000000 32000000 48000000 32000 256000 0 8 32000 64000 96000 128000 160000 192000 224000 256000 1 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 4.4 AudioEncCapItf GetAudioEncoderCapabilities AAC Index 1
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 33
+ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 6 1 2 16 16 8000000 48000000 0 5 8000000 16000000 24000000 32000000 48000000 32000 256000 0 8 32000 64000 96000 128000 160000 192000 224000 256000 1 2
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 4.5  [negative ] AudioEncCapItf GetAudioEncoderCapabilities wrong encoderid
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 33
-ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 1
+allownextresult 12
+ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 4 1
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest] 
+
+[Test]
+title 4.6 AudioEncCapItf GetAudioEncoderCapabilities AMR Index 0
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 33
+ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 3 0 1 8 8 8000000 8000000 0 1 8000000 4750 12200 0 8 4750 5150 5900 6700 7400 7950 10200 12200 1 0
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 4.7 AudioEncCapItf GetAudioEncoderCapabilities PCM Index 0
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 33
+ALImpl al_audioencodercapitf_GetAudioEncoderCapabilities 1 0 2 16 16 8000000 48000000 0 5 8000000 16000000 24000000 32000000 48000000 0 0 0 0 1 0
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_engineitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_engine_engineitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -138,7 +138,7 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -213,7 +213,7 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_engitf_QueryNumSupportedInterfaces 1
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 1 valid
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
@@ -224,7 +224,7 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_engitf_QuerySupportedInterfaces 1 0
+ALImpl al_engitf_QuerySupportedInterfaces valid 1 0 valid
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mo.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mo.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -73,7 +73,7 @@
 ALImpl al_SetDataFormat 1 audio/mpeg 9
 ALImpl al_SetDataSource 1 1 3
 ALImpl al_engitf_CreateMetadataExtractor 1 17
-ALImpl al_engitf_QueryNumSupportedInterfaces 8
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 8 valid
 ALImpl al_objitf_Destroy 8
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -89,7 +89,7 @@
 ALImpl al_SetDataFormat 1 audio/mpeg 9
 ALImpl al_SetDataSource 1 1 3
 ALImpl al_engitf_CreateMetadataExtractor 1 17
-ALImpl al_engitf_QuerySupportedInterfaces 8 0
+ALImpl al_engitf_QuerySupportedInterfaces valid 8 0 valid
 ALImpl al_objitf_Destroy 8
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -108,8 +108,8 @@
 ALImpl al_engitf_CreateMetadataExtractor 1 17
 ALImpl al_objitf_Realize 8 0
 ALImpl al_objitf_GetInterface 8 4
+allownextresult 12
 ALImpl al_dimitf_AddInterface 3 0
-ALImpl al_dimitf_RemoveInterface 3 
 ALImpl al_objitf_Destroy 8
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -147,8 +147,8 @@
 ALImpl al_engitf_CreateMetadataExtractor 1 17
 ALImpl al_objitf_Realize 8 0
 ALImpl al_objitf_GetInterface 8 4
+allownextresult 12
 ALImpl al_dimitf_ResumeInterface 3 0
-ALImpl al_dimitf_RemoveInterface 3
 ALImpl al_objitf_Destroy 8
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -110,8 +110,8 @@
 ALImpl al_SetDataSource 1 1 1
 ALImpl al_SetDataSink 3 6 1
 ALImpl al_engitf_CreateMediaPlayer 0
-ALImpl al_engitf_QueryNumSupportedInterfaces 4
-ALImpl al_engitf_QueryNumSupportedInterfaces 1
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 4 valid
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 1 valid
 ALImpl al_objitf_Destroy MO_PLAYER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -128,7 +128,7 @@
 ALImpl al_SetDataSource 1 1 1
 ALImpl al_SetDataSink 3 6 1
 ALImpl al_engitf_CreateMediaPlayer 0
-ALImpl al_engitf_QuerySupportedInterfaces 4 0
+ALImpl al_engitf_QuerySupportedInterfaces valid 4 0 valid
 ALImpl al_objitf_Destroy MO_PLAYER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp_prefetchstatusitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,353 @@
+//
+// 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: 
+//
+//
+
+
+[StifSettings]
+CheckHeapBalance=off
+[EndStifSettings]
+
+[Test]
+title 22.1 PrefetchStatusItf GetInterfacePrefetchStatusItf
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.2(a) PrefetchStatusItf GetFillLevelAudio
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 10000
+ALImpl al_prefetchstatusitf_GetFillLevel 1000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.2(b) PrefetchStatusItf GetFillLevelVideo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/testmp4.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_prefetchstatusitf_GetFillLevel 1000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.3(a) PrefetchStatusItf GetPrefetchStatusAudio
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_prefetchstatusitf_GetPrefetchStatus 2
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.3(b) PrefetchStatusItf GetPrefetchStatusVideo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/testmp4.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_prefetchstatusitf_GetPrefetchStatus 2
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.4 PrefetchStatusItf RegisterCallback
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_RegisterCallback
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.5 PrefetchStatusItf SetCallbackEventMaskInvalid
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_prefetchstatusitf_SetCallbackEventMask 4
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.6 PrefetchStatusItf SetCallbackEventMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_SetCallbackEventMask 3
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.7 PrefetchStatusItf GetCallbackEventMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_SetCallbackEventMask 3
+ALImpl al_prefetchstatusitf_GetCallbackEventMask 3
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.8(a) PrefetchStatusItf SetFillUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_SetFillUpdatePeriod 500
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+[Test]
+title 22.8(b) PrefetchStatusItf SetFillUpdatePeriodInvalid
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_prefetchstatusitf_SetFillUpdatePeriod 1500
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.9 PrefetchStatusItf GetFillUpdatePeriodInvalid
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_prefetchstatusitf_GetFillUpdatePeriodNullParam 10000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.10 PrefetchStatusItf GetFillUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_GetFillUpdatePeriod 100
+ALImpl al_prefetchstatusitf_SetFillUpdatePeriod 1000
+ALImpl al_prefetchstatusitf_GetFillUpdatePeriod 1000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.11 PrefetchStatusItf PrefetchStatusChangeEvent
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 rtsp:\/\/10.48.2.51/Copyright_Free_Test_Content/Clips/Video/3GP/176x144/h263/h263_176x144_15fps_384kbps_AAC-LC_128kbps_mono_44.1kHz.3gp
+ALImpl al_SetDataFormat 1 video/3gp 17
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_RegisterTestEventCallback
+ALImpl al_prefetchstatusitf_SetCallbackEventMask 1
+ALImpl al_prefetchstatusitf_TestEvent
+request Event_XA_PREFETCHEVENT_STATUSCHANGE
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+wait Event_XA_PREFETCHEVENT_STATUSCHANGE
+release Event_XA_PREFETCHEVENT_STATUSCHANGE
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 22.12 PrefetchStatusItf PrefetchFillLevelChangeEvent
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 rtsp:\/\/10.48.2.51/Copyright_Free_Test_Content/Clips/Video/3GP/176x144/h263/h263_176x144_15fps_384kbps_AAC-LC_128kbps_mono_44.1kHz.3gp
+ALImpl al_SetDataFormat 1 video/3gp 17
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 9
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PREFETCHSTATUS
+ALImpl al_prefetchstatusitf_RegisterTestEventCallback
+ALImpl al_prefetchstatusitf_SetCallbackEventMask 2
+ALImpl al_prefetchstatusitf_SetFillUpdatePeriod 200
+ALImpl al_prefetchstatusitf_TestEvent
+request Event_XA_PREFETCHEVENT_FILLLEVELCHANGE
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+wait Event_XA_PREFETCHEVENT_FILLLEVELCHANGE
+release Event_XA_PREFETCHEVENT_FILLLEVELCHANGE
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp_strminfoitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mp_strminfoitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -307,4 +307,69 @@
 ALImpl al_objitf_Destroy MO_ENGINE
 ALImpl al_DeleteWindow
 delete ALImpl
-[Endtest]
\ No newline at end of file
+[Endtest]
+
+[Test]
+title 14.15 StrmInfoItf TestEvent Audio->A/V->Video
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 2 XA_IID_STREAMINFORMATION XA_IID_DYNAMICSOURCE
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_STREAMINFORMATION
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_DYNAMICSOURCE
+request Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_strminfoitf_RegisterStreamChangeCallback 0
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 10
+ALImpl al_SetDataSource 1 1 4
+ALImpl al_dynsrcitf_SetSource
+wait Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 10
+ALImpl al_SetDataSource 1 1 4
+ALImpl al_dynsrcitf_SetSource
+wait Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+release Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 14.16 StrmInfoItf TestEvent A/V->video->Audio
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 10
+ALImpl al_SetDataSource 1 1 2
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_engitf_CreateMediaPlayer 2 XA_IID_STREAMINFORMATION XA_IID_DYNAMICSOURCE
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_STREAMINFORMATION
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_DYNAMICSOURCE
+request Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_strminfoitf_RegisterStreamChangeCallback 0
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 10
+ALImpl al_SetDataSource 1 1 4
+ALImpl al_dynsrcitf_SetSource
+wait Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_strminfoitf_SetStreamInfoIndex 1
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 4
+ALImpl al_dynsrcitf_SetSource
+wait Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+release Event_XA_STREAMCBEVENT_PROPERTYCHANGE
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -74,7 +74,7 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -91,9 +91,9 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_engitf_QueryNumSupportedInterfaces 5
-ALImpl al_engitf_QueryNumSupportedInterfaces 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 5 valid
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 1 valid
 ALImpl al_objitf_Destroy MO_RECORDER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -110,8 +110,8 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_engitf_QuerySupportedInterfaces 5 0
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_engitf_QuerySupportedInterfaces valid 5 0 valid
 ALImpl al_objitf_Destroy MO_RECORDER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -128,11 +128,11 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
 ALImpl al_objitf_Realize MO_RECORDER XA_BOOLEAN_FALSE
 ALImpl al_objitf_GetInterface 5 4
+allownextresult 12
 ALImpl al_dimitf_AddInterface 18 0
-ALImpl al_dimitf_RemoveInterface 18 
 ALImpl al_objitf_Destroy MO_RECORDER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
@@ -149,7 +149,7 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
 ALImpl al_objitf_Realize MO_RECORDER XA_BOOLEAN_FALSE
 allownextresult 1
 ALImpl al_objitf_Resume 5 0
@@ -159,7 +159,7 @@
 [Endtest]
 
 [Test]
-title 25.6 MediaRecorder DynItf AddItf
+title 25.6 MediaRecorder DynItf RemoveItf
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -169,10 +169,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
 ALImpl al_objitf_Realize MO_RECORDER XA_BOOLEAN_FALSE
 ALImpl al_objitf_GetInterface 5 4
-ALImpl al_dimitf_ResumeInterface 18 0
+allownextresult 12
 ALImpl al_dimitf_RemoveInterface 18 
 ALImpl al_objitf_Destroy MO_RECORDER
 ALImpl al_objitf_Destroy MO_ENGINE
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_audioencoderitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_audioencoderitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -69,10 +69,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_GetEncoderSettings
+ALImpl al_audioencoderitf_GetEncoderSettings this valid
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -89,10 +89,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 44100 128 8 1 0 0 0 0 0 0
+ALImpl al_audioencoderitf_SetEncoderSettings this valid 13 1 2 2 44100 128 8 1 0 0 0 0 0 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -109,10 +109,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_GetEncoderSettings
+ALImpl al_audioencoderitf_GetEncoderSettings this valid
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -129,10 +129,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 2 2 44100 128 8 1 0 0 0 0 0 0
+ALImpl al_audioencoderitf_SetEncoderSettings this valid 13 3 2 2 44100 128 8 1 0 0 0 0 0 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -149,10 +149,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_GetEncoderSettings
+ALImpl al_audioencoderitf_GetEncoderSettings this valid
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -169,10 +169,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100 128 8 1 0 0 0 0 0 0
+ALImpl al_audioencoderitf_SetEncoderSettings this valid 13 6 2 2 44100 128 8 1 0 0 0 0 0 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_audioencoderitf_cc.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,144 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+[Test]
+title 41.1 AudioEncoderItf GetEncoderSettings NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record41_1.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 32
+allownextresult 2
+ALImpl al_audioencoderitf_GetEncoderSettings null valid
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 41.2 AudioEncoderItf GetEncoderSettings NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record41_1.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 32
+allownextresult 2
+ALImpl al_audioencoderitf_GetEncoderSettings this null
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 41.3 AudioEncoderItf SetEncoderSettings NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record41_2.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 32
+allownextresult 2
+ALImpl al_audioencoderitf_SetEncoderSettings null valid 13 3 2 2 44100 128 8 1 0 0 0 0 0 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 41.4 AudioEncoderItf SetEncoderSettings NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record41_2.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 32
+allownextresult 2
+ALImpl al_audioencoderitf_SetEncoderSettings this null 13 3 2 2 44100 128 8 1 0 0 0 0 0 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_cc.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,297 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+
+[StifSettings]
+CheckHeapBalance=off
+[EndStifSettings]
+
+[Test]
+title 43.1 MediaRecorder CreateAudioMediaRecorder NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+allownextresult 2
+ALImpl al_engitf_CreateMediaRecorder null valid valid valid valid 1 15
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.2 MediaRecorder CreateAudioMediaRecorder NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+allownextresult 2
+ALImpl al_engitf_CreateMediaRecorder this null valid valid valid 1 15
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.3 MediaRecorder CreateAudioMediaRecorder Invalid Sink
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+allownextresult 2
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.4 MediaRecorder CreateAudioMediaRecorder Invalid Src
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+allownextresult 2
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.5 MediaRecorder CreateAudioMediaRecorder Invalid Feature
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+allownextresult 12
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 16
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 43.6 MediaRecorder CreateAudioMediaRecorder Invalid Content
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.xyz
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+allownextresult 9
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 43.7 MediaRecorder QueryNumSupportedInterfaces NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 2
+ALImpl al_engitf_QueryNumSupportedInterfaces null 5 valid
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.8 MediaRecorder QueryNumSupportedInterfaces NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 2
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 5 null
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.9 MediaRecorder QueryNumSupportedInterfaces Invalid ObjectId
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 12
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 10 valid
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 43.10 MediaRecorder QuerySupportedInterfaces NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 2
+ALImpl al_engitf_QuerySupportedInterfaces null 5 0 valid
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 43.11 MediaRecorder QuerySupportedInterfaces NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 2
+ALImpl al_engitf_QuerySupportedInterfaces valid 5 0 null
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 43.12 MediaRecorder QuerySupportedInterfaces Invalid ObjectId
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 12
+ALImpl al_engitf_QuerySupportedInterfaces valid 10 0 valid
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
+
+[Test]
+title 43.13 MediaRecorder QuerySupportedInterfaces Invalid Index
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+allownextresult 2
+ALImpl al_engitf_QuerySupportedInterfaces valid 5 10 valid
+ALImpl al_objitf_Destroy MO_RECORDER
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_mdinsertionitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_mdinsertionitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -64,18 +64,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_1.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 12 0
-ALImpl al_metadatainsertionitf_CreateChildNode 2147483647 2 audio/amr
+ALImpl al_metadatainsertionitf_CreateChildNode this 2147483647 2 audio/amr 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -87,18 +87,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_2.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 2 0
-ALImpl al_metadatainsertionitf_GetSupportedKeysCount 1
+ALImpl al_metadatainsertionitf_GetSupportedKeysCount this 1 0 0 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -110,18 +110,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_3.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 2 0
-ALImpl al_metadatainsertionitf_GetKeySize 1 1
+ALImpl al_metadatainsertionitf_GetKeySize this 1 1 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -133,18 +133,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_4.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 2 0
-ALImpl al_metadatainsertionitf_GetKey 1 1 1
+ALImpl al_metadatainsertionitf_GetKey this 1 1 1 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -156,18 +156,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_5.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 2 1
-ALImpl al_metadatainsertionitf_GetFreeKeysEncoding 1 1
+ALImpl al_metadatainsertionitf_GetFreeKeysEncoding this 1 1 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -179,18 +179,18 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_6.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
 allownextresult 12 2
-ALImpl al_metadatainsertionitf_InsertMetadataItem 1 2 3 english 4 5 chinese 1
+ALImpl al_metadatainsertionitf_InsertMetadataItem this 1 2 3 english 4 5 chinese 1 valid valid
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -202,17 +202,17 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_7.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0 
 ALImpl al_objitf_GetInterface 5 18
-ALImpl al_metadatainsertionitf_RegisterCallback
+ALImpl al_metadatainsertionitf_RegisterCallback this
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -224,12 +224,12 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_8.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0
@@ -247,34 +247,34 @@
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_9.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 1 
 ALImpl al_objitf_GetInterface 5 18
-ALImpl al_metadatainsertionitf_RegisterCallback
+ALImpl al_metadatainsertionitf_RegisterCallback this
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 6.11 MetadataInsertionItf DynItf ASyncResume
+title 6.10 MetadataInsertionItf DynItf ASyncResume
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_10.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0
@@ -286,17 +286,17 @@
 [Endtest]
 
 [Test]
-title 6.12 MetadataInsertionItf DynItf Resume
+title 6.11 MetadataInsertionItf DynItf Resume
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.amr
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record6_11.amr
 ALImpl al_SetDataFormat 1 audio/amr 21
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 4
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 4
 ALImpl al_dimitf_AddInterface 18 0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_mdinsertionitf_cc.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,450 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+[Test]
+title 42.1 MetadataInsertionItf CreateChildNode NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_1.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_CreateChildNode null 2147483647 2 audio/amr 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.2 MetadataInsertionItf CreateChildNode NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_2.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_CreateChildNode this 2147483647 2 audio/amr -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.3 MetadataInsertionItf CreateChildNode NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_3.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_CreateChildNode this 2147483647 2 null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.4 MetadataInsertionItf GetSupportedKeysCount NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_4.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetSupportedKeysCount null 1 0 0 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.5 MetadataInsertionItf GetSupportedKeysCount NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_5.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetSupportedKeysCount this 1 -1 0 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 42.6 MetadataInsertionItf GetKeySize NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_6.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetKeySize null 1 1 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.7 MetadataInsertionItf GetKeySize NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_7.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetKeySize this 1 1 -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.8 MetadataInsertionItf GetKey NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_8.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetKey null 1 1 1 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.9 MetadataInsertionItf GetKey NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_9.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetKey this 1 1 1 -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.10 MetadataInsertionItf GetFreeKeysEncoding NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_10.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetFreeKeysEncoding null 1 1 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.11 MetadataInsertionItf GetFreeKeysEncoding NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_11.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetFreeKeysEncoding this 1 1 -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.12 MetadataInsertionItf InsertMetadataItem NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_12.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_InsertMetadataItem null 1 2 3 english 4 5 chinese 1 0 0 nonnull nonnull
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.13 MetadataInsertionItf InsertMetadataItem NULL param1
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_13.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_InsertMetadataItem this 1 2 3 english 4 5 chinese 1 0 0 null nonnull
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.14 MetadataInsertionItf InsertMetadataItem NULL param2
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_14.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_InsertMetadataItem this 1 2 3 english 4 5 chinese 1 0 0 nonnull null
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.15 MetadataInsertionItf RegisterCallback NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_15.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_RegisterCallback null
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 42.16 MetadataInsertionItf GetSupportedKeysCount NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_16.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetSupportedKeysCount this 1 0 -1 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 42.17 MetadataInsertionItf GetSupportedKeysCount NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record42_17.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 4
+ALImpl al_dimitf_AddInterface 18 0 
+ALImpl al_objitf_GetInterface 5 18
+allownextresult 2
+ALImpl al_metadatainsertionitf_GetSupportedKeysCount this 1 0 0 -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_record_aac_au_p2.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1317 +0,0 @@
-//
-// 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: 
-//
-//
-
-
-
-[Test]
-title 81.105 Mp4 recording at Br192k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-###-#-------11025---------
-
-[Test]
-title 81.106 Mp4 recording at Br32k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.107 Mp4 recording at Br32k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.108 Mp4 recording at Br64k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.109 Mp4 recording at Br64k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.110 Mp4 recording at Br96k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.111 Mp4 recording at Br96k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.112 Mp4 recording at Br128k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.113 Mp4 recording at Br128k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.114 Mp4 recording at Br160k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.115 Mp4 recording at Br160k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.116 Mp4 recording at Br192k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.117 Mp4 recording at Br192k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.118 Mp4 recording at Br224k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.119 Mp4 recording at Br224k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 81.120 Mp4 recording at Br256k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.121 Mp4 recording at Br256k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-####-#------22050-----------
-
-[Test]
-title 81.122 Mp4 recording at Br32k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.123 Mp4 recording at Br32k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.124 Mp4 recording at Br64k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.125 Mp4 recording at Br64k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.126 Mp4 recording at Br96k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.127 Mp4 recording at Br96k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.128 Mp4 recording at Br128k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.129 Mp4 recording at Br128k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.130 Mp4 recording at Br160k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.131 Mp4 recording at Br160k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.132 Mp4 recording at Br192k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.133 Mp4 recording at Br192k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.134 Mp4 recording at Br224k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.135 Mp4 recording at Br224k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 81.136 Mp4 recording at Br256k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.137 Mp4 recording at Br256k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-#####-#-----------44100--------------
-
-[Test]
-title 81.138 Mp4 recording at Br32k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.139 Mp4 recording at Br32k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.140 Mp4 recording at Br64k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.141 Mp4 recording at Br64k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.142 Mp4 recording at Br96k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.143 Mp4 recording at Br96k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.144 Mp4 recording at Br128k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.145 Mp4 recording at Br128k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.146 Mp4 recording at Br160k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.147 Mp4 recording at Br160k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.148 Mp4 recording at Br192k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.149 Mp4 recording at Br192k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.150 Mp4 recording at Br224k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.151 Mp4 recording at Br224k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 81.152 Mp4 recording at Br256k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.153 Mp4 recording at Br256k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_record_aac_he_p2.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1317 +0,0 @@
-//
-// 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: 
-//
-//
-
-/*
-[Test]
-title 82.105 Mp4 HE  recording at Br192k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-###-#-------11025---------
-
-[Test]
-title 82.106 Mp4 HE  recording at Br32k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.107 Mp4 HE  recording at Br32k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.108 Mp4 HE  recording at Br64k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.109 Mp4 HE  recording at Br64k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.110 Mp4 HE  recording at Br96k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.111 Mp4 HE  recording at Br96k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.112 Mp4 HE  recording at Br128k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.113 Mp4 HE  recording at Br128k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.114 Mp4 HE  recording at Br160k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.115 Mp4 HE  recording at Br160k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.116 Mp4 HE  recording at Br192k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.117 Mp4 HE  recording at Br192k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.118 Mp4 HE  recording at Br224k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.119 Mp4 HE  recording at Br224k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 82.120 Mp4 HE  recording at Br256k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.121 Mp4 HE  recording at Br256k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-####-#------22050-----------
-
-[Test]
-title 82.122 Mp4 HE  recording at Br32k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.123 Mp4 HE  recording at Br32k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.124 Mp4 HE  recording at Br64k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.125 Mp4 HE  recording at Br64k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.126 Mp4 HE  recording at Br96k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.127 Mp4 HE  recording at Br96k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.128 Mp4 HE  recording at Br128k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-*/
-
-[Test]
-title 82.129 Mp4 HE  recording at Br128k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.130 Mp4 HE  recording at Br160k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.131 Mp4 HE  recording at Br160k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.132 Mp4 HE  recording at Br192k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.133 Mp4 HE  recording at Br192k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.134 Mp4 HE  recording at Br224k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.135 Mp4 HE  recording at Br224k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 82.136 Mp4 HE  recording at Br256k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.137 Mp4 HE  recording at Br256k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-#####-#-----------44100--------------
-
-[Test]
-title 82.138 Mp4 HE  recording at Br32k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.139 Mp4 HE  recording at Br32k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.140 Mp4 HE  recording at Br64k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.141 Mp4 HE  recording at Br64k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.142 Mp4 HE  recording at Br96k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.143 Mp4 HE  recording at Br96k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.144 Mp4 HE  recording at Br128k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.145 Mp4 HE  recording at Br128k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.146 Mp4 HE  recording at Br160k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.147 Mp4 HE  recording at Br160k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.148 Mp4 HE  recording at Br192k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.149 Mp4 HE  recording at Br192k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 82.150 Mp4 HE  recording at Br224k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.151 Mp4 HE  recording at Br224k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 82.152 Mp4 HE  recording at Br256k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.153 Mp4 HE  recording at Br256k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -69,13 +69,13 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -92,10 +92,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_GetRecordState
+ALImpl al_recorditf_GetRecordState this 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -112,10 +112,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetDurationLimit 100000
+ALImpl al_recorditf_SetDurationLimit this 100000
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -132,10 +132,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_GetPosition
+ALImpl al_recorditf_GetPosition this 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -152,10 +152,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_RegisterCallback
+ALImpl al_recorditf_RegisterCallback this
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -172,10 +172,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 1
+ALImpl al_recorditf_SetCallbackEventsMask this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -192,10 +192,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_GetCallbackEventsMask
+ALImpl al_recorditf_GetCallbackEventsMask this 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -213,10 +213,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetMarkerPosition 1000
+ALImpl al_recorditf_SetMarkerPosition this 1000
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -234,11 +234,11 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetMarkerPosition 1000
-ALImpl al_recorditf_ClearMarkerPosition
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_ClearMarkerPosition this
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -255,11 +255,11 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetMarkerPosition 1000
-ALImpl al_recorditf_GetMarkerPosition
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_GetMarkerPosition this 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -276,10 +276,10 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetPositionUpdatePeriod 1000
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -296,11 +296,11 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetPositionUpdatePeriod 1000
-ALImpl al_recorditf_GetPositionUpdatePeriod
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+ALImpl al_recorditf_GetPositionUpdatePeriod this 0
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -317,12 +317,12 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -340,13 +340,13 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -365,17 +365,17 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -392,18 +392,18 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 2
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -420,17 +420,17 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -448,19 +448,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -477,19 +477,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 5150 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5150 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -506,19 +506,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 5900 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5900 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -535,19 +535,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 6700 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 6700 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -564,19 +564,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 7400 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7400 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -593,19 +593,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 7950 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7950 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -622,19 +622,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 10200 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 10200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -651,19 +651,19 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 12200 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 12200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -680,16 +680,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 8000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -706,16 +706,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 16000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -732,16 +732,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 32000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -758,15 +758,15 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 96000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 96000000 0 16 1 0 0 0 0 0 1234
 allownextresult 13
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -783,16 +783,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 8000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -809,16 +809,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -835,16 +835,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 32000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -861,15 +861,15 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 96000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 96000000 0 16 1 0 0 0 0 0 1234
 allownextresult 13
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -886,16 +886,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 48000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -912,16 +912,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -938,16 +938,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -964,16 +964,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -990,16 +990,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1016,16 +1016,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1042,16 +1042,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1068,16 +1068,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1094,16 +1094,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1120,23 +1120,23 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.42 Mp4 recording at Br16k Sr8Khz 
+title 8.44 Mp4 recording at Br16k Sr8Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -1146,23 +1146,23 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 16000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 16000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.43 WAV RecordItf Set pause-stop-Record RecordState 
+title 8.45 WAV RecordItf Set pause-stop-Record RecordState 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -1172,17 +1172,17 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1190,7 +1190,7 @@
 
 
 [Test]
-title 8.44 AMR  Set pause-stop-Record RecordState RecordItf
+title 8.46 AMR  Set pause-stop-Record RecordState RecordItf
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -1200,24 +1200,24 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-[Test]
-title 8.45 MP4 Set pause-stop-play RecordState RecordItf 
+/*[Test]
+title 8.47 MP4 Set pause-stop-play RecordState RecordItf 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -1227,24 +1227,24 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 2
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
 pause 3000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 pause 2000
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest] 
 
 [Test]
-title 8.46 WAV Set , Get Settings then Check RecordItf
+title 8.48 WAV Set , Get Settings then Check RecordItf
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
@@ -1254,24 +1254,24 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
-ALImpl al_audioencoderitf_GetEncoderSettings check 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
+*/
 
 
 
 
-
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_auto.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_auto.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -15,7 +15,31 @@
 //
 //
 
-
+[Test]
+title 81.51 Mp4 recording at Br64k Sr 8Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr8k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
 
 
 [Test]
@@ -29,16 +53,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -55,16 +79,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -81,16 +105,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -107,16 +131,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -133,16 +157,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -159,16 +183,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -185,16 +209,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -211,16 +235,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -237,16 +261,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -263,16 +287,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -289,16 +313,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -315,16 +339,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -343,16 +367,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -369,16 +393,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -395,16 +419,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -421,16 +445,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -447,16 +471,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -473,16 +497,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -499,16 +523,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -525,16 +549,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -551,16 +575,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -577,16 +601,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -603,16 +627,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -629,16 +653,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -655,16 +679,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -681,16 +705,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -709,16 +733,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -735,16 +759,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -761,16 +785,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -787,16 +811,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -813,16 +837,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -839,16 +863,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -865,16 +889,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -891,16 +915,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -917,16 +941,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -943,16 +967,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -969,16 +993,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -995,16 +1019,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1021,16 +1045,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1047,16 +1071,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1075,21 +1099,22 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+/*
 [Test]
 title 81.93 Mp4 recording at Br64k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
@@ -1101,20 +1126,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
+*/
 
 [Test]
 title 81.94 Mp4 recording at Br96k Sr 48Khz 
@@ -1127,16 +1153,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1153,16 +1179,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 96000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 96000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1179,16 +1205,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1205,16 +1231,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1231,16 +1257,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1257,18 +1283,43 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 160000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 160000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+[Test]
+title 81.105 Mp4 recording at Br192k Sr 48Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_stereo_auto.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
\ No newline at end of file
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_he.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_aac_he.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -16,7 +16,7 @@
 //
 
 
-/*
+
 [Test]
 title 82.43 Mp4 HE  recording at Br256k Sr48Khz Stereo
 create openmaxaltestmodule ALImpl
@@ -28,16 +28,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -56,16 +56,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -82,16 +82,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -108,16 +108,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -134,16 +134,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -160,16 +160,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -186,16 +186,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -212,16 +212,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -238,16 +238,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -264,16 +264,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -290,16 +290,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -316,16 +316,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -342,16 +342,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -368,16 +368,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -394,16 +394,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -422,16 +422,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -448,16 +448,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -474,16 +474,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -500,16 +500,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -526,16 +526,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -552,16 +552,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -578,16 +578,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -604,16 +604,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -630,16 +630,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -656,16 +656,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -682,16 +682,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -708,16 +708,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -734,16 +734,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -760,23 +760,23 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 #-#-----------------------------
-
+/*
 [Test]
 title 82.78 Mp4 HE  recording at Br64k Sr 32Khz 
 create openmaxaltestmodule ALImpl
@@ -788,20 +788,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
+*/
 
 [Test]
 title 82.79 Mp4 HE  recording at Br64k Sr 32Khz Stereo
@@ -814,16 +815,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -840,16 +841,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -866,16 +867,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -892,16 +893,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -918,22 +919,22 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-
+/*
 [Test]
 title 82.84 Mp4 HE  recording at Br160k Sr 32Khz 
 create openmaxaltestmodule ALImpl
@@ -945,21 +946,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
-
+*/
 
 [Test]
 title 82.85 Mp4 HE  recording at Br160k Sr 32Khz Stereo
@@ -972,21 +973,22 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+/*
 [Test]
 title 82.86 Mp4 HE  recording at Br128k Sr 32Khz 
 create openmaxaltestmodule ALImpl
@@ -998,21 +1000,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
-
+*/
 
 [Test]
 title 82.87 Mp4 HE  recording at Br128k Sr 32Khz Stereo
@@ -1025,16 +1027,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1051,21 +1053,22 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+/*
 [Test]
 title 82.89 Mp4 HE  recording at Br224k Sr 32Khz Stereo
 create openmaxaltestmodule ALImpl
@@ -1077,16 +1080,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1104,16 +1107,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1130,16 +1133,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1158,16 +1161,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1184,16 +1187,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 64000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 64000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1210,21 +1213,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
-
+/*
 [Test]
 title 82.95 Mp4 HE  recording at Br96k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
@@ -1236,21 +1239,21 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 96000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 96000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
-
+*/
 [Test]
 title 82.96 Mp4 HE  recording at Br32k Sr 48Khz 
 create openmaxaltestmodule ALImpl
@@ -1262,16 +1265,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1288,21 +1291,22 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+/*
 [Test]
 title 82.98 Mp4 HE  recording at Br160k Sr 48Khz 
 create openmaxaltestmodule ALImpl
@@ -1314,18 +1318,18 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
-
+*/
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_cc.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,510 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+[Test]
+title 40.1 RecordItf SetRecordState NULL interface
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record40_1_default.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+allownextresult 2
+ALImpl al_recorditf_SetRecordState null 3
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 40.2 RecordItf SetRecordState Invalid State
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record40_1_default.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+allownextresult 2
+ALImpl al_recorditf_SetRecordState this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 40.3 RecordItf GetRecordState NULL interface
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetRecordState null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.4 RecordItf GetRecordState NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetRecordState this -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.5 RecordItf SetDurationLimit NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_SetDurationLimit null 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]  
+
+[Test]
+title 40.6 RecordItf SetDurationLimit Invalid Param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_SetDurationLimit this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.7 RecordItf GetPosition NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetPosition null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 40.8 RecordItf GetPosition NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetPosition this -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 40.9 RecordItf RegisterCallback NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_RegisterCallback null
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 40.10 RecordItf SetCallbackEventsMask NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_SetCallbackEventsMask null 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.11 RecordItf SetCallbackEventsMask Invalid param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_SetCallbackEventsMask this 5555
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.12 RecordItf GetCallbackEventsMask NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetCallbackEventsMask null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.13 RecordItf GetCallbackEventsMask NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+allownextresult 2
+ALImpl al_recorditf_GetCallbackEventsMask this -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.14 RecordItf SetMarkerPosition NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetDurationLimit this 2000
+allownextresult 2
+ALImpl al_recorditf_SetMarkerPosition null 3000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.15 RecordItf ClearMarkerPosition NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+allownextresult 2
+ALImpl al_recorditf_ClearMarkerPosition null
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.16 RecordItf GetMarkerPosition NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+allownextresult 2
+ALImpl al_recorditf_GetMarkerPosition null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.17 RecordItf GetMarkerPosition NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+allownextresult 2
+ALImpl al_recorditf_GetMarkerPosition this -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.18 RecordItf SetPositionUpdatePeriod NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetDurationLimit this 2000
+allownextresult 2
+ALImpl al_recorditf_SetPositionUpdatePeriod null 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.19 RecordItf SetPositionUpdatePeriod Invalid param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetDurationLimit this 2000
+allownextresult 2
+ALImpl al_recorditf_SetPositionUpdatePeriod this 3000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.20 RecordItf GetPositionUpdatePeriod NULL intfc
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+allownextresult 2
+ALImpl al_recorditf_GetPositionUpdatePeriod null 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 40.21 RecordItf GetPositionUpdatePeriod NULL param
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 1 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+allownextresult 2
+ALImpl al_recorditf_GetPositionUpdatePeriod null -1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_fmrx.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,1277 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+[Test]
+title 46.1 RecordItf SetRecordState
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_1_default.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.2 RecordItf GetRecordState
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetRecordState this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.3 RecordItf SetDurationLimit
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetDurationLimit this 100000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]  
+
+[Test]
+title 46.4 RecordItf GetPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetPosition this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.5 RecordItf RegisterCallback
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_RegisterCallback this
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.6 RecordItf SetCallbackEventsMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.7 RecordItf GetCallbackEventsMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetCallbackEventsMask this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 46.8 RecordItf SetMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 46.9 RecordItf ClearMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_ClearMarkerPosition this
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.10 RecordItf SetMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_GetMarkerPosition this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.11 RecordItf SetPositionUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.12 RecordItf GetPositionUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+ALImpl al_recorditf_GetPositionUpdatePeriod this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.13 RecordItf SetRecordState AMR
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_45_13_default.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+
+[Test]
+title 46.14 RecordItf SetRecordState MP4
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_14_default.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+
+
+[Test]
+title 46.15 WAV Set Record-PAUSE-record-stop State 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_15.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.16 WAV Set settings State-recording 48 Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_16.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.17 WAV Set settings Record-PAUSE-record-stop State 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_17.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 46.18 AMR Br 4750 RecordItf Set Setting 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_18_BR4750.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.19 AMR Br 5150 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_19_BR5150.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5150 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.20 AMR Br 5900 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_20_BR5900.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5900 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.21 AMR Br 6700 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_21_BR6700.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 6700 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.22 AMR Br 7400 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_22_BR7400.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7400 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.23 AMR Br 7950 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_23_BR7950.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7950 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.24 AMR Br 10200 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_24_BR10200.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 10200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.25 AMR Br 12200 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_25_BR12200.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 12200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.26 WAV recording at 8k
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_26_8k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.27 WAV recording at 16Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_27_16k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.28 WAV recording at 32Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_28_32k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.29 WAV recording at 96khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_29_96k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 96000000 0 16 1 0 0 0 0 0 1234
+allownextresult 13
+ALImpl al_recorditf_SetRecordState this 3
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.30 WAV recording at 8khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_30_8k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.31 WAV recording at 16Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_31_16k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.32 WAV recording at 32Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_32_32k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.33 WAV recording at 96khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_33_96k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 96000000 0 16 1 0 0 0 0 0 1234
+allownextresult 13
+ALImpl al_recorditf_SetRecordState this 3
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.34 WAV recording at 48khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_34_48k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.35 WAV recording at 48khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_35_48k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.36 Mp4 recording at Br32k Sr 8Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_36_Br32k_Sr8k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.37 Mp4 recording at Br32k Sr 8Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_37_Br32k_Sr8k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.38 Mp4 recording at Br128k Sr16Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_38_Br128k_Sr16k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.39 Mp4 recording at Br128k Sr16Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_39_Br128k_Sr16k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.40 Mp4 recording at Br192k Sr32Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_40_Br192k_Sr32k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.41 Mp4 recording at Br192k Sr32Khz  Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_41_Br192k_Sr32k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.42 Mp4 recording at Br256k Sr48Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_42_Br256k_Sr48k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.43 Mp4 recording at Br256k Sr48Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_43_Br256k_Sr48k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.44 Mp4 recording at Br16k Sr8Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_44_Br16k_Sr8k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 16000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.45 WAV RecordItf Set pause-stop-Record RecordState 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_45.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 46.46 AMR  Set pause-stop-Record RecordState RecordItf
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_46.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 46.47 MP4 Set pause-stop-play RecordState RecordItf 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_47.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 46.48 WAV Set , Get Settings then Check RecordItf
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record46_48.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736399 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_incall.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,1277 @@
+//
+// 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: 
+//
+//
+
+
+// IID numbers for interfaces to mention during object creation
+//	 XA_IID_NULL                    	1
+//	 XA_IID_OBJECT                    	2
+//	 XA_IID_CONFIGEXTENSION             3
+//	 XA_IID_DYNAMICINTERFACEMANAGEMENT  4
+//	 XA_IID_ENGINE                    	5
+//	 XA_IID_THREADSYNC                  6
+//	 XA_IID_PLAY                    	7
+//	 XA_IID_PLAYBACKRATE                8
+//	 XA_IID_PREFETCHSTATUS              9
+//	 XA_IID_SEEK                    	10
+//	 XA_IID_VOLUME                    	11
+//	 XA_IID_IMAGECONTROLS               12
+//	 XA_IID_IMAGEEFFECTS                13
+//	 XA_IID_VIDEOPOSTPROCESSING         14
+//	 XA_IID_RECORD                    	15
+//	 XA_IID_SNAPSHOT                    16
+//	 XA_IID_METADATAEXTRACTION          17
+//	 XA_IID_METADATAINSERTION           18
+//	 XA_IID_METADATATRAVERSAL           19
+//	 XA_IID_DYNAMICSOURCE               20
+//	 XA_IID_CAMERACAPABILITIES          21
+//	 XA_IID_CAMERA                    	22
+//	 XA_IID_AUDIOIODEVICECAPABILITIES   23
+//	 XA_IID_DEVICEVOLUME                24
+//	 XA_IID_EQUALIZER                   25
+//	 XA_IID_OUTPUTMIX                   26
+//	 XA_IID_RADIO                    	27
+//	 XA_IID_RDS                         28
+//	 XA_IID_VIBRA                    	29
+//	 XA_IID_LED                         30
+//	 XA_IID_AUDIODECODERCAPABILITIES    31
+//	 XA_IID_AUDIOENCODER                32
+//	 XA_IID_AUDIOENCODERCAPABILITIES    33
+//	 XA_IID_IMAGEENCODERCAPABILITIES    34
+//	 XA_IID_IMAGEDECODERCAPABILITIES    35
+//	 XA_IID_IMAGEENCODER                36
+//	 XA_IID_VIDEODECODERCAPABILITIES    37
+//	 XA_IID_VIDEOENCODER                38
+//	 XA_IID_VIDEOENCODERCAPABILITIES    39
+//	 XA_IID_STREAMINFORMATION           40
+
+[Test]
+title 45.1 RecordItf SetRecordState
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_1_default.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.2 RecordItf GetRecordState
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetRecordState this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.3 RecordItf SetDurationLimit
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetDurationLimit this 100000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]  
+
+[Test]
+title 45.4 RecordItf GetPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetPosition this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.5 RecordItf RegisterCallback
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_RegisterCallback this
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.6 RecordItf SetCallbackEventsMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.7 RecordItf GetCallbackEventsMask
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_GetCallbackEventsMask this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 45.8 RecordItf SetMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 45.9 RecordItf ClearMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_ClearMarkerPosition this
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.10 RecordItf SetMarkerPosition
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetMarkerPosition this 1000
+ALImpl al_recorditf_GetMarkerPosition this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.11 RecordItf SetPositionUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.12 RecordItf GetPositionUpdatePeriod
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetPositionUpdatePeriod this 1000
+ALImpl al_recorditf_GetPositionUpdatePeriod this 0
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.13 RecordItf SetRecordState AMR
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_45_13_default.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+
+[Test]
+title 45.14 RecordItf SetRecordState MP4
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_14_default.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+
+
+[Test]
+title 45.15 WAV Set Record-PAUSE-record-stop State 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_15.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.16 WAV Set settings State-recording 48 Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_16.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.17 WAV Set settings Record-PAUSE-record-stop State 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_17.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 45.18 AMR Br 4750 RecordItf Set Setting 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_18_BR4750.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.19 AMR Br 5150 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_19_BR5150.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5150 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.20 AMR Br 5900 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_20_BR5900.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 5900 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.21 AMR Br 6700 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_21_BR6700.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 6700 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.22 AMR Br 7400 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_22_BR7400.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7400 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.23 AMR Br 7950 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_23_BR7950.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 7950 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.24 AMR Br 10200 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_24_BR10200.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 10200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.25 AMR Br 12200 RecordItf Set Setting
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_25_BR12200.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 12200 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 3
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.26 WAV recording at 8k
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_26_8k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.27 WAV recording at 16Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_27_16k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.28 WAV recording at 32Khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_28_32k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.29 WAV recording at 96khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_29_96k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 96000000 0 16 1 0 0 0 0 0 1234
+allownextresult 13
+ALImpl al_recorditf_SetRecordState this 3
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.30 WAV recording at 8khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_30_8k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 8000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.31 WAV recording at 16Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_31_16k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 15 32
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.32 WAV recording at 32Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_32_32k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 32000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.33 WAV recording at 96khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_33_96k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 96000000 0 16 1 0 0 0 0 0 1234
+allownextresult 13
+ALImpl al_recorditf_SetRecordState this 3
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.34 WAV recording at 48khz
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_34_48k.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 1 1 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.35 WAV recording at 48khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_35_48k_stereo.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 48000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.36 Mp4 recording at Br32k Sr 8Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_36_Br32k_Sr8k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.37 Mp4 recording at Br32k Sr 8Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_37_Br32k_Sr8k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.38 Mp4 recording at Br128k Sr16Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_38_Br128k_Sr16k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.39 Mp4 recording at Br128k Sr16Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_39_Br128k_Sr16k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.40 Mp4 recording at Br192k Sr32Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_40_Br192k_Sr32k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.41 Mp4 recording at Br192k Sr32Khz  Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_41_Br192k_Sr32k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.42 Mp4 recording at Br256k Sr48Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_42_Br256k_Sr48k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.43 Mp4 recording at Br256k Sr48Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_43_Br256k_Sr48k_stereo.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.44 Mp4 recording at Br16k Sr8Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_44_Br16k_Sr8k.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 16000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.45 WAV RecordItf Set pause-stop-Record RecordState 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_45.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+[Test]
+title 45.46 AMR  Set pause-stop-Record RecordState RecordItf
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_46.amr
+ALImpl al_SetDataFormat 1 audio/amr 21
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+[Test]
+title 45.47 MP4 Set pause-stop-play RecordState RecordItf 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_47.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 2
+pause 3000
+ALImpl al_recorditf_SetRecordState this 1
+pause 2000
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 45.48 WAV Set , Get Settings then Check RecordItf
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record45_48.wav
+ALImpl al_SetDataFormat 1 audio/wav 15
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736400 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 1 2 2 16000000 0 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+
+
+
+
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part2.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part2.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -27,18 +27,18 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
-ALImpl al_audioencoderitf_GetEncoderSettings check 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 3 1 1 8000000 4750 8 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -55,18 +55,18 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
-ALImpl al_audioencoderitf_GetEncoderSettings check 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 6 2 2 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -84,18 +84,18 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 2
-ALImpl al_audioencoderitf_GetEncoderSettings check 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 2
+ALImpl al_audioencoderitf_GetEncoderSettings this 0 check 13 6 1 1 8000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -113,16 +113,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -140,16 +140,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -166,16 +166,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -192,16 +192,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -218,16 +218,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -244,16 +244,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -270,16 +270,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -296,16 +296,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -322,16 +322,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -348,16 +348,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -374,16 +374,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -400,16 +400,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -426,16 +426,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -452,16 +452,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -480,16 +480,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -506,16 +506,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -532,16 +532,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -558,16 +558,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -584,16 +584,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -610,16 +610,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -636,16 +636,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -662,16 +662,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -688,16 +688,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -714,16 +714,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -740,16 +740,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -766,16 +766,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -792,16 +792,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -818,16 +818,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -846,16 +846,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -872,16 +872,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -898,16 +898,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -924,16 +924,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -950,16 +950,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -976,16 +976,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1002,16 +1002,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1028,16 +1028,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1054,16 +1054,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1080,16 +1080,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1106,16 +1106,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1132,16 +1132,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1160,16 +1160,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -1186,16 +1186,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 256000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part3.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part3.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -28,16 +28,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -54,16 +54,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 64000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -80,16 +80,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -106,16 +106,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 96000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -132,16 +132,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -158,16 +158,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 32000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -184,16 +184,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -210,16 +210,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 160000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -236,16 +236,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -262,16 +262,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 128000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -288,16 +288,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -314,16 +314,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 224000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -340,16 +340,16 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -366,226 +366,227 @@
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 192000 16 1 0 2 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-###-#-------11025---------
+#----------------------------------#
+
 
 [Test]
-title 8.106 Mp4 recording at Br32k Sr 11.025Khz 
+title 81.36 Mp4 recording at Br32k Sr 8Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.107 Mp4 recording at Br32k Sr 11.025Khz Stereo
+title 81.37 Mp4 recording at Br32k Sr 8Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr11025k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.108 Mp4 recording at Br64k Sr 11.025Khz 
+title 81.38 Mp4 recording at Br128k Sr16Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.109 Mp4 recording at Br64k Sr 11.025Khz Stereo
+title 81.39 Mp4 recording at Br128k Sr16Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr11025k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.110 Mp4 recording at Br96k Sr 11.025Khz 
+title 81.40 Mp4 recording at Br192k Sr32Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.111 Mp4 recording at Br96k Sr 11.025Khz Stereo
+title 81.41 Mp4 recording at Br192k Sr32Khz  Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr11025k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.112 Mp4 recording at Br128k Sr 11.025Khz 
+title 81.42 Mp4 recording at Br256k Sr48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.113 Mp4 recording at Br128k Sr 11.025Khz Stereo
+title 81.43 Mp4 recording at Br256k Sr48Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr11025k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 256000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -593,158 +594,26 @@
 
 
 [Test]
-title 8.114 Mp4 recording at Br160k Sr 11.025Khz 
+title 81.50 Mp4 recording at Br64k Sr 8Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.115 Mp4 recording at Br160k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr11025k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.116 Mp4 recording at Br192k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr8k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.117 Mp4 recording at Br192k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr11025k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.118 Mp4 recording at Br224k Sr 11.025Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 64000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.119 Mp4 recording at Br224k Sr 11.025Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr11025k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
@@ -752,479 +621,507 @@
 
 
 
+
+#------------------------------------
+
 [Test]
-title 8.120 Mp4 recording at Br256k Sr 11.025Khz 
+title 81.100 Mp4 Auto recording at Br128k Sr 48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 11025000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.121 Mp4 recording at Br256k Sr 11.025Khz Stereo
+title 81.101 Mp4 Auto recording at Br128k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr11025k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 11025000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 128000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-
-####-#------22050-----------
-
 [Test]
-title 8.122 Mp4 recording at Br32k Sr 22.050Khz 
+title 81.102 Mp4 Auto recording at Br224k Sr 48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.123 Mp4 recording at Br32k Sr 22.050Khz Stereo
+title 81.103 Mp4 Auto recording at Br224k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_stereo_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 224000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.124 Mp4 recording at Br64k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.125 Mp4 recording at Br64k Sr 22.050Khz Stereo
+title 81.104 Mp4 Auto recording at Br192k Sr 48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_auto.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 192000 16 1 0 0 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+#-------------------
+
+[Test]
+title 82.99 Mp4 HE  recording at Br160k Sr 48Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr48k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 160000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.126 Mp4 recording at Br96k Sr 22.050Khz 
+title 82.100 Mp4 HE  recording at Br128k Sr 48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.127 Mp4 recording at Br96k Sr 22.050Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr22050k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.128 Mp4 recording at Br128k Sr 22.050Khz 
+title 82.101 Mp4 HE  recording at Br128k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_stereo_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-
+/*
 [Test]
-title 8.129 Mp4 recording at Br128k Sr 22.050Khz Stereo
+title 82.102 Mp4 HE  recording at Br224k Sr 48Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+*/
+
+[Test]
+title 82.103 Mp4 HE  recording at Br224k Sr 48Khz Stereo
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_stereo_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 224000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
+/*
+[Test]
+title 82.104 Mp4 HE  recording at Br192k Sr 48Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+*/
 
 [Test]
-title 8.130 Mp4 recording at Br160k Sr 22.050Khz 
+title 82.105 Mp4 HE  recording at Br192k Sr 48Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_stereo_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 48000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
+
+#------------------------
+
+[Test]
+title 82.36 Mp4 HE  recording at Br32k Sr 8Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 8000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.131 Mp4 recording at Br160k Sr 22.050Khz Stereo
+title 82.37 Mp4 HE  recording at Br32k Sr 8Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_stereo_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 8000000 32000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
-
 [Test]
-title 8.132 Mp4 recording at Br192k Sr 22.050Khz 
+title 82.38 Mp4 HE  recording at Br128k Sr16Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 16000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.133 Mp4 recording at Br192k Sr 22.050Khz Stereo
+title 82.39 Mp4 HE  recording at Br128k Sr16Khz Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_stereo_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 16000000 128000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.134 Mp4 recording at Br224k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.135 Mp4 recording at Br224k Sr 22.050Khz Stereo
+title 82.40 Mp4 HE  recording at Br192k Sr32Khz 
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 32000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 8.136 Mp4 recording at Br256k Sr 22.050Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 22050000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
 
 [Test]
-title 8.137 Mp4 recording at Br256k Sr 22.050Khz Stereo
+title 82.41 Mp4 HE  recording at Br192k Sr32Khz  Stereo
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize 1 0
 ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr22050k_stereo.mp4
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_stereo_HE.mp4
 ALImpl al_SetDataFormat 1 audio/mpeg 10
 ALImpl al_SetDataSink 1 1 5
 ALImpl al_SetDataLocator 3 1 2910736385 1
 ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
 ALImpl al_objitf_Realize 5 0
 ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 22050000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 2 2 32000000 192000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
 pause 5000
-ALImpl al_recorditf_SetRecordState 1
+ALImpl al_recorditf_SetRecordState this 1
 ALImpl al_objitf_Destroy 5
 ALImpl al_objitf_Destroy 1
 delete ALImpl
 [Endtest]
+
+[Test]
+title 82.42 Mp4 HE  recording at Br256k Sr48Khz 
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize 1 0
+ALImpl al_objitf_GetInterface 1 5
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_HE.mp4
+ALImpl al_SetDataFormat 1 audio/mpeg 10
+ALImpl al_SetDataSink 1 1 5
+ALImpl al_SetDataLocator 3 1 2910736385 1
+ALImpl al_SetDataSource 3 1 1
+ALImpl al_engitf_CreateMediaRecorder this valid valid null valid 2 32 15
+ALImpl al_objitf_Realize 5 0
+ALImpl al_objitf_GetInterface 5 15
+ALImpl al_recorditf_SetCallbackEventsMask this 7
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_GetInterface 5 32
+ALImpl al_audioencoderitf_SetEncoderSettings this 0 13 6 1 1 48000000 256000 16 1 0 5 0 0 0 1234
+ALImpl al_recorditf_SetRecordState this 3
+pause 5000
+ALImpl al_recorditf_SetRecordState this 1
+ALImpl al_objitf_Destroy 5
+ALImpl al_objitf_Destroy 1
+delete ALImpl
+[Endtest]
\ No newline at end of file
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_mr_recorditf_part4.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1340 +0,0 @@
-//
-// 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: 
-//
-//
-
-
-
-
-
-#####-#-----------44100--------------
-
-[Test]
-title 8.138 Mp4 recording at Br32k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.139 Mp4 recording at Br32k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 32000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.140 Mp4 recording at Br64k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.141 Mp4 recording at Br64k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 64000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.142 Mp4 recording at Br96k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.143 Mp4 recording at Br96k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br96k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 96000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.144 Mp4 recording at Br128k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.145 Mp4 recording at Br128k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 128000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.146 Mp4 recording at Br160k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.147 Mp4 recording at Br160k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 160000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.148 Mp4 recording at Br192k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.149 Mp4 recording at Br192k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 192000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.150 Mp4 recording at Br224k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.151 Mp4 recording at Br224k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 224000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-[Test]
-title 8.152 Mp4 recording at Br256k Sr 44.1Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 44100000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.153 Mp4 recording at Br256k Sr 44.1Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr44100k_stereo.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 44100000 256000 16 1 0 2 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 8.154 WAV recording at 11.025khz
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_11025k.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 11025000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest] 
-
-[Test]
-title 8.155 WAV recording at 11.025khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_11025k_stereo.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 11025000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.156 WAV recording at 22050khz
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_22050k.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 22050000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest] 
-
-[Test]
-title 8.157 WAV recording at 22050khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_22050k_stereo.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 22050000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 8.158 WAV recording at 44.1khz
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_44100k.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 1 1 44100000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest] 
-
-[Test]
-title 8.159 WAV recording at 44.1khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_44100k_stereo.wav
-ALImpl al_SetDataFormat 1 audio/wav 15
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 1 2 2 44100000 0 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-#----------------------------------
-
-[Test]
-title 81.36 Mp4 recording at Br32k Sr 8Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.37 Mp4 recording at Br32k Sr 8Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 32000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.38 Mp4 recording at Br128k Sr16Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.39 Mp4 recording at Br128k Sr16Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.40 Mp4 recording at Br192k Sr32Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.41 Mp4 recording at Br192k Sr32Khz  Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.42 Mp4 recording at Br256k Sr48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.43 Mp4 recording at Br256k Sr48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 256000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-[Test]
-title 81.50 Mp4 recording at Br64k Sr 8Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr8k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.51 Mp4 recording at Br64k Sr 8Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br64k_Sr8k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 64000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-#------------------------------------
-
-[Test]
-title 81.100 Mp4 Auto recording at Br128k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.101 Mp4 Auto recording at Br128k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 128000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.102 Mp4 Auto recording at Br224k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.103 Mp4 Auto recording at Br224k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_stereo_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 224000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 81.104 Mp4 Auto recording at Br192k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_auto.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 192000 16 1 0 0 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-#-------------------
-
-[Test]
-title 82.99 Mp4 HE  recording at Br160k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br160k_Sr48k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 160000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.100 Mp4 HE  recording at Br128k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.101 Mp4 HE  recording at Br128k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr48k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.102 Mp4 HE  recording at Br224k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.103 Mp4 HE  recording at Br224k Sr 48Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br224k_Sr48k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 48000000 224000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.104 Mp4 HE  recording at Br192k Sr 48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr48k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-
-
-#------------------------
-
-[Test]
-title 82.36 Mp4 HE  recording at Br32k Sr 8Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 8000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.37 Mp4 HE  recording at Br32k Sr 8Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br32k_Sr8k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 8000000 32000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.38 Mp4 HE  recording at Br128k Sr16Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 16000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.39 Mp4 HE  recording at Br128k Sr16Khz Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br128k_Sr16k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 16000000 128000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.40 Mp4 HE  recording at Br192k Sr32Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 32000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.41 Mp4 HE  recording at Br192k Sr32Khz  Stereo
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br192k_Sr32k_stereo_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 2 2 32000000 192000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
-
-[Test]
-title 82.42 Mp4 HE  recording at Br256k Sr48Khz 
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize 1 0
-ALImpl al_objitf_GetInterface 1 5
-ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/record_Br256k_Sr48k_HE.mp4
-ALImpl al_SetDataFormat 1 audio/mpeg 10
-ALImpl al_SetDataSink 1 1 5
-ALImpl al_SetDataLocator 3 1 2910736385 1
-ALImpl al_SetDataSource 3 1 1
-ALImpl al_engitf_CreateMediaRecorder 1 15
-ALImpl al_objitf_Realize 5 0
-ALImpl al_objitf_GetInterface 5 15
-ALImpl al_recorditf_SetCallbackEventsMask 7
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_GetInterface 5 32
-ALImpl al_audioencoderitf_SetEncoderSettings 13 6 1 1 48000000 256000 16 1 0 5 0 0 0 1234
-ALImpl al_recorditf_SetRecordState 3
-pause 5000
-ALImpl al_recorditf_SetRecordState 1
-ALImpl al_objitf_Destroy 5
-ALImpl al_objitf_Destroy 1
-delete ALImpl
-[Endtest]
\ No newline at end of file
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_radioitf.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/openmaxaltestmodule_radioitf.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -92,6 +92,13 @@
 
 ALImpl al_radioitf_GetFreqRange 2 // EFmRangeJapan
 
+request Event_XA_RADIO_EVENT_FREQUENCY_RANGE_CHANGED
+ALImpl al_radioitf_SetFreqRange 1 
+wait Event_XA_RADIO_EVENT_FREQUENCY_RANGE_CHANGED
+release Event_XA_RADIO_EVENT_FREQUENCY_RANGE_CHANGED
+
+ALImpl al_radioitf_GetFreqRange 1 // EFmRangeEuroAmerica
+
 ALImpl al_objitf_Destroy MO_RADIO
 ALImpl al_objitf_Destroy MO_PLAYER
 ALImpl al_objitf_Destroy MO_ENGINE
@@ -188,6 +195,8 @@
 release Event_XA_RADIO_EVENT_FREQUENCY_CHANGED
 
 ALImpl al_radioitf_SetSquelch 1
+ALImpl al_radioitf_SetSquelch 0
+ALImpl al_radioitf_SetSquelch 0
 
 ALImpl al_objitf_Destroy MO_RADIO
 ALImpl al_objitf_Destroy MO_PLAYER
@@ -230,7 +239,7 @@
 [Endtest] 
 
 [Test]
-title 21.8 RadioItfSetStereoModeMONO
+title 21.8 RadioItf Set-Get Stereo Mode
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -258,41 +267,27 @@
 ALImpl al_radioitf_SetStereoMode 0
 ALImpl al_radioitf_GetStereoMode 0
 
-ALImpl al_objitf_Destroy MO_RADIO
-ALImpl al_objitf_Destroy MO_PLAYER
-ALImpl al_objitf_Destroy MO_ENGINE
-delete ALImpl
-[Endtest] 
+ALImpl al_radioitf_SetStereoMode 1
+ALImpl al_radioitf_GetStereoMode 1
+
+ALImpl al_radioitf_SetStereoMode 2
+ALImpl al_radioitf_GetStereoMode 2
 
-[Test]
-title 21.9 RadioItf SetStereoModeSTEREO
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
-ALImpl al_engitf_CreateRadioDevice 0
-ALImpl al_objitf_Realize MO_RADIO XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface MO_RADIO XA_IID_RADIO
-ALImpl al_radioitf_RegisterRadioCallback  
+ALImpl al_radioitf_SetStereoMode 0
+ALImpl al_radioitf_GetStereoMode 0
 
-ALImpl al_SetDataLocator 3 5 0 1
-ALImpl al_SetDataSource 3 0 1
-ALImpl al_SetDataSink 3 6 1
-
-ALImpl al_engitf_CreateMediaPlayer 0 
-
-ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface 4 XA_IID_PLAY
-ALImpl al_playitf_RegisterCallback
-
-request Event_XA_PLAYEVENT_HEADMOVING
-ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
-wait Event_XA_PLAYEVENT_HEADMOVING
-release Event_XA_PLAYEVENT_HEADMOVING
+ALImpl al_radioitf_SetStereoMode 2
+ALImpl al_radioitf_GetStereoMode 2
 
 ALImpl al_radioitf_SetStereoMode 1
 ALImpl al_radioitf_GetStereoMode 1
 
+ALImpl al_radioitf_SetStereoMode 1
+ALImpl al_radioitf_GetStereoMode 1
+
+allownextresult 2
+ALImpl al_radioitf_SetStereoMode 4
+
 ALImpl al_objitf_Destroy MO_RADIO
 ALImpl al_objitf_Destroy MO_PLAYER
 ALImpl al_objitf_Destroy MO_ENGINE
@@ -300,41 +295,7 @@
 [Endtest] 
 
 [Test]
-title 21.10 RadioItf SetStereoModeAUTO
-create openmaxaltestmodule ALImpl
-ALImpl al_createEngine 1 1 0 0
-ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
-ALImpl al_engitf_CreateRadioDevice 0
-ALImpl al_objitf_Realize MO_RADIO XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface MO_RADIO XA_IID_RADIO
-ALImpl al_radioitf_RegisterRadioCallback  
-
-ALImpl al_SetDataLocator 3 5 0 1
-ALImpl al_SetDataSource 3 0 1
-ALImpl al_SetDataSink 3 6 1
-
-ALImpl al_engitf_CreateMediaPlayer 0 
-
-ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
-ALImpl al_objitf_GetInterface 4 XA_IID_PLAY
-ALImpl al_playitf_RegisterCallback
-
-request Event_XA_PLAYEVENT_HEADMOVING
-ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
-wait Event_XA_PLAYEVENT_HEADMOVING
-release Event_XA_PLAYEVENT_HEADMOVING
-
-ALImpl al_radioitf_SetStereoMode 2
-ALImpl al_radioitf_GetStereoMode 2
-
-ALImpl al_objitf_Destroy MO_RADIO
-ALImpl al_objitf_Destroy MO_PLAYER
-ALImpl al_objitf_Destroy MO_ENGINE
-delete ALImpl
-[Endtest] 
-[Test]
-title 21.11 RadioItf Get Signal Strength
+title 21.9 RadioItf Get Signal Strength
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -368,7 +329,7 @@
 [Endtest] 
 
 [Test]
-title 21.12 RadioItf Seek
+title 21.10 RadioItf Seek
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -421,7 +382,7 @@
 [Endtest] 
 
 [Test]
-title 21.13 RadioItf Stop Seeking
+title 21.11 RadioItf Stop Seeking
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -471,7 +432,7 @@
 [Endtest]
 
 [Test]
-title 21.14 RadioItf Cancel Set Freq
+title 21.12 RadioItf Cancel Set Freq
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -500,7 +461,7 @@
 [Endtest]  
 
 [Test]
-title 21.15 RadioItf Set Volume
+title 21.13 RadioItf Set Volume
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -525,6 +486,7 @@
 ALImpl al_nokialinearvolumeitf_RegisterVolumeCallback
 
 ALImpl al_nokialinearvolumeitf_SetGetVolumeLevel 20
+ALImpl al_nokialinearvolumeitf_SetGetVolumeLevel 40
 
 ALImpl al_objitf_Destroy MO_RADIO
 ALImpl al_objitf_Destroy MO_PLAYER
@@ -533,7 +495,7 @@
 [Endtest] 
 
 [Test]
-title 21.16 RadioItf Get Step Count
+title 21.14 RadioItf Get Step Count
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -566,7 +528,7 @@
 [Endtest] 
 
 [Test]
-title 21.17 RadioItf SetMute On
+title 21.15 RadioItf SetMute On
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -590,6 +552,7 @@
 ALImpl al_nokiavolumeextitf_RegisterVolumeCallback
 ALImpl al_nokialinearvolumeitf_RegisterVolumeCallback
 
+ALImpl al_nokialinearvolumeitf_SetGetVolumeLevel 50
 ALImpl al_nokiavolumeextitf_SetMute 1
 
 ALImpl al_objitf_Destroy MO_RADIO
@@ -599,7 +562,7 @@
 [Endtest] 
 
 [Test]
-title 21.18 RadioItf SetMute Off
+title 21.16 RadioItf SetMute Off
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -632,7 +595,7 @@
 [Endtest] 
 
 [Test]
-title 21.19 RadioItf Stop Radio
+title 21.17 RadioItf Stop Radio
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -668,7 +631,7 @@
 [Endtest]  
 
 [Test]
-title 21.20 RadioItf Set Freq ERROR--too big
+title 21.18 RadioItf Set Freq ERROR--too big
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -699,7 +662,7 @@
 [Endtest]
 
 [Test]
-title 21.21 RadioItf Set Invalid Freq Range
+title 21.19 RadioItf Set Invalid Freq Range
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -730,7 +693,7 @@
 [Endtest]
 
 [Test]
-title 21.22 RadioItf Get # of presets
+title 21.20 RadioItf Get # of presets
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -760,7 +723,7 @@
 [Endtest]
 
 [Test]
-title 21.23 RadioItf Set Preset
+title 21.21 RadioItf Set Preset
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -791,7 +754,7 @@
 [Endtest]
 
 [Test]
-title 21.24 RadioItf Get Preset
+title 21.22 RadioItf Get Preset
 create openmaxaltestmodule ALImpl
 ALImpl al_createEngine 1 1 0 0
 ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
@@ -818,4 +781,38 @@
 ALImpl al_objitf_Destroy MO_PLAYER
 ALImpl al_objitf_Destroy MO_ENGINE
 delete ALImpl
+[Endtest]
+
+[Test]
+title 21.23 Radio QueryNumSupportedInterfaces
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_engitf_CreateRadioDevice 0
+ALImpl al_objitf_Realize MO_RADIO XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_RADIO XA_IID_RADIO
+ALImpl al_radioitf_RegisterRadioCallback
+
+ALImpl al_engitf_QueryNumSupportedInterfaces valid 6 valid
+ALImpl al_objitf_Destroy MO_RADIO
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
+[Endtest] 
+
+[Test]
+title 21.24 Radio QuerySupportedInterfaces
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_engitf_CreateRadioDevice 0
+ALImpl al_objitf_Realize MO_RADIO XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_RADIO XA_IID_RADIO
+ALImpl al_radioitf_RegisterRadioCallback
+
+ALImpl al_engitf_QuerySupportedInterfaces valid 6 0 valid
+ALImpl al_objitf_Destroy MO_RADIO
+ALImpl al_objitf_Destroy MO_ENGINE
+delete ALImpl
 [Endtest]
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/conf/xa_mp_videoppitf_cc.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,1074 @@
+//
+// 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:
+//
+//
+
+
+[StifSettings]
+CheckHeapBalance=off
+[EndStifSettings]
+
+[Test]
+title 28.1.1 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetRotation null 90000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.2 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetRotation invalid 90000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.3 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_FEATURE_UNSUPPORTED
+ALImpl al_videoppitf_SetRotation this 80000
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.4 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetRotation this 90000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.5 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_videoppitf_SetRotation this 0
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.6 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetRotation this 0
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.7 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_videoppitf_SetRotation this 180000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.8 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetRotation this 180000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.9 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_videoppitf_SetRotation this 270000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.10 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetRotation this 270000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.11 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_videoppitf_SetRotation this 360000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.1.12 VideoPPItf SetRotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetRotation this 360000
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.2.1 VideoPPItf IsArbitraryRotationSupported
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_IsArbitraryRotationSupported null 0
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.2.2 VideoPPItf IsArbitraryRotationSupported
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_IsArbitraryRotationSupported invalid 0
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.2.3 VideoPPItf IsArbitraryRotationSupported
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_IsArbitraryRotationSupported this -1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.3.1 VideoPPItf SetSourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetSourceRectangle null valid 100 100 200 200
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.3.2 VideoPPItf SetSourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetSourceRectangle invalid valid 100 100 200 200
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.3.3 VideoPPItf SetSourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetSourceRectangle valid null
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.3.4 VideoPPItf SetSourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.4.1 VideoPPItf SetDestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetDestinationRectangle null valid 100 100 200 200
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.4.2 VideoPPItf SetDestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetDestinationRectangle invalid valid 100 100 200 200
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.4.3 VideoPPItf SetDestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetDestinationRectangle valid null
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.4.4 VideoPPItf SetDestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetDestinationRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.5.1 VideoPPItf SetScaleOptions STRETCH
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetScaleOptions null 1 1 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.5.2 VideoPPItf SetScaleOptions STRETCH
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetScaleOptions invalid 1 1 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.5.3 VideoPPItf SetScaleOptions STRETCH
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetScaleOptions this 4 1 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.5.5 VideoPPItf SetScaleOptions STRETCH
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PLAYING
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PLAYING
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_PAUSED
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+ALImpl al_videoppitf_SetScaleOptions this 1 1 1
+ALImpl al_videoppitf_Commit this
+pause 1000
+ALImpl al_playitf_SetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_playitf_GetPlayState XA_PLAYSTATE_STOPPED
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.1 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror null 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.2 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror invalid 1
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.3 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror this 2
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.4 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror this 3
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.5 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror this 4
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.8.6 VideoPPItf SetMirror
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_SetMirror this 5
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.1 VideoPPItf Commit
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetRotation this 90000
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_Commit null
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.2 VideoPPItf Commit
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+allownextresult XA_RESULT_PARAMETER_INVALID
+ALImpl al_videoppitf_Commit invalid
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.3 VideoPPItf Commit No change
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test_video.3gp
+ALImpl al_SetDataFormat 1 video/3gp 23
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_Commit this
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.4 VideoPPItf Commit Rotation
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetRotation this 90000
+allownextresult XA_RESULT_FEATURE_UNSUPPORTED
+ALImpl al_videoppitf_Commit this
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.5 VideoPPItf Commit SourceRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetSourceRectangle this valid 100 100 200 200
+allownextresult XA_RESULT_FEATURE_UNSUPPORTED
+ALImpl al_videoppitf_Commit this
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.6 VideoPPItf Commit DestinationRectangle
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer  1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetDestinationRectangle this valid 100 100 200 200
+allownextresult XA_RESULT_FEATURE_UNSUPPORTED
+ALImpl al_videoppitf_Commit this
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
+
+[Test]
+title 28.9.7 VideoPPItf Commit ScaleOptions
+create openmaxaltestmodule ALImpl
+ALImpl al_createEngine 1 1 0 0
+ALImpl al_objitf_Realize MO_ENGINE XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_ENGINE XA_IID_ENGINE
+ALImpl al_SetDataLocator 1 file:/\/\/c:/testing/data/omxaltestdata/test.mp3
+ALImpl al_SetDataFormat 1 audio/mpeg 9
+ALImpl al_SetDataSource 1 1 1
+ALImpl al_SetDataSink 3 6 1
+ALImpl al_CreateWindow WinPtX WinPtY WinTopLeft WinTopRight WinBotLeft WinBotRight
+ALImpl al_SetDataSink 5 3 2
+ALImpl al_engitf_CreateMediaPlayer 1 14
+ALImpl al_objitf_Realize MO_PLAYER XA_BOOLEAN_FALSE
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_PLAY
+ALImpl al_objitf_GetInterface MO_PLAYER XA_IID_VIDEOPOSTPROCESSING
+ALImpl al_videoppitf_SetScaleOptions this 1 1 1
+allownextresult XA_RESULT_FEATURE_UNSUPPORTED
+ALImpl al_videoppitf_Commit this
+ALImpl al_objitf_Destroy MO_PLAYER
+ALImpl al_objitf_Destroy MO_ENGINE
+ALImpl al_DeleteWindow
+delete ALImpl
+[Endtest]
Binary file mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/data/c/omxaltestdata/test_video.3gp has changed
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* 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"
@@ -10,7 +10,7 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
-* 
+*
 * Description:
 *
 */
@@ -23,43 +23,50 @@
 ../conf/openmaxaltestmodule_common_noklinvolitf.cfg /epoc32/winscw/c/testframework/openmaxaltestmodule_common_noklinvolitf.cfg
 ../conf/openmaxaltestmodule_common_nokvolextitf.cfg /epoc32/winscw/c/testframework/openmaxaltestmodule_common_nokvolextitf.cfg
 ../conf/openmaxaltestmodule_common_volumeitf.cfg    /epoc32/winscw/c/testframework/openmaxaltestmodule_common_volumeitf.cfg
+../conf/openmaxaltestmodule_common_videoppitf.cfg    /epoc32/winscw/c/testframework/openmaxaltestmodule_common_videoppitf.cfg
+../conf/xa_mp_videoppitf_cc.cfg                             /epoc32/winscw/c/testframework/xa_mp_videoppitf_cc.cfg
 ../conf/openmaxaltestmodule_objectitf.cfg           /epoc32/winscw/c/testframework/openmaxaltestmodule_objectitf.cfg
-../conf/openmaxaltestmodule_mr.cfg   					/epoc32/winscw/c/testframework/openmaxaltestmodule_mr.cfg
-../conf/openmaxaltestmodule_mr_mdinsertionitf.cfg   	/epoc32/winscw/c/testframework/openmaxaltestmodule_mr_mdinsertionitf.cfg
-../conf/openmaxaltestmodule_mr_audioencoderitf.cfg  	/epoc32/winscw/c/testframework/openmaxaltestmodule_mr_audioencoderitf.cfg
+../conf/openmaxaltestmodule_mr.cfg                      /epoc32/winscw/c/testframework/openmaxaltestmodule_mr.cfg
+../conf/openmaxaltestmodule_mr_mdinsertionitf.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_mdinsertionitf.cfg
+../conf/openmaxaltestmodule_mr_audioencoderitf.cfg      /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_audioencoderitf.cfg
 ../conf/openmaxaltestmodule_engine_audenccapitf.cfg /epoc32/winscw/c/testframework/openmaxaltestmodule_engine_audenccapitf.cfg
 ../conf/openmaxaltestmodule_global.cfg              /epoc32/winscw/c/testframework/openmaxaltestmodule_global.cfg
 ../conf/openmaxaltestmodule_engine_engineitf.cfg    /epoc32/winscw/c/testframework/openmaxaltestmodule_engine_engineitf.cfg
 ../conf/openmaxaltestmodule_engine_aiodcitf.cfg     /epoc32/winscw/c/testframework/openmaxaltestmodule_engine_aiodcitf.cfg
-../conf/openmaxaltestmodule_mp.cfg 		    /epoc32/winscw/c/testframework/openmaxaltestmodule_mp.cfg
-../conf/openmaxaltestmodule_mo.cfg 		    /epoc32/winscw/c/testframework/openmaxaltestmodule_mo.cfg
-../conf/openmaxaltestmodule_mp_objectitf.cfg 	    /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_objectitf.cfg
-../conf/openmaxaltestmodule_mp_playitf.cfg 	    /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_playitf.cfg
-../conf/openmaxaltestmodule_mp_seekitf.cfg 	    /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_seekitf.cfg
+../conf/openmaxaltestmodule_mp.cfg          /epoc32/winscw/c/testframework/openmaxaltestmodule_mp.cfg
+../conf/openmaxaltestmodule_mo.cfg          /epoc32/winscw/c/testframework/openmaxaltestmodule_mo.cfg
+../conf/openmaxaltestmodule_mp_objectitf.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_objectitf.cfg
+../conf/openmaxaltestmodule_mp_playitf.cfg      /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_playitf.cfg
+../conf/openmaxaltestmodule_mp_seekitf.cfg      /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_seekitf.cfg
 ../conf/openmaxaltestmodule_mp_variousformats.cfg   /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_variousformats.cfg
 ../conf/openmaxaltestmodule_common_dynsrcitf.cfg    /epoc32/winscw/c/testframework/openmaxaltestmodule_common_dynsrcitf.cfg
-../conf/openmaxaltestmodule_mp_strminfoitf.cfg 	    /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_strminfoitf.cfg
+../conf/openmaxaltestmodule_mp_strminfoitf.cfg      /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_strminfoitf.cfg
 ../conf/openmaxaltestmodule_mp_preemption.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_preemption.cfg
 ../conf/openmaxaltestmodule_mo_mdextractionitf.cfg  /epoc32/winscw/c/testframework/openmaxaltestmodule_mo_mdextractionitf.cfg
 ../conf/openmaxaltestmodule_mp_mdextractionitf.cfg  /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_mdextractionitf.cfg
-../conf/openmaxaltestmodule_radioitf.cfg 	    /epoc32/winscw/c/testframework/openmaxaltestmodule_radioitf.cfg
+../conf/openmaxaltestmodule_mp_prefetchstatusitf.cfg /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_prefetchstatusitf.cfg
+../conf/openmaxaltestmodule_radioitf.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_radioitf.cfg
 ../conf/openmaxaltestmodule_mp_streaming.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_streaming.cfg
 ../conf/openmaxaltestmodule_mp_playbackrateitf.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mp_playbackrateitf.cfg
 ../conf/openmaxaltestmodule_mr_recorditf.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf.cfg
 ../conf/openmaxaltestmodule_mr_recorditf_part2.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_part2.cfg
 ../conf/openmaxaltestmodule_mr_recorditf_part3.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_part3.cfg
-../conf/openmaxaltestmodule_mr_recorditf_part4.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_part4.cfg
 ../conf/openmaxaltestmodule_mr_recorditf_aac_auto.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_aac_auto.cfg
-../conf/openmaxaltestmodule_mr_record_aac_au_p2.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_record_aac_au_p2.cfg
 ../conf/openmaxaltestmodule_mr_recorditf_aac_he.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_aac_he.cfg
-../conf/openmaxaltestmodule_mr_record_aac_he_p2.cfg       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_record_aac_he_p2.cfg
+../conf/openmaxaltestmodule_mr_recorditf_incall.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_incall.cfg
+../conf/openmaxaltestmodule_mr_recorditf_fmrx.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_fmrx.cfg
 
+../conf/openmaxaltestmodule_mr_cc.cfg                       /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_cc.cfg
+../conf/openmaxaltestmodule_mr_recorditf_cc.cfg        /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_recorditf_cc.cfg
+../conf/openmaxaltestmodule_mr_mdinsertionitf_cc.cfg    /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_mdinsertionitf_cc.cfg
+../conf/openmaxaltestmodule_mr_audioencoderitf_cc.cfg   /epoc32/winscw/c/testframework/openmaxaltestmodule_mr_audioencoderitf_cc.cfg
 
 ../data/c/omxaltestdata/test.wav                    /epoc32/winscw/c/testing/data/omxaltestdata/test.wav
 ../data/c/omxaltestdata/test.mp3                    /epoc32/winscw/c/testing/data/omxaltestdata/test.mp3
 ../data/c/omxaltestdata/test.3gp                    /epoc32/winscw/c/testing/data/omxaltestdata/test.3gp
 ../data/c/omxaltestdata/JapJap.mp3                  /epoc32/winscw/c/testing/data/omxaltestdata/JapJap.mp3
 ../data/c/omxaltestdata/testmp4.mp4                 /epoc32/winscw/c/testing/data/omxaltestdata/testmp4.mp4
+../data/c/omxaltestdata/test_video.3gp                          /epoc32/winscw/c/testing/data/omxaltestdata/test_video.3gp
 ../init/testframework.ini                           /epoc32/winscw/c/testframework/testframework.ini
 
 PRJ_EXPORTS
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 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"
@@ -10,8 +10,8 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
-* 
-* Description: MMP file for STIF Test Framework's TestScripter 
+*
+* Description: MMP file for STIF Test Framework's TestScripter
 * testclass openmaxal module.
 *
 */
@@ -25,74 +25,71 @@
 UID             0x1000008D 0x10207CA4
 
 CAPABILITY      ALL -TCB
-VENDORID     VID_DEFAULT
-/* Remove comments and replace 0x00000000 with correct secure id */
-// SECUREID     0x00000000
-
-//TARGETPATH      ?target_path
-DEFFILE         openmaxaltestmodule.def
+VENDORID        VID_DEFAULT
 
 //MACRO           PROFILE_TIME
 //MACRO           PRINT_TO_CONSOLE_TIME_DIFF
 
-USERINCLUDE     ../inc 
+USERINCLUDE     ../inc
 OS_LAYER_LIBC_SYSTEMINCLUDE
 OS_LAYER_GLIB_SYSTEMINCLUDE
 OS_LAYER_SYSTEMINCLUDE
-SYSTEMINCLUDE 	/epoc32/include/platform/mw/khronos/ 
+SYSTEMINCLUDE   /epoc32/include/platform/mw/khronos/
 MW_LAYER_SYSTEMINCLUDE
 
 SOURCEPATH      ../src/common
 SOURCE          openmaxaltestmodule.cpp
 SOURCE          openmaxaltestmoduleblocks.cpp
-SOURCE          openmaxalcommontests.cpp 
-SOURCE 			openmaxalobjectitftests.cpp
-SOURCE          openmaxalobjectcallbacks.cpp 
+SOURCE          openmaxalcommontests.cpp
+SOURCE          openmaxalobjectitftests.cpp
+SOURCE          openmaxalobjectcallbacks.cpp
 SOURCE          openmaxaldynitfmgmtitftests.cpp
 SOURCE          openmaxaldynitfmgmtitfcallbacks.cpp
-SOURCE		 	openmaxaldynsrcitftests.cpp
-SOURCE			openmaxalstrminfoitftests.cpp
-SOURCE			openmaxalvolumeitftests.cpp
-SOURCE			openmaxalnokiavolumeextitftests.cpp
-SOURCE			openmaxalnokialinearvolumeitftests.cpp
-SOURCE 			TimeoutController.cpp
-
+SOURCE          openmaxaldynsrcitftests.cpp
+SOURCE          openmaxalstrminfoitftests.cpp
+SOURCE          openmaxalvolumeitftests.cpp
+SOURCE          openmaxalnokiavolumeextitftests.cpp
+SOURCE          openmaxalnokialinearvolumeitftests.cpp
+SOURCE          TimeoutController.cpp
+SOURCE          openmaxalvideoppitftests.cpp
 
 SOURCEPATH      ../src/engine
-SOURCE		openmaxalenginetests.cpp 
-SOURCE 		openmaxalengineitftests.cpp
-SOURCE 		openmaxalaudioiodevicecapabilitiesitftests.cpp
-SOURCE 		openmaxalaudioencodercapabiltiesitftests.cpp
-SOURCE          openmaxalaudioiodevicecapabilitiesitfcallbacks.cpp 
+SOURCE          openmaxalenginetests.cpp
+SOURCE          openmaxalengineitftests.cpp
+SOURCE          openmaxalaudioiodevicecapabilitiesitftests.cpp
+SOURCE          openmaxalaudioencodercapabiltiesitftests.cpp
+SOURCE          openmaxalaudioiodevicecapabilitiesitfcallbacks.cpp
 
 SOURCEPATH      ../src/recorder
-SOURCE 		openmaxalrecorditftests.cpp
-SOURCE 		openmaxalaudioencoderitftests.cpp
-SOURCE 		openmaxalmetadatainsertionitftests.cpp 
-SOURCE          openmaxalrecorditfcallbacks.cpp 
+SOURCE          openmaxalrecorditftests.cpp
+SOURCE          openmaxalaudioencoderitftests.cpp
+SOURCE          openmaxalmetadatainsertionitftests.cpp
+SOURCE          openmaxalrecorditfcallbacks.cpp
 SOURCE          openmaxalmetadatainsertionitfcallbacks.cpp
 
-SOURCEPATH 	../src/player
-SOURCE 		openmaxalplayitftests.cpp
-SOURCE 		openmaxalseekitftests.cpp
-SOURCE 		openmaxalplaybackrateitftests.cpp
+SOURCEPATH      ../src/player
+SOURCE          openmaxalplayitftests.cpp
+SOURCE          openmaxalseekitftests.cpp
+SOURCE          openmaxalplaybackrateitftests.cpp
+SOURCE          openmaxalprefetchstatusitftests.cpp
 
 SOURCEPATH      ../src/metadata
-SOURCE		openmaxalmetadataextractionitftests.cpp
+SOURCE          openmaxalmetadataextractionitftests.cpp
 
 SOURCEPATH      ../src/radio
-SOURCE 		openmaxalradioitftests.cpp
+SOURCE          openmaxalradioitftests.cpp
 
 LIBRARY         euser.lib
-LIBRARY			libglib.lib
+LIBRARY         libglib.lib
 LIBRARY         stiftestinterface.lib
 LIBRARY         stiftestengine.lib
-LIBRARY		ecom.lib
+LIBRARY         ecom.lib
 LIBRARY         openmaxal.lib
-LIBRARY		libc.lib
-LIBRARY		ws32.lib
+LIBRARY         libc.lib
+LIBRARY         ws32.lib
 LANG            SC
 
+DEFFILE         openmaxaltestmodule.def
 
 
 // End of File
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.pkg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/group/openmaxaltestmodule.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,5 @@
 ;
-; Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+; 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"
@@ -10,17 +10,17 @@
 ; Nokia Corporation - initial contribution.
 ;
 ; Contributors:
-; 
+;
 ; Description:
 ;
-; 	Installation file for STIF
+;   Installation file for STIF
 ;
 
 ; Languages
 &EN
 
 ; Provide value for uid
-#{"OpenMAXALTestModule"},(0x10207CA4),1,1,0,TYPE=SA
+#{"OpenMAXALTestModule"},(0x10207CA4),1,1,0,TYPE=SA, RU
 
 ; Series60 product id for S60 3.0
 [0x101F7961], 0, 0, 0, {"Series60ProductID"}
@@ -52,11 +52,13 @@
 "..\conf\openmaxaltestmodule_common_noklinvolitf.cfg"               -   "!:\testframework\openmaxaltestmodule_common_noklinvolitf.cfg"
 "..\conf\openmaxaltestmodule_common_nokvolextitf.cfg"               -   "!:\testframework\openmaxaltestmodule_common_nokvolextitf.cfg"
 "..\conf\openmaxaltestmodule_common_volumeitf.cfg"                  -   "!:\testframework\openmaxaltestmodule_common_volumeitf.cfg"
+"..\conf\openmaxaltestmodule_common_videoppitf.cfg"                 -   "!:\testframework\openmaxaltestmodule_common_videoppitf.cfg"
+"..\conf\xa_mp_videoppitf_cc.cfg"                                   -   "!:\testframework\xa_mp_videoppitf_cc.cfg"
 "..\conf\openmaxaltestmodule_objectitf.cfg"                         -   "!:\testframework\openmaxaltestmodule_objectitf.cfg"
 "..\conf\openmaxaltestmodule_engine_engineitf.cfg"                  -   "!:\testframework\openmaxaltestmodule_engine_engineitf.cfg"
 "..\conf\openmaxaltestmodule_engine_audenccapitf.cfg"               -   "!:\testframework\openmaxaltestmodule_engine_audenccapitf.cfg"
 "..\conf\openmaxaltestmodule_engine_aiodcitf.cfg"                   -   "!:\testframework\openmaxaltestmodule_engine_aiodcitf.cfg"
-"..\conf\openmaxaltestmodule_mr.cfg"                      			-   "!:\testframework\openmaxaltestmodule_mr.cfg"
+"..\conf\openmaxaltestmodule_mr.cfg"                                -   "!:\testframework\openmaxaltestmodule_mr.cfg"
 "..\conf\openmaxaltestmodule_mr_mdinsertionitf.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_mdinsertionitf.cfg"
 "..\conf\openmaxaltestmodule_mr_audioencoderitf.cfg"                -   "!:\testframework\openmaxaltestmodule_mr_audioencoderitf.cfg"
 "..\conf\openmaxaltestmodule_mp.cfg"                                -   "!:\testframework\openmaxaltestmodule_mp.cfg"
@@ -72,22 +74,29 @@
 "..\conf\openmaxaltestmodule_mp_variousformats.cfg"                 -   "!:\testframework\openmaxaltestmodule_mp_variousformats.cfg"
 "..\conf\openmaxaltestmodule_radioitf.cfg"                          -   "!:\testframework\openmaxaltestmodule_radioitf.cfg"
 "..\conf\openmaxaltestmodule_mp_streaming.cfg"                      -   "!:\testframework\openmaxaltestmodule_mp_streaming.cfg"
-"..\conf\openmaxaltestmodule_mp_playbackrateitf.cfg"                      -   "!:\testframework\openmaxaltestmodule_mp_playbackrateitf.cfg"
+"..\conf\openmaxaltestmodule_mp_playbackrateitf.cfg"                -   "!:\testframework\openmaxaltestmodule_mp_playbackrateitf.cfg"
 "..\conf\openmaxaltestmodule_mr_recorditf.cfg"                      -   "!:\testframework\openmaxaltestmodule_mr_recorditf.cfg"
-"..\conf\openmaxaltestmodule_mr_recorditf_part2.cfg"                      -   "!:\testframework\openmaxaltestmodule_mr_recorditf_part2.cfg"
-"..\conf\openmaxaltestmodule_mr_recorditf_part3.cfg"                      -   "!:\testframework\openmaxaltestmodule_mr_recorditf_part3.cfg"
-"..\conf\openmaxaltestmodule_mr_recorditf_part4.cfg"                      -   "!:\testframework\openmaxaltestmodule_mr_recorditf_part4.cfg"
-"..\conf\openmaxaltestmodule_mr_recorditf_aac_auto.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_recorditf_aac_auto.cfg"
-"..\conf\openmaxaltestmodule_mr_recorditf_aac_he.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_recorditf_aac_he.cfg"
-"..\conf\openmaxaltestmodule_mr_record_aac_au_p2.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_rec_aac_au_p2.cfg"
-"..\conf\openmaxaltestmodule_mr_record_aac_he_p2.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_rec_aac_he_p2.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_part2.cfg"                -   "!:\testframework\openmaxaltestmodule_mr_recorditf_part2.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_part3.cfg"                -   "!:\testframework\openmaxaltestmodule_mr_recorditf_part3.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_aac_auto.cfg"             -   "!:\testframework\openmaxaltestmodule_mr_recorditf_aac_auto.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_aac_he.cfg"               -   "!:\testframework\openmaxaltestmodule_mr_recorditf_aac_he.cfg"
+"..\conf\openmaxaltestmodule_mp_prefetchstatusitf.cfg"              -   "!:\testframework\openmaxaltestmodule_mp_prefetchstatusitf.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_incall.cfg"               -   "!:\testframework\openmaxaltestmodule_mr_recorditf_incall.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_fmrx.cfg"                 -   "!:\testframework\openmaxaltestmodule_mr_recorditf_fmrx.cfg"
+
+"..\conf\openmaxaltestmodule_mr_cc.cfg"                             -   "!:\testframework\openmaxaltestmodule_mr_cc.cfg"
+"..\conf\openmaxaltestmodule_mr_recorditf_cc.cfg"                   -   "!:\testframework\openmaxaltestmodule_mr_recorditf_cc.cfg"
+"..\conf\openmaxaltestmodule_mr_mdinsertionitf_cc.cfg"              -   "!:\testframework\openmaxaltestmodule_mr_mdinsertionitf_cc.cfg"
+"..\conf\openmaxaltestmodule_mr_audioencoderitf_cc.cfg"             -   "!:\testframework\openmaxaltestmodule_mr_audioencoderitf_cc.cfg"
+
 ;data files
 "..\data\c\omxaltestdata\test.wav"                                  -   "!:\testing\data\omxaltestdata\test.wav"
 "..\data\c\omxaltestdata\test.mp3"                                  -  "!:\testing\data\omxaltestdata\test.mp3"
 "..\data\c\omxaltestdata\test.3gp"                                  -  "!:\testing\data\omxaltestdata\test.3gp"
 "..\data\c\omxaltestdata\JapJap.mp3"                                -   "!:\testing\data\omxaltestdata\JapJap.mp3"
 "..\data\c\omxaltestdata\testmp4.mp4"                               -   "!:\testing\data\omxaltestdata\testmp4.mp4"
-; Embedded SIS 
+"..\data\c\omxaltestdata\test_video.3gp"                                                        -   "!:\testing\data\omxaltestdata\test_video.3gp"
+; Embedded SIS
 ; None
 
 ; End of Package body
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/inc/openmaxaltestmodule.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/inc/openmaxaltestmodule.h	Mon Oct 04 00:51:56 2010 +0300
@@ -29,6 +29,7 @@
 #include <e32msgqueue.h>
 #include "TimeoutController.h"
 #include <w32std.h>
+#include "profileutilmacro.h"
 
 // CONSTANTS
 //const ?type ?constant_var = ?constant;
@@ -101,6 +102,9 @@
         virtual void HandleRadioItfCallback(XARadioItf caller, XAuint32 event );
         virtual void HandleObjectCallback(XAObjectItf caller,XAuint32 event,
                                 XAresult result,XAuint32 param, void * pInterface);
+        virtual void HandlePrefetchStatusItfCallback( XAPrefetchStatusItf caller, XAuint32 event );
+        virtual void HandlePrefetchStatusItfTestEventCallback( XAPrefetchStatusItf caller, XAuint32 event );
+        virtual void HandleStreamInfoItfCallback( XAStreamInformationItf caller, XAuint32 event, XAuint32 streamIndex );
      
         enum TOMXExpectedEvent
             {
@@ -257,7 +261,9 @@
         virtual TInt al_SetDataFormat( CStifItemParser& aItem );        
         virtual TInt al_CreateWindow( CStifItemParser& aItem );
         virtual TInt al_DeleteWindow( CStifItemParser& aItem );        
-
+        virtual TInt CheckForNull(CStifItemParser& aItem, void*& paramPtr);
+        virtual TInt CheckForNullParam(CStifItemParser& aItem, void*& paramPtr);
+        
         virtual TInt al_createEngine( CStifItemParser& aItem );
         virtual TInt al_queryNumSupportedEngineInterfaces( CStifItemParser& aItem );
         virtual TInt al_querySupportedEngineInterfaces( CStifItemParser& aItem );
@@ -381,6 +387,7 @@
         virtual TInt al_strminfoitf_RegisterStreamChangeCallback( CStifItemParser& aItem );
         virtual TInt al_strminfoitf_QueryActiveStreams( CStifItemParser& aItem );
         virtual TInt al_strminfoitf_SetActiveStream( CStifItemParser& aItem );        
+        virtual TInt al_strminfoitf_SetStreamInfoIndex(CStifItemParser& aItem);
         
         virtual TInt al_volumeitf_SetVolumeLevel( CStifItemParser& aItem );
         virtual TInt al_volumeitf_GetVolumeLevel( CStifItemParser& aItem );
@@ -429,12 +436,36 @@
 		virtual TInt al_playbackrateitf_GetCapabilitiesOfRate( CStifItemParser& aItem );
 		virtual TInt al_playbackrateitf_GetRateRange( CStifItemParser& aItem );
 
+        virtual TInt al_prefetchstatusitf_GetFillLevel( CStifItemParser& aItem ) ;
+        virtual TInt al_prefetchstatusitf_GetPrefetchStatus( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_RegisterCallback( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_RegisterTestEventCallback( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_SetCallbackEventMask( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_GetCallbackEventMaskNullParam( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_GetCallbackEventMask( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_SetFillUpdatePeriod( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_GetFillUpdatePeriodNullParam( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_GetFillUpdatePeriod( CStifItemParser& aItem );
+        virtual TInt al_prefetchstatusitf_TestEvent( CStifItemParser& aItem );
+		
+		virtual TInt al_videoppitf_SetRotation( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_IsArbitraryRotationSupported( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_SetScaleOptions( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_SetSourceRectangle( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_SetDestinationRectangle( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_SetMirror( CStifItemParser& aItem );
+		virtual TInt al_videoppitf_Commit( CStifItemParser& aItem );
+
         /**
          * Method used to log version of test class
          */
         void SendTestClassVersion();
 
         //ADD NEW METHOD DEC HERE
+        TInt validateAudioCodecDescriptorAtIndex(
+                XAuint32 aAudioCodecId,
+                XAAudioCodecDescriptor& aDesc,
+                CStifItemParser& aItem );
         //[TestMethods] - Do not remove
 
     public:     // Data
@@ -498,6 +529,7 @@
         XARadioItf m_RadioItf;
         XADynamicSourceItf m_DynSrcItf;
         XAPlaybackRateItf m_PlaybackRateItf;
+        XAVideoPostProcessingItf m_VideoPP;
         
         XAVolumeItf m_VolumeItf;
         XANokiaLinearVolumeItf  m_NokiaLinearVolumeItf;
@@ -512,6 +544,7 @@
         XAAudioEncoderItf m_AudEncItf;
         XAMetadataInsertionItf m_MetadataInsertionItf;
         XAMetadataExtractionItf m_MetadataExtractionItf;
+        XAPrefetchStatusItf m_PrefetchStatusItf;
         
         /*Audio Source*/
         XADataSource m_AudioSource;
@@ -546,8 +579,17 @@
         RWindowGroup iRwGroup;
         RWindow iRWindow;
         CWsScreenDevice* iDevice;
+        //prefetch status variables
+        TInt iStatusEventCount;
+        TInt iFillEventCount;
+        TInt iFillUpdateIncrement;
+        TInt iLastFillIncrement;
+        TBool iPrefetchEventTesting;
+        TBool iPrefetchEventError;
 		
         XAAudioEncoderSettings m_audioensettings;
+		
+		TInt iStreamInfoItfIndex; //expected streamIndex for callback event
         // ?one_line_short_description_of_data
         //?data_declaration;
 
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/init/testframework.ini	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/init/testframework.ini	Mon Oct 04 00:51:56 2010 +0300
@@ -11,7 +11,7 @@
 #
 # Contributors:
 #
-# Description: 
+# Description:
 #
 
 # This is STIFTestFramework initialization file
@@ -20,61 +20,61 @@
 
 # -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
 # Set following test engine settings:
-#	- Set Test Reporting mode. TestReportMode's possible values are:
-#		+ 'Summary': Summary of the tested test cases.
-#		+ 'Environment': Hardware and software info.
-#		+ 'TestCases': Test case report.
-#		+ 'FullReport': Set of all above ones.
-#		+ Example 'TestReportMode= Summary TestCases'
+#   - Set Test Reporting mode. TestReportMode's possible values are:
+#       + 'Summary': Summary of the tested test cases.
+#       + 'Environment': Hardware and software info.
+#       + 'TestCases': Test case report.
+#       + 'FullReport': Set of all above ones.
+#       + Example 'TestReportMode= Summary TestCases'
 #
-# 	- CreateTestReport setting controls report creation mode
-#		+ YES, Test report will created.
-#		+ NO, No Test report.
+#   - CreateTestReport setting controls report creation mode
+#       + YES, Test report will created.
+#       + NO, No Test report.
 #
-# 	- File path indicates the base path of the test report.
-# 	- File name indicates the name of the test report.
+#   - File path indicates the base path of the test report.
+#   - File name indicates the name of the test report.
 #
-# 	- File format indicates the type of the test report.
-#		+ TXT, Test report file will be txt type, for example 'TestReport.txt'.
-#		+ HTML, Test report will be html type, for example 'TestReport.html'.
+#   - File format indicates the type of the test report.
+#       + TXT, Test report file will be txt type, for example 'TestReport.txt'.
+#       + HTML, Test report will be html type, for example 'TestReport.html'.
 #
-# 	- File output indicates output source of the test report.
-#		+ FILE, Test report logging to file.
-#		+ RDEBUG, Test report logging to using rdebug.
+#   - File output indicates output source of the test report.
+#       + FILE, Test report logging to file.
+#       + RDEBUG, Test report logging to using rdebug.
 #
-# 	- File Creation Mode indicates test report overwriting if file exist.
-#		+ OVERWRITE, Overwrites if the Test report file exist.
-#		+ APPEND, Continue logging after the old Test report information if
+#   - File Creation Mode indicates test report overwriting if file exist.
+#       + OVERWRITE, Overwrites if the Test report file exist.
+#       + APPEND, Continue logging after the old Test report information if
 #                 report exist.
-# 	- Sets a device reset module's dll name(Reboot).
-#		+ If Nokia specific reset module is not available or it is not correct one
-#		  StifHWResetStub module may use as a template for user specific reset
-#		  module.
-# 	- Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation
-#		DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02
+#   - Sets a device reset module's dll name(Reboot).
+#       + If Nokia specific reset module is not available or it is not correct one
+#         StifHWResetStub module may use as a template for user specific reset
+#         module.
+#   - Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation
+#       DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02
 #
 
 [Engine_Defaults]
 
-TestReportMode= FullReport		# Possible values are: 'Empty', 'Summary', 'Environment',
-                                                               'TestCases' or 'FullReport'
+TestReportMode= FullReport      # Possible values are: 'Empty', 'Summary', 'Environment',
+                                        #                      'TestCases' or 'FullReport'
 
-CreateTestReport= YES			# Possible values: YES or NO
+CreateTestReport= YES           # Possible values: YES or NO
 
 TestReportFilePath= c:\LOGS\TestFramework\
 TestReportFileName= TestReport_OmxALTestClass
 
-TestReportFormat= TXT			# Possible values: TXT or HTML
-TestReportOutput= FILE			# Possible values: FILE or RDEBUG
-TestReportFileCreationMode= APPEND	# Possible values: OVERWRITE or APPEND
+TestReportFormat= TXT           # Possible values: TXT or HTML
+TestReportOutput= FILE          # Possible values: FILE or RDEBUG
+TestReportFileCreationMode= APPEND  # Possible values: OVERWRITE or APPEND
 
 DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting
 
-DisableMeasurement= stifmeasurementdisablenone	# Possible values are:
-						# 'stifmeasurementdisablenone', 'stifmeasurementdisableall'
-					  	# 'stifmeasurementplugin01', 'stifmeasurementplugin02',
-					  	# 'stifmeasurementplugin03', 'stifmeasurementplugin04',
-					  	# 'stifmeasurementplugin05' or 'stifbappeaprofiler'
+DisableMeasurement= stifmeasurementdisablenone  # Possible values are:
+                        # 'stifmeasurementdisablenone', 'stifmeasurementdisableall'
+                        # 'stifmeasurementplugin01', 'stifmeasurementplugin02',
+                        # 'stifmeasurementplugin03', 'stifmeasurementplugin04',
+                        # 'stifmeasurementplugin05' or 'stifbappeaprofiler'
 
 [End_Defaults]
 # -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
@@ -96,7 +96,7 @@
 # (TestCaseFile is synonym for old term ConfigFile)
 
 # Following case specifies demo module settings. Demo module
-# does not read any settings from file, so tags 
+# does not read any settings from file, so tags
 # IniFile and TestCaseFile are not used.
 # In the simplest case it is enough to specify only the
 # name of the test module when adding new test module
@@ -111,9 +111,10 @@
 TestCaseFile= c:\testframework\openmaxaltestmodule_common_noklinvolitf.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_common_nokvolextitf.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_common_volumeitf.cfg
+TestCaseFile= c:\testframework\openmaxaltestmodule_common_videoppitf.cfg
+#TestCaseFile= c:\testframework\xa_mp_videoppitf_cc.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_objectitf.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_mr.cfg
-TestCaseFile= c:\testframework\openmaxaltestmodule_mr_mdinsertionitf.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_engine_audenccapitf.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_global.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_engine_engineitf.cfg
@@ -135,12 +136,15 @@
 TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf.cfg
 #TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_part2.cfg
 #TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_part3.cfg
-#TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_part4.cfg
 #TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_aac_he.cfg
-#TestCaseFile= c:\testframework\openmaxaltestmodule_mr_record_aac_he_p2.cfg
 #TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_aac_auto.cfg
-#TestCaseFile= c:\testframework\openmaxaltestmodule_mr_record_aac_au_p2.cfg
 TestCaseFile= c:\testframework\openmaxaltestmodule_mp_playbackrateitf.cfg
+TestCaseFile= c:\testframework\openmaxaltestmodule_mp_prefetchstatusitf.cfg
+TestCaseFile= c:\testframework\openmaxaltestmodule_mr_cc.cfg
+TestCaseFile= c:\testframework\openmaxaltestmodule_mr_audioencoderitf_cc.cfg
+TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_cc.cfg
+#TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_incall.cfg
+#TestCaseFile= c:\testframework\openmaxaltestmodule_mr_recorditf_fmrx.cfg
 [End_Module]
 
 
@@ -164,58 +168,58 @@
 
 # -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
 # Set STIFTestFramework logging overwrite parameters for Logger.
-# 	Hardware and emulator environment logging path and styles can
-# 	be configured from here to overwrite the Logger's implemented values.
-#	
-#	Settings description:
-#	- Indicates option for creation log directory/directories. If log directory/directories
+#   Hardware and emulator environment logging path and styles can
+#   be configured from here to overwrite the Logger's implemented values.
+#
+#   Settings description:
+#   - Indicates option for creation log directory/directories. If log directory/directories
 #         is/are not created by user they will make by software.
-#		+ YES, Create log directory/directories if not allready exist.
-#		+ NO, Log directory/directories not created. Only created one is used.
+#       + YES, Create log directory/directories if not allready exist.
+#       + NO, Log directory/directories not created. Only created one is used.
 #
-#	- Overwrite emulator path setting.
-#		+ Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined 
-#		           Logger's path 'D:\\LOGS\\Module\\' with those definition the path
-#		           will be 'C:\LOGS\TestFramework\LOGS\Module\'
+#   - Overwrite emulator path setting.
+#       + Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined
+#                  Logger's path 'D:\\LOGS\\Module\\' with those definition the path
+#                  will be 'C:\LOGS\TestFramework\LOGS\Module\'
 #
-#	- Overwrite emulator's logging format.
-#		+ TXT, Log file(s) will be txt type(s), for example 'Module.txt'.
-#		+ HTML, Log file(s) will be html type(s), for example 'Module.html'.
+#   - Overwrite emulator's logging format.
+#       + TXT, Log file(s) will be txt type(s), for example 'Module.txt'.
+#       + HTML, Log file(s) will be html type(s), for example 'Module.html'.
 #
-#	- Overwrited emulator logging output source.
-#		+ FILE, Logging to file(s).
-#		+ RDEBUG, Logging to using rdebug(s).
+#   - Overwrited emulator logging output source.
+#       + FILE, Logging to file(s).
+#       + RDEBUG, Logging to using rdebug(s).
 #
-#	- Overwrite hardware path setting (Same description as above in emulator path).
-#	- Overwrite hardware's logging format(Same description as above in emulator format).
-#	- Overwrite hardware's logging output source(Same description as above in emulator output).
+#   - Overwrite hardware path setting (Same description as above in emulator path).
+#   - Overwrite hardware's logging format(Same description as above in emulator format).
+#   - Overwrite hardware's logging output source(Same description as above in emulator output).
 #
-#	- File Creation Mode indicates file overwriting if file exist.
-#		+ OVERWRITE, Overwrites if file(s) exist.
-#		+ APPEND, Continue logging after the old logging information if file(s) exist.
+#   - File Creation Mode indicates file overwriting if file exist.
+#       + OVERWRITE, Overwrites if file(s) exist.
+#       + APPEND, Continue logging after the old logging information if file(s) exist.
 #
-#	- Will thread id include to the log filename.
-#		+ YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'.
-#		+ NO, No thread id to log file(s), Example filename 'Module.txt'.
+#   - Will thread id include to the log filename.
+#       + YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'.
+#       + NO, No thread id to log file(s), Example filename 'Module.txt'.
 #
-#	- Will time stamps include the to log file.
-#		+ YES, Time stamp added to each line in log file(s). Time stamp is 
+#   - Will time stamps include the to log file.
+#       + YES, Time stamp added to each line in log file(s). Time stamp is
 #                 for example'12.Nov.2003 115958    LOGGING INFO'
-#		+ NO, No time stamp(s).
+#       + NO, No time stamp(s).
 #
-#	- Will line breaks include to the log file.
-#		+ YES, Each logging event includes line break and next log event is in own line.
-#		+ NO, No line break(s).
+#   - Will line breaks include to the log file.
+#       + YES, Each logging event includes line break and next log event is in own line.
+#       + NO, No line break(s).
 #
-#	- Will event ranking include to the log file.
-#		+ YES, Event ranking number added to each line in log file(s). Ranking number
+#   - Will event ranking include to the log file.
+#       + YES, Event ranking number added to each line in log file(s). Ranking number
 #                 depends on environment's tics, for example(includes time stamp also)
 #                 '012   12.Nov.2003 115958    LOGGING INFO'
-#		+ NO, No event ranking.
+#       + NO, No event ranking.
 #
-#	- Will write log file in unicode format.
-#		+ YES, Log file will be written in unicode format
-#		+ NO, Log will be written as normal, not unicode, file.
+#   - Will write log file in unicode format.
+#       + YES, Log file will be written in unicode format
+#       + NO, Log will be written as normal, not unicode, file.
 #
 
 [Logger_Defaults]
@@ -223,24 +227,24 @@
 #NOTE: If you want to set Logger using next setting(s) remove comment(s)'#'
 #NOTE: TestEngine and TestServer logging settings cannot change here
 
-CreateLogDirectories= YES		# Possible values: YES or NO
+CreateLogDirectories= YES       # Possible values: YES or NO
 
 #EmulatorBasePath= C:\LOGS\TestFramework\
-#EmulatorFormat= HTML			# Possible values: TXT or HTML
-#EmulatorOutput= FILE			# Possible values: FILE or RDEBUG
+#EmulatorFormat= HTML           # Possible values: TXT or HTML
+#EmulatorOutput= FILE           # Possible values: FILE or RDEBUG
 
 #HardwareBasePath= D:\LOGS\TestFramework\
-#HardwareFormat= HTML			# Possible values: TXT or HTML
-#HardwareOutput= FILE			# Possible values: FILE or RDEBUG
+#HardwareFormat= HTML           # Possible values: TXT or HTML
+#HardwareOutput= FILE           # Possible values: FILE or RDEBUG
 
-FileCreationMode= OVERWRITE		# Possible values: OVERWRITE or APPEND
+FileCreationMode= OVERWRITE     # Possible values: OVERWRITE or APPEND
 
-#ThreadIdToLogFile= YES			# Possible values: YES or NO
-#WithTimeStamp= YES			# Possible values: YES or NO
-#WithLineBreak= YES			# Possible values: YES or NO
-#WithEventRanking= YES			# Possible values: YES or NO
+#ThreadIdToLogFile= YES         # Possible values: YES or NO
+#WithTimeStamp= YES         # Possible values: YES or NO
+#WithLineBreak= YES         # Possible values: YES or NO
+#WithEventRanking= YES          # Possible values: YES or NO
 
-#FileUnicode= YES			# Possible values: YES or NO
+#FileUnicode= YES           # Possible values: YES or NO
 
 [End_Logger_Defaults]
 # -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalcommontests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalcommontests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* 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"
@@ -10,7 +10,7 @@
 * Nokia Corporation - initial contribution.
 *
 * Contributors:
-* 
+*
 * Description: This file contains testclass implementation.
 *
 */
@@ -25,7 +25,7 @@
 // EXTERNAL DATA STRUCTURES
 //extern  ?external_data;
 
-// EXTERNAL FUNCTION PROTOTYPES  
+// EXTERNAL FUNCTION PROTOTYPES
 //extern ?external_function( ?arg_type,?arg_type );
 
 // CONSTANTS
@@ -79,7 +79,7 @@
 
     TInt sinktype(0);
     XADataSink commonSink = {NULL,NULL};
-    
+
     status = aItem.GetNextInt(type);
     if(!status)
         {
@@ -171,7 +171,7 @@
                      break;
                  }
              }
-         }    
+         }
     return status;
     }
 
@@ -191,7 +191,7 @@
             case XA_DATALOCATOR_URI:
                 {
                 commonSource.pLocator = &m_Uri;
-                }                
+                }
                 break;
             case XA_DATALOCATOR_ADDRESS:
             case XA_DATALOCATOR_IODEVICE:
@@ -227,8 +227,8 @@
                 }
             }
         }
-    
-    
+
+
     if(!status)
         {
         status = aItem.GetNextInt(sourcetype);
@@ -248,15 +248,15 @@
                 case 4:
                     m_DynamicSource = commonSource;
                     break;
-                    
+
                 default:
                     status = KErrGeneral;
                     break;
                 }
             }
         }
-    
-    return status;  
+
+    return status;
     }
 
 TInt COpenMAXALTestModule::al_SetDataLocator( CStifItemParser& aItem )
@@ -265,7 +265,7 @@
     TInt type;
 
     status = aItem.GetNextInt(type);
-    
+
     switch(type)
         {
         case XA_DATALOCATOR_URI:
@@ -280,7 +280,7 @@
             status = aItem.GetNextString(uri);
             if(!status)
                 {
-                m_URIName = HBufC8::NewL(uri.Length()+1); 
+                m_URIName = HBufC8::NewL(uri.Length()+1);
                 TPtr8 desc = m_URIName->Des();
                 desc.Copy(uri);
                 m_Uri.locatorType = XA_DATALOCATOR_URI;
@@ -296,7 +296,7 @@
             {
             TInt devicetype;
             TUint deviceId;
-            
+
             status = aItem.GetNextInt(devicetype);
             if(!status)
                 {
@@ -311,13 +311,13 @@
                             {
                             m_SrcIODevice.deviceID = deviceId;
                             m_SrcIODevice.deviceType = devicetype;
-                            m_SrcIODevice.locatorType = XA_DATALOCATOR_IODEVICE;                    
+                            m_SrcIODevice.locatorType = XA_DATALOCATOR_IODEVICE;
                             }
                         else
                             {
                             m_SinkIODevice.deviceID = deviceId;
                             m_SinkIODevice.deviceType = devicetype;
-                            m_SinkIODevice.locatorType = XA_DATALOCATOR_IODEVICE;                    
+                            m_SinkIODevice.locatorType = XA_DATALOCATOR_IODEVICE;
                             }
                         }
                     else
@@ -344,7 +344,7 @@
             status = KErrGeneral;
             break;
         }
-    return status;   
+    return status;
     }
 
 TInt COpenMAXALTestModule::al_SetDataFormat( CStifItemParser& aItem )
@@ -354,7 +354,7 @@
     TInt contType(0);
     TPtrC mimetype;
     status = aItem.GetNextInt(type);
-    
+
     switch(type)
         {
         case XA_DATAFORMAT_MIME:
@@ -370,7 +370,7 @@
                         delete m_MimeType;
                         m_MimeType = NULL;
                         }
-                    m_MimeType = HBufC8::NewL(mimetype.Length()+1); 
+                    m_MimeType = HBufC8::NewL(mimetype.Length()+1);
                     TPtr8 desc = m_MimeType->Des();
                     desc.Copy(mimetype);
                     m_Mime.formatType = XA_DATAFORMAT_MIME;
@@ -395,7 +395,7 @@
             status = KErrGeneral;
             break;
         }
-    return status;   
+    return status;
     }
 
 TInt COpenMAXALTestModule::al_CreateWindow( CStifItemParser& aItem )
@@ -410,7 +410,7 @@
     TInt bottomY;
     TInt posX;
     TInt posY;
-    
+
     status = aItem.GetNextInt(posX);
     RET_ERR_IF_ERR(status);
     status = aItem.GetNextInt(posY);
@@ -471,3 +471,43 @@
     iRwSession.Close();
     return KErrNone;
     }
+
+TInt COpenMAXALTestModule::CheckForNull(CStifItemParser& aItem, void*& paramPtr)
+    {
+    TInt status(KErrNone);
+    TPtrC itfc;
+    _LIT(ifc,"null");
+    _LIT(invalidItfc, "invalid");
+    status = aItem.GetNextString(itfc);
+    if(!status)
+        {
+        if(!itfc.Compare(ifc))
+            {
+            paramPtr = NULL;
+            }
+        else if (itfc.Compare(invalidItfc) == 0)
+            {
+            paramPtr = (void *)&aItem;
+            }
+        }
+    return status;
+    }
+
+TInt COpenMAXALTestModule::CheckForNullParam(CStifItemParser& aItem, void*& paramPtr)
+    {
+    TInt status(KErrNone);
+    TInt itfc;
+    status = aItem.GetNextInt(itfc);
+    if(!status)
+        {
+        if(itfc != KErrNotFound)
+            {
+            paramPtr = (void*)&itfc;
+            }
+        else
+            {
+            paramPtr = NULL;
+            }
+        }
+    return status;
+    }
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalobjectitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalobjectitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -96,7 +96,10 @@
                     }
                 else
                     {
+                    TAG_TIME_PROFILING_BEGIN;
                     res = (*itf)->Realize(itf, async);
+                    TAG_TIME_PROFILING_END;
+                    PRINT_TO_CONSOLE_TIME_DIFF;
                     }
                 status = res;
                 }
@@ -258,7 +261,10 @@
                 }
             else
                 {
+                TAG_TIME_PROFILING_BEGIN;
                 (*itf)->Destroy(itf);
+                TAG_TIME_PROFILING_END;
+                PRINT_TO_CONSOLE_TIME_DIFF;
                 }
             }
         else
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalstrminfoitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalstrminfoitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -19,6 +19,7 @@
 #include <e32svr.h>
 #include <StifParser.h>
 #include <StifTestInterface.h>
+#include <StifTestEventInterface.h>
 #include "openmaxaltestmodule.h"
 
 // EXTERNAL DATA STRUCTURES
@@ -201,10 +202,23 @@
     return status;       
     }
 
-TInt COpenMAXALTestModule::al_strminfoitf_RegisterStreamChangeCallback( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_strminfoitf_RegisterStreamChangeCallback( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
+		
+		TInt expectedIndex = -1;
+    status = aItem.GetNextInt(expectedIndex);
+    if(status==KErrNone)
+    {
+    	iStreamInfoItfIndex = expectedIndex; //reset expected event
+    }
+    else
+    {
+    	iStreamInfoItfIndex = -1;
+    	status = KErrNone;
+    }
+
     if(m_StrInfoItf)
         {
         res = (*m_StrInfoItf)->RegisterStreamChangeCallback(m_StrInfoItf,StreamEventChangeCallback,(void*)this);
@@ -286,6 +300,36 @@
     return status;          
     }
 
+void COpenMAXALTestModule::HandleStreamInfoItfCallback( XAStreamInformationItf /*caller*/, XAuint32 event, XAuint32 streamIndex )
+{
+    switch (event)
+    {
+        case XA_STREAMCBEVENT_PROPERTYCHANGE:
+        {
+        		if((iStreamInfoItfIndex == -1) || (iStreamInfoItfIndex == streamIndex))
+        		{
+            	TEventIf event( TEventIf::ESetEvent, _L("Event_XA_STREAMCBEVENT_PROPERTYCHANGE") );
+            	TestModuleIf().Event( event );
+        		}
+        }
+        break;
+       
+        default:
+            break;
+    }
+}
+
+TInt COpenMAXALTestModule::al_strminfoitf_SetStreamInfoIndex(CStifItemParser& aItem)
+{
+		TInt status(KErrNone);
+    TInt streamindex(0);
+ 
+    status = aItem.GetNextInt(streamindex);
+    RET_ERR_IF_ERR(status);
+		iStreamInfoItfIndex = streamindex;
+		return status;
+}
+
 void StreamEventChangeCallback (
         XAStreamInformationItf caller,
         XAuint32 eventId,
@@ -293,6 +337,9 @@
         void * pEventData,
         void * pContext
 )
+{
+    if (pContext)
     {
-    
+    	((COpenMAXALTestModule*)pContext)->HandleStreamInfoItfCallback(caller, eventId, streamIndex);
     }
+}
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxaltestmoduleblocks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxaltestmoduleblocks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -246,18 +246,18 @@
         /*DynamicSourceItf ends*/
         
         /*RadioItf begins*/
-        ENTRY( "al_radioitf_SetFreqRange", COpenMAXALTestModule::al_radioitf_SetFreqRange ),
-        ENTRY( "al_radioitf_GetFreqRange", COpenMAXALTestModule::al_radioitf_GetFreqRange ),
-        ENTRY( "al_radioitf_IsFreqRangeSupported", COpenMAXALTestModule::al_radioitf_IsFreqRangeSupported ),
-        ENTRY( "al_radioitf_GetFreqRangeProperties", COpenMAXALTestModule::al_radioitf_GetFreqRangeProperties ),
-        ENTRY( "al_radioitf_SetFrequency", COpenMAXALTestModule::al_radioitf_SetFrequency ),
-        ENTRY( "al_radioitf_CancelSetFrequency", COpenMAXALTestModule::al_radioitf_CancelSetFrequency ),
-        ENTRY( "al_radioitf_GetFrequency", COpenMAXALTestModule::al_radioitf_GetFrequency ),
-        ENTRY( "al_radioitf_SetSquelch", COpenMAXALTestModule::al_radioitf_SetSquelch ),
-        ENTRY( "al_radioitf_GetSquelch", COpenMAXALTestModule::al_radioitf_GetSquelch ),
-        ENTRY( "al_radioitf_SetStereoMode", COpenMAXALTestModule::al_radioitf_SetStereoMode ),
-        ENTRY( "al_radioitf_GetStereoMode", COpenMAXALTestModule::al_radioitf_GetStereoMode ),
-        ENTRY( "al_radioitf_GetSignalStrength", COpenMAXALTestModule::al_radioitf_GetSignalStrength ),
+        ENTRY( "al_radioitf_SetFreqRange", COpenMAXALTestModule::al_radioitf_SetFreqRange ),    
+        ENTRY( "al_radioitf_GetFreqRange", COpenMAXALTestModule::al_radioitf_GetFreqRange ),    
+        ENTRY( "al_radioitf_IsFreqRangeSupported", COpenMAXALTestModule::al_radioitf_IsFreqRangeSupported ),    
+        ENTRY( "al_radioitf_GetFreqRangeProperties", COpenMAXALTestModule::al_radioitf_GetFreqRangeProperties ),    
+        ENTRY( "al_radioitf_SetFrequency", COpenMAXALTestModule::al_radioitf_SetFrequency ),            	        	        	        	
+        ENTRY( "al_radioitf_CancelSetFrequency", COpenMAXALTestModule::al_radioitf_CancelSetFrequency ),    
+        ENTRY( "al_radioitf_GetFrequency", COpenMAXALTestModule::al_radioitf_GetFrequency ),    
+        ENTRY( "al_radioitf_SetSquelch", COpenMAXALTestModule::al_radioitf_SetSquelch ),    
+        ENTRY( "al_radioitf_GetSquelch", COpenMAXALTestModule::al_radioitf_GetSquelch ),    
+        ENTRY( "al_radioitf_SetStereoMode", COpenMAXALTestModule::al_radioitf_SetStereoMode ),    
+        ENTRY( "al_radioitf_GetStereoMode", COpenMAXALTestModule::al_radioitf_GetStereoMode ),    
+        ENTRY( "al_radioitf_GetSignalStrength", COpenMAXALTestModule::al_radioitf_GetSignalStrength ),    
         ENTRY( "al_radioitf_Seek", COpenMAXALTestModule::al_radioitf_Seek ),
         ENTRY( "al_radioitf_StopSeeking", COpenMAXALTestModule::al_radioitf_StopSeeking ),
         ENTRY( "al_radioitf_GetNumberOfPresets", COpenMAXALTestModule::al_radioitf_GetNumberOfPresets ),
@@ -273,6 +273,7 @@
         ENTRY( "al_strminfoitf_RegisterStreamChangeCallback", COpenMAXALTestModule::al_strminfoitf_RegisterStreamChangeCallback ),
         ENTRY( "al_strminfoitf_QueryActiveStreams", COpenMAXALTestModule::al_strminfoitf_QueryActiveStreams ),
         ENTRY( "al_strminfoitf_SetActiveStream", COpenMAXALTestModule::al_strminfoitf_SetActiveStream ),
+        ENTRY( "al_strminfoitf_SetStreamInfoIndex", COpenMAXALTestModule::al_strminfoitf_SetStreamInfoIndex ),
         /*StreamInformationItf ends*/
         
         /*VolumeItf begins*/
@@ -331,6 +332,30 @@
         ENTRY( "al_playbackrateitf_GetCapabilitiesOfRate", COpenMAXALTestModule::al_playbackrateitf_GetCapabilitiesOfRate ),
         ENTRY( "al_playbackrateitf_GetRateRange", COpenMAXALTestModule::al_playbackrateitf_GetRateRange ),
          /*PlaybackRateItf ends*/
+        /*PrefetchStatusItf*/
+        ENTRY( "al_prefetchstatusitf_GetFillLevel", COpenMAXALTestModule::al_prefetchstatusitf_GetFillLevel),
+        ENTRY( "al_prefetchstatusitf_GetPrefetchStatus", COpenMAXALTestModule::al_prefetchstatusitf_GetPrefetchStatus),
+        ENTRY( "al_prefetchstatusitf_RegisterCallback", COpenMAXALTestModule::al_prefetchstatusitf_RegisterCallback),
+        ENTRY( "al_prefetchstatusitf_SetCallbackEventMask", COpenMAXALTestModule::al_prefetchstatusitf_SetCallbackEventMask),
+        ENTRY( "al_prefetchstatusitf_GetCallbackEventMaskNullParam", COpenMAXALTestModule::al_prefetchstatusitf_GetCallbackEventMaskNullParam),
+        ENTRY( "al_prefetchstatusitf_GetCallbackEventMask", COpenMAXALTestModule::al_prefetchstatusitf_GetCallbackEventMask),
+        ENTRY( "al_prefetchstatusitf_SetFillUpdatePeriod", COpenMAXALTestModule::al_prefetchstatusitf_SetFillUpdatePeriod),
+        ENTRY( "al_prefetchstatusitf_GetFillUpdatePeriodNullParam", COpenMAXALTestModule::al_prefetchstatusitf_GetFillUpdatePeriodNullParam),
+        ENTRY( "al_prefetchstatusitf_GetFillUpdatePeriod", COpenMAXALTestModule::al_prefetchstatusitf_GetFillUpdatePeriod),
+        ENTRY( "al_prefetchstatusitf_TestEvent", COpenMAXALTestModule::al_prefetchstatusitf_TestEvent),
+        ENTRY( "al_prefetchstatusitf_RegisterTestEventCallback", COpenMAXALTestModule::al_prefetchstatusitf_RegisterTestEventCallback),
+        /*PrefetchStatusItf*/
+		
+        
+        /*VideoPostProcessingItf*/
+        ENTRY( "al_videoppitf_SetRotation", COpenMAXALTestModule::al_videoppitf_SetRotation ),
+        ENTRY( "al_videoppitf_IsArbitraryRotationSupported", COpenMAXALTestModule::al_videoppitf_IsArbitraryRotationSupported ),
+        ENTRY( "al_videoppitf_SetScaleOptions", COpenMAXALTestModule::al_videoppitf_SetScaleOptions ),
+        ENTRY( "al_videoppitf_SetSourceRectangle", COpenMAXALTestModule::al_videoppitf_SetSourceRectangle ),
+        ENTRY( "al_videoppitf_SetDestinationRectangle", COpenMAXALTestModule::al_videoppitf_SetDestinationRectangle ),
+        ENTRY( "al_videoppitf_SetMirror", COpenMAXALTestModule::al_videoppitf_SetMirror ),
+        ENTRY( "al_videoppitf_Commit", COpenMAXALTestModule::al_videoppitf_Commit ),
+         /*VideoPostProcessingItf ends*/
         
         //ADD NEW ENTRY HERE
         // [test cases entries] - Do not remove
@@ -890,6 +915,7 @@
             break;
         case 9:
 /*            XA_IID_PREFETCHSTATUS;*/
+            m_PrefetchStatusItf = XAPrefetchStatusItf(id);
             break;
         case 10:
 /*            XA_IID_SEEK;*/
@@ -907,6 +933,7 @@
             break;
         case 14:
 /*            XA_IID_VIDEOPOSTPROCESSING;*/
+            m_VideoPP = XAVideoPostProcessingItf(id);
             break;
         case 15:
             m_RecordItf = XARecordItf(id);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/common/openmaxalvideoppitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,326 @@
+/*
+* 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: This file contains testclass implementation.
+*
+*/
+
+// [INCLUDE FILES] - do not remove
+#include <e32svr.h>
+#include <StifParser.h>
+#include <StifTestInterface.h>
+#include "openmaxaltestmodule.h"
+#include "profileutilmacro.h"
+
+// EXTERNAL DATA STRUCTURES
+//extern  ?external_data;
+
+// EXTERNAL FUNCTION PROTOTYPES
+//extern ?external_function( ?arg_type,?arg_type );
+
+// CONSTANTS
+//const ?type ?constant_var = ?constant;
+
+// MACROS
+//#define ?macro ?macro_def
+
+// LOCAL CONSTANTS AND MACROS
+//const ?type ?constant_var = ?constant;
+//#define ?macro_name ?macro_def
+
+// MODULE DATA STRUCTURES
+//enum ?declaration
+//typedef ?declaration
+
+// LOCAL FUNCTION PROTOTYPES
+//?type ?function_name( ?arg_type, ?arg_type );
+
+// FORWARD DECLARATIONS
+//class ?FORWARD_CLASSNAME;
+
+// ============================= LOCAL FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// ?function_name ?description.
+// ?description
+// Returns: ?value_1: ?description
+//          ?value_n: ?description_line1
+//                    ?description_line2
+// -----------------------------------------------------------------------------
+//
+/*
+?type ?function_name(
+    ?arg_type arg,  // ?description
+    ?arg_type arg)  // ?description
+    {
+
+    ?code  // ?comment
+
+    // ?comment
+    ?code
+    }
+*/
+
+TInt COpenMAXALTestModule::al_videoppitf_SetRotation( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    TInt rotation;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = aItem.GetNextInt(rotation);
+    RET_ERR_IF_ERR(status);
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->SetRotation((XAVideoPostProcessingItf)selfPtr, rotation);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_IsArbitraryRotationSupported( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    XAboolean supported;
+    void* supportedParam = (void*) &supported;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = CheckForNullParam(aItem, supportedParam);
+    RET_ERR_IF_ERR(status);
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->IsArbitraryRotationSupported((XAVideoPostProcessingItf)selfPtr, (XAboolean*)supportedParam);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        iLog->Log(_L("al_videoppitf_IsArbitraryRotationSupported Supported =%d"),supported);
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_SetScaleOptions( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    TInt options(0);
+    TInt backGColor(0);
+    TInt hints(0);
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = aItem.GetNextInt(options);
+    RET_ERR_IF_ERR(status);
+
+    status = aItem.GetNextInt(backGColor);
+    RET_ERR_IF_ERR(status);
+
+    status = aItem.GetNextInt(hints);
+    RET_ERR_IF_ERR(status);
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->SetScaleOptions((XAVideoPostProcessingItf)selfPtr, options, backGColor, hints);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_SetSourceRectangle( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    XARectangle rect;
+    TInt top;
+    TInt left ;
+    TInt width;
+    TInt height;
+    void* rectParam = (void*) &rect;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = CheckForNull(aItem, rectParam);
+    RET_ERR_IF_ERR(status);
+
+    if ((XARectangle*)rectParam != NULL)
+        {
+        status = aItem.GetNextInt(top);
+        RET_ERR_IF_ERR(status);
+        rect.top = top;
+
+        status = aItem.GetNextInt(left);
+        RET_ERR_IF_ERR(status);
+        rect.left = left;
+
+        status = aItem.GetNextInt(width);
+        RET_ERR_IF_ERR(status);
+        rect.width = width;
+
+        status = aItem.GetNextInt(height);
+        RET_ERR_IF_ERR(status);
+        rect.height = height;
+        }
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->SetSourceRectangle((XAVideoPostProcessingItf)selfPtr, (XARectangle*)rectParam);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_SetDestinationRectangle( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    XARectangle rect;
+    TInt top;
+    TInt left ;
+    TInt width;
+    TInt height;
+
+    void* rectParam = (void*) &rect;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = CheckForNull(aItem, rectParam);
+    RET_ERR_IF_ERR(status);
+
+    if ((XARectangle*)rectParam != NULL)
+        {
+        status = aItem.GetNextInt(top);
+        RET_ERR_IF_ERR(status);
+        rect.top = top;
+
+        status = aItem.GetNextInt(left);
+        RET_ERR_IF_ERR(status);
+        rect.left = left;
+
+        status = aItem.GetNextInt(width);
+        RET_ERR_IF_ERR(status);
+        rect.width = width;
+
+        status = aItem.GetNextInt(height);
+        RET_ERR_IF_ERR(status);
+        rect.height = height;
+        }
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->SetDestinationRectangle((XAVideoPostProcessingItf)selfPtr, (XARectangle*)rectParam);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_SetMirror( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    TInt mirror;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    status = aItem.GetNextInt(mirror);
+    RET_ERR_IF_ERR(status);
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->SetMirror((XAVideoPostProcessingItf)selfPtr, mirror);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_videoppitf_Commit( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    void* selfPtr = (void*) m_VideoPP;
+
+    status = CheckForNull(aItem, selfPtr);
+    RET_ERR_IF_ERR(status);
+
+    if(m_VideoPP)
+        {
+        TAG_TIME_PROFILING_BEGIN;
+        res = (*m_VideoPP)->Commit((XAVideoPostProcessingItf)selfPtr);
+        TAG_TIME_PROFILING_END; PRINT_TO_CONSOLE_TIME_DIFF;
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+
+    return status;
+    }
+
+
+
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalaudioencodercapabiltiesitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalaudioencodercapabiltiesitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -18,6 +18,7 @@
 // [INCLUDE FILES] - do not remove
 #include <e32svr.h>
 #include <StifParser.h>
+#include <strings.h>
 #include <StifTestInterface.h>
 #include "openmaxaltestmodule.h"
 
@@ -31,7 +32,14 @@
 //const ?type ?constant_var = ?constant;
 
 // MACROS
-//#define ?macro ?macro_def
+#define RETURN_ERR_IF_NOT_EQUAL(item, valFromItem, value) \
+    status = item.GetNextInt(valFromItem); \
+    if (status || (valFromItem != value)) \
+        { \
+        iLog->Log(_L("Value[%d] is not equal to [%d]"), valFromItem, value); \
+        return KErrCompletion; \
+        } \
+    
 
 // LOCAL CONSTANTS AND MACROS
 //const ?type ?constant_var = ?constant;
@@ -113,6 +121,7 @@
     {
     TInt status(KErrNone);
     TInt encId(0);
+    TInt idx(0);
     XAuint32 encoderid(0);
     XAuint32 index(0);
     XAAudioCodecDescriptor desc;
@@ -121,17 +130,81 @@
     status = aItem.GetNextInt(encId);
     if(!status)
         {
-        encoderid = encId;
-        if(m_AEncCapItf)
+        status = aItem.GetNextInt(idx);
+        if(!status)
             {
-            res = (*m_AEncCapItf)->GetAudioEncoderCapabilities(
-                    m_AEncCapItf, encoderid, &index, &desc);
-            status = res;
+            index = idx;
+            encoderid = encId;
+            if(m_AEncCapItf)
+                {
+                res = (*m_AEncCapItf)->GetAudioEncoderCapabilities(
+                        m_AEncCapItf, encoderid, &index, &desc);
+                status = res;
+                if (res == XA_RESULT_SUCCESS)
+                    {
+                    status = validateAudioCodecDescriptorAtIndex(encoderid, desc, aItem);
+                    }
+                }
+            else
+                {
+                status = KErrNotFound;
+                }                
             }
-        else
-            {
-            status = KErrNotFound;
-            }                
+        }
+    return status;
+}
+
+TInt COpenMAXALTestModule::validateAudioCodecDescriptorAtIndex(
+        XAuint32 aAudioCodecId,
+        XAAudioCodecDescriptor& aDesc,
+        CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    TInt intVal(0);
+    TInt loopIndex(0);
+    
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.maxChannels);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.minBitsPerSample);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.maxBitsPerSample);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.minSampleRate);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.maxSampleRate);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.isFreqRangeContinuous);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.numSampleRatesSupported);
+    for(loopIndex = 0; loopIndex < aDesc.numSampleRatesSupported; loopIndex++)
+        {
+        RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.pSampleRatesSupported[loopIndex]);
+        }
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.minBitRate);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.maxBitRate);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.isBitrateRangeContinuous);
+    RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.numBitratesSupported);
+    for(loopIndex = 0; loopIndex < aDesc.numBitratesSupported; loopIndex++)
+        {
+        RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.pBitratesSupported[loopIndex]);
+        }
+    switch (aAudioCodecId)
+        {
+        case XA_AUDIOCODEC_PCM:
+            RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.profileSetting);
+            if (!status)
+                {
+                RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.modeSetting);
+                }
+            break;
+        case XA_AUDIOCODEC_AMR:
+            RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.profileSetting);
+            if (!status)
+                {
+                RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.modeSetting);
+                }
+            break;
+        case XA_AUDIOCODEC_AAC:
+            RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.profileSetting);
+            if (!status)
+                {
+                RETURN_ERR_IF_NOT_EQUAL(aItem, intVal, aDesc.modeSetting);
+                }
+            break;
         }
     return status;
     }
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalengineitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalengineitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -377,6 +377,29 @@
     XADataSource* audioSource(NULL);
     XADataSource* videoSource(NULL);
     XADataSink* dataSink(NULL);
+
+    audioSource = &m_AudioSource;
+    videoSource = &m_VideoSource;
+    dataSink = &m_DataSink;
+    
+    void* itfPtr = (void*) m_EngineItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    void* param0 = (void*)(&m_MORecorder);
+    void* param1 = audioSource;
+    void* param2 = videoSource;
+    void* param3 = dataSink;
+    
+    status = CheckForNull(aItem, param0);
+    RET_ERR_IF_ERR(status);
+    status = CheckForNull(aItem, param1);
+    RET_ERR_IF_ERR(status);    
+    status = CheckForNull(aItem, param2);
+    RET_ERR_IF_ERR(status);    
+    status = CheckForNull(aItem, param3);
+    RET_ERR_IF_ERR(status);    
     /* Initialize arrays required[] and iidArray[] */
     for (TInt i = 0; i < MAX_NUMBER_INTERFACES; i++)
         {
@@ -404,27 +427,15 @@
             }
         }
     
-    
-    if(m_AudioSource.pFormat && m_AudioSource.pLocator)
-        {
-        audioSource = &m_AudioSource;
-        }
-    
-    if(m_VideoSource.pFormat && m_VideoSource.pLocator)
-        {
-        videoSource = &m_VideoSource;
-        }
-    
-    if(m_DataSink.pFormat && m_DataSink.pLocator)
-        {
-        dataSink = &m_DataSink;
-        }
-    
     if(m_EngineItf)
         {
+        TAG_TIME_PROFILING_BEGIN;
         res = (*m_EngineItf)->CreateMediaRecorder(
-                m_EngineItf, &m_MORecorder, audioSource, videoSource, dataSink,
+                XAEngineItf(itfPtr), /*&(*((XAObjectItf*)param0))*/&m_MORecorder, (XADataSource*)(param1),
+                (XADataSource*)(param2), (XADataSink*)(param3),
                 numInterfaces, iidArray, required);
+        TAG_TIME_PROFILING_END;
+        PRINT_TO_CONSOLE_TIME_DIFF;
         status = res;
         }
     else
@@ -635,21 +646,27 @@
     TUint object(0);
     XAuint32 numInterfaces(0);
     XAresult res;
-    XAuint32 objectId;
+    void* itfPtr = (void*) m_EngineItf;
+    void* param = (void*)&numInterfaces;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(object);
-    if(!status)
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNull(aItem, param);
+    RET_ERR_IF_ERR(status);
+
+    if(m_EngineItf)
         {
-        objectId = object;
-        if(m_EngineItf)
-            {
-            res = (*m_EngineItf)->QueryNumSupportedInterfaces(
-                    m_EngineItf, objectId,&numInterfaces);
-            status = res;
-            }
-        else
-            {
-            status = KErrNotFound;
-            }
+        res = (*m_EngineItf)->QueryNumSupportedInterfaces(
+                XAEngineItf(itfPtr), (XAuint32)object, (XAuint32*)param);
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
         }
     return status;
     }
@@ -661,34 +678,34 @@
     TInt index(0);
     XAresult res;
     XAInterfaceID interface;
-    XAuint32 objectId;
+    
+    void* itfPtr = (void*) m_EngineItf;
+    void* param = (void*)&interface;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(object);
-    if(!status)
+    RET_ERR_IF_ERR(status);
+    
+
+    status = aItem.GetNextInt(index);
+    RET_ERR_IF_ERR(status);
+
+    status = CheckForNull(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
+    if(m_EngineItf)
         {
-        objectId = object;
-        status = aItem.GetNextInt(index);
-        if(!status)
-            {
-            if(m_EngineItf)
-                {
-                res = (*m_EngineItf)->QuerySupportedInterfaces(
-                        m_EngineItf, objectId, index,&interface);
-                status = res;
-                }
-            else
-                {
-                status = KErrNotFound;
-                }
-            }
-        else
-            {
-            status = KErrGeneral;
-            }
+        res = (*m_EngineItf)->QuerySupportedInterfaces(
+                XAEngineItf(itfPtr), (XAuint32)object, index, (XAInterfaceID*)param);
+        status = res;
         }
     else
         {
-        status = KErrGeneral;
+        status = KErrNotFound;
         }
+
     return status;
     }
 
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalenginetests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/engine/openmaxalenginetests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -142,7 +142,6 @@
             }
         }
     
-    
     XAresult xa_res = xaCreateEngine(&m_EOEngine, numEngineOption, EngineOption, numInterfaces, iidArray, required);
     status = MapErr(xa_res);    
     return status;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/player/openmaxalprefetchstatusitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,401 @@
+/*
+* 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: This file contains testclass implementation.
+*
+*/
+
+// [INCLUDE FILES] - do not remove
+#include <e32svr.h>
+#include <StifParser.h>
+#include <StifTestInterface.h>
+#include <StifTestEventInterface.h>
+#include "openmaxaltestmodule.h"
+#include "profileutilmacro.h"
+
+// EXTERNAL DATA STRUCTURES
+//extern  ?external_data;
+
+// EXTERNAL FUNCTION PROTOTYPES  
+//extern ?external_function( ?arg_type,?arg_type );
+
+// CONSTANTS
+//const ?type ?constant_var = ?constant;
+
+// MACROS
+//#define ?macro ?macro_def
+
+// LOCAL CONSTANTS AND MACROS
+//const ?type ?constant_var = ?constant;
+//#define ?macro_name ?macro_def
+
+// MODULE DATA STRUCTURES
+//enum ?declaration
+//typedef ?declaration
+
+// LOCAL FUNCTION PROTOTYPES
+//?type ?function_name( ?arg_type, ?arg_type );
+void PrefetchStatusItfCallback (
+    XAPrefetchStatusItf caller,
+    void * pContext,
+    XAuint32 event);
+
+void PrefetchStatusItfTestEventCallback (
+    XAPrefetchStatusItf caller,
+    void * pContext,
+    XAuint32 event);
+// FORWARD DECLARATIONS
+//class ?FORWARD_CLASSNAME;
+
+// ============================= LOCAL FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// ?function_name ?description.
+// ?description
+// Returns: ?value_1: ?description
+//          ?value_n: ?description_line1
+//                    ?description_line2
+// -----------------------------------------------------------------------------
+//
+/*
+?type ?function_name(
+    ?arg_type arg,  // ?description
+    ?arg_type arg)  // ?description
+    {
+
+    ?code  // ?comment
+
+    // ?comment
+    ?code
+    }
+*/
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetFillLevel( CStifItemParser& aItem )
+{
+    TInt status(KErrGeneral);
+    XApermille fL(0);
+    
+    TInt fillLevel = 0;
+    status = aItem.GetNextInt(fillLevel);
+
+    if((status==KErrNone) && m_PrefetchStatusItf)
+    {
+        XAresult res = (*m_PrefetchStatusItf)->GetFillLevel(m_PrefetchStatusItf, &fL);              
+        status = MapErr(res);
+    }
+    
+    if((m_PrefetchStatusItf == NULL) || 
+       (status != KErrNone) || 
+       (fL != fillLevel))  
+    {
+        status = KErrNotFound;
+    }    
+    
+    return status;
+}
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetPrefetchStatus( CStifItemParser& aItem )
+{
+    TInt status(KErrGeneral);
+    XAuint32 pfs(0);
+    
+    TInt prefetchStatus = 0;
+    status = aItem.GetNextInt(prefetchStatus);
+    
+    if((status==KErrNone) && m_PrefetchStatusItf)
+    {
+        XAresult res = (*m_PrefetchStatusItf)->GetPrefetchStatus(m_PrefetchStatusItf, &pfs);              
+        status = MapErr(res);
+    }
+    
+    if( (m_PrefetchStatusItf == NULL) || 
+        (status != KErrNone) || 
+        (pfs != prefetchStatus))  
+    {
+        status = KErrNotFound;
+    }    
+    
+    return status;
+}
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_RegisterCallback( CStifItemParser& /*aItem*/ )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+
+    if(m_PrefetchStatusItf)
+        {
+        res = (*m_PrefetchStatusItf)->RegisterCallback(
+                m_PrefetchStatusItf, &PrefetchStatusItfCallback, (void*)this);              
+        status = MapErr(res);
+        }
+    else
+        {
+        status = KErrNotFound;
+        }    
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_RegisterTestEventCallback( CStifItemParser& /*aItem*/ )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+
+    if(m_PrefetchStatusItf)
+        {
+        res = (*m_PrefetchStatusItf)->RegisterCallback(
+                m_PrefetchStatusItf, &PrefetchStatusItfTestEventCallback, (void*)this);              
+        status = MapErr(res);
+        }
+    else
+        {
+        status = KErrNotFound;
+        }    
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_SetCallbackEventMask( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    TInt eventMask;
+    status = aItem.GetNextInt(eventMask);
+    RET_ERR_IF_ERR(status);
+
+    if(m_PrefetchStatusItf)
+        {
+        status = (*m_PrefetchStatusItf)->SetCallbackEventsMask(
+                m_PrefetchStatusItf, eventMask);              
+        }
+    else
+        {
+        status = KErrNotFound;
+        }
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetCallbackEventMaskNullParam( CStifItemParser& /*aItem*/ )
+    {
+    TInt status(KErrNone);
+    if(m_PrefetchStatusItf)
+        {
+        status = (*m_PrefetchStatusItf)->GetCallbackEventsMask(
+                m_PrefetchStatusItf, NULL);              
+        }
+    else
+        {
+        status = KErrNotFound;
+        }    
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetCallbackEventMask( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAuint32 eventMask;
+    TInt expectedEventMask;
+    status = aItem.GetNextInt(expectedEventMask);
+    RET_ERR_IF_ERR(status);
+
+    if(m_PrefetchStatusItf)
+        {
+        status = (*m_PrefetchStatusItf)->GetCallbackEventsMask(
+                m_PrefetchStatusItf, &eventMask);              
+        if (!status)
+            {
+            /* Fail if position is not expected*/
+            if (eventMask != expectedEventMask)
+                {
+                status = KErrCompletion;
+                }
+            }
+        }
+    else
+        {
+        status = KErrNotFound;
+        }    
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_SetFillUpdatePeriod( CStifItemParser& aItem )
+{
+    TInt status(KErrNone);
+    TInt updatePeriod;
+    status = aItem.GetNextInt(updatePeriod);
+    RET_ERR_IF_ERR(status);
+
+    if(m_PrefetchStatusItf)
+    {
+        status = (*m_PrefetchStatusItf)->SetFillUpdatePeriod(
+                m_PrefetchStatusItf, (XAmillisecond)updatePeriod);
+        
+        //used for testing fill events
+        iFillUpdateIncrement = updatePeriod;
+    }
+    else
+    {
+        status = KErrNotFound;
+    }    
+    return status;
+}
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetFillUpdatePeriodNullParam( CStifItemParser& /*aItem*/ )
+{
+    TInt status(KErrNone);
+
+    if(m_PrefetchStatusItf)
+    {
+        status = (*m_PrefetchStatusItf)->GetFillUpdatePeriod(
+                m_PrefetchStatusItf, NULL);
+    }
+    else
+    {
+        status = KErrNotFound;
+    }    
+    return status;
+}
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_GetFillUpdatePeriod( CStifItemParser& aItem )
+{
+    TInt status(KErrNone);
+    TInt expectedUpdatePeriod(0);
+    status = aItem.GetNextInt(expectedUpdatePeriod);
+    XApermille updatePeriod;
+    RET_ERR_IF_ERR(status);
+
+    if(m_PrefetchStatusItf)
+    {
+        status = (*m_PrefetchStatusItf)->GetFillUpdatePeriod(
+                m_PrefetchStatusItf, &updatePeriod);
+        if (!status && (updatePeriod != expectedUpdatePeriod))
+        {
+            status = KErrCompletion;
+        }
+    }
+    else
+    {
+        status = KErrNotFound;
+    }    
+    return status;
+}
+
+TInt COpenMAXALTestModule::al_prefetchstatusitf_TestEvent( CStifItemParser& /*aItem*/ )
+{
+    iStatusEventCount = 0;
+    iFillEventCount = 0;
+    iLastFillIncrement = 0;
+    iPrefetchEventTesting = ETrue;
+    iPrefetchEventError = EFalse;
+    
+    return KErrNone;
+}
+
+void COpenMAXALTestModule::HandlePrefetchStatusItfCallback( XAPrefetchStatusItf /*caller*/, XAuint32 event )
+{
+    switch (event)
+    {
+        case XA_PREFETCHEVENT_STATUSCHANGE:
+        {
+            TEventIf event( TEventIf::ESetEvent, _L("Event_XA_PREFETCHEVENT_STATUSCHANGE") );
+            TestModuleIf().Event( event );
+        }
+        break;
+        case XA_PREFETCHEVENT_FILLLEVELCHANGE:
+        {
+                TEventIf event( TEventIf::ESetEvent, _L("Event_XA_PREFETCHEVENT_FILLLEVELCHANGE") );
+                TestModuleIf().Event( event );
+        }
+        break;
+       default:
+            break;
+    }
+}
+
+void COpenMAXALTestModule::HandlePrefetchStatusItfTestEventCallback( XAPrefetchStatusItf /*caller*/, XAuint32 event )
+{
+    switch (event)
+    {
+        case XA_PREFETCHEVENT_STATUSCHANGE:
+        {
+            ++iStatusEventCount;                
+            if(iStatusEventCount==2)
+            {
+                XAuint32 pfs(0);
+                XAresult res = (*m_PrefetchStatusItf)->GetPrefetchStatus(m_PrefetchStatusItf, &pfs);
+                if((res==XA_RESULT_SUCCESS) && (pfs == XA_PREFETCHSTATUS_SUFFICIENTDATA))
+                {
+                    TEventIf event( TEventIf::ESetEvent, _L("Event_XA_PREFETCHEVENT_STATUSCHANGE") );
+                    TestModuleIf().Event( event );
+                }
+            }
+        }
+        break;
+        case XA_PREFETCHEVENT_FILLLEVELCHANGE:
+        {
+            if(iPrefetchEventError)
+            {
+                return;
+            }
+
+            XApermille fL = 0;
+            XAresult res = (*m_PrefetchStatusItf)->GetFillLevel(m_PrefetchStatusItf, &fL);
+            
+            if((res != XA_RESULT_SUCCESS) ||
+               ((iFillEventCount>0) && (fL<(iLastFillIncrement + iFillUpdateIncrement))))
+            {
+                iPrefetchEventError = ETrue;
+            }
+            else
+            {
+                iLastFillIncrement = fL - (fL % iFillUpdateIncrement);
+                
+                if(fL == 1000)
+                {
+                    TEventIf event( TEventIf::ESetEvent, _L("Event_XA_PREFETCHEVENT_FILLLEVELCHANGE") );
+                    TestModuleIf().Event( event );
+                }
+                
+                ++iFillEventCount;
+            }
+        }
+        break;
+       default:
+            break;
+    }
+}
+
+
+void PrefetchStatusItfCallback (
+    XAPrefetchStatusItf caller,
+    void * pContext,
+    XAuint32 event)
+    {
+    if (pContext)
+        {
+        ((COpenMAXALTestModule*)pContext)->HandlePrefetchStatusItfCallback(caller, event);
+        }
+    }
+
+void PrefetchStatusItfTestEventCallback (
+    XAPrefetchStatusItf caller,
+    void * pContext,
+    XAuint32 event)
+    {
+    if (pContext)
+        {
+        ((COpenMAXALTestModule*)pContext)->HandlePrefetchStatusItfTestEventCallback(caller, event);
+        }
+    }
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/radio/openmaxalradioitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/radio/openmaxalradioitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -409,7 +409,7 @@
     return status;
     }
 
-TInt COpenMAXALTestModule::al_radioitf_GetNumberOfPresets( CStifItemParser& aItem)
+TInt COpenMAXALTestModule::al_radioitf_GetNumberOfPresets( CStifItemParser& /*aItem*/)
     {
     TInt status(KErrNone);
     RET_ERR_IF_ERR(status);
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalaudioencoderitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalaudioencoderitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -19,6 +19,7 @@
 #include <e32svr.h>
 #include <StifParser.h>
 #include <StifTestInterface.h>
+#include <strings.h>
 #include "openmaxaltestmodule.h"
 
 // EXTERNAL DATA STRUCTURES
@@ -77,7 +78,15 @@
     XAAudioEncoderSettings setting;
     TUint value(0);
     TInt i(0);
-    TInt numItems;
+    TInt numItems = -1;
+    void* param = (void*)&setting;
+    void* itfPtr = (void*) m_AudEncItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNull(aItem, param);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(numItems);
     
@@ -138,7 +147,7 @@
     if(m_AudEncItf)
         {
         res = (*m_AudEncItf)->SetEncoderSettings(
-                m_AudEncItf, &setting);              
+                XAAudioEncoderItf(itfPtr), (XAAudioEncoderSettings*)param);
         status = res;
         }
     else
@@ -148,15 +157,30 @@
     return status;
     }
 
-TInt COpenMAXALTestModule::al_audioencoderitf_GetEncoderSettings( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_audioencoderitf_GetEncoderSettings( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
+    TInt status_check(KErrNone);
     XAresult res;
     XAAudioEncoderSettings setting;
+    TUint value(0);
+    TInt i(0);
+    TInt numItems;
+    TPtrC check;
+    
+    void* param = (void*)&setting;
+    void* itfPtr = (void*) m_AudEncItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNull(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
     if(m_AudEncItf)
         {
         res = (*m_AudEncItf)->GetEncoderSettings(
-                m_AudEncItf, &setting);
+                XAAudioEncoderItf(itfPtr), (XAAudioEncoderSettings*)param);
         iLog->Log(_L("GetEncoderSettings"));
         iLog->Log(_L("GetEncoderSettings value[%d]"),setting.encoderId);
         iLog->Log(_L("GetEncoderSettings value[%d]"),setting.channelsIn);
@@ -177,5 +201,90 @@
         {
         status = KErrNotFound;
         }
-    return status;
+    status_check = aItem.GetNextString(check);
+    
+    if(status_check == KErrNone)
+        {    
+        HBufC8* buf = HBufC8::NewL(check.Length()+1);
+        CleanupStack::PushL(buf);
+        TPtr8 des = buf->Des();
+        des.Copy(check);
+        if(strcasecmp((const char*)des.PtrZ(),"check") == NULL)
+        { 
+        status = aItem.GetNextInt(numItems);
+        while((numItems != 0) && (status == KErrNone))
+                {
+                status = aItem.GetNextInt(value);
+                if(!status)
+                    {
+                    switch(i)
+                        {
+                        case 0:
+                            if(!(setting.encoderId == value))
+                                status_check = KErrGeneral;
+                            break;
+                            
+                        case 1:
+                            if(!(setting.channelsIn == value))
+                                status_check = KErrGeneral;
+                            break;
+                        case 2:
+                            if(!(setting.channelsOut == value))
+                                status_check = KErrGeneral;
+                            break;
+                        case 3:
+                            if(!(setting.sampleRate == value))
+                                status_check = KErrGeneral;
+                            break;
+                        case 4:
+                            if(!(setting.bitRate == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 5:
+                            if(!(setting.bitsPerSample == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 6:
+                            if(!(setting.rateControl == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 7:
+                            if(!(setting.profileSetting == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 8:
+                            if(!(setting.levelSetting == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 9:
+                            if(!(setting.channelMode == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 10:
+                            if(!(setting.streamFormat == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 11:
+                            if(!(setting.encodeOptions == value))
+                            status_check = KErrGeneral;
+                            break;
+                        case 12:
+                            if(!(setting.blockAlignment == value))
+                            status_check = KErrGeneral;
+                            break;
+                        default:
+                            break;
+                        }
+                    }
+                i++;
+                numItems--;
+                }
+        
+            }
+        CleanupStack::PopAndDestroy(buf);
+        }
+    if(status_check == KErrNotFound)
+        status_check = KErrNone;
+
+    return status | status_check;
     }
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalmetadatainsertionitftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalmetadatainsertionitftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -86,6 +86,13 @@
     TInt type(0);
     TPtrC mimetype;
     XAint32 childnode;
+    _LIT8(paramnull, "null");
+    
+    void* param1 = (void*)&childnode;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    void* param2 = NULL;
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(parentId);
     RET_ERR_IF_ERR(status);
@@ -99,11 +106,19 @@
     HBufC8* buf = HBufC8::NewL(mimetype.Length()+1);
     CleanupStack::PushL(buf);
     TPtr8 des = buf->Des();
-
+    des.Copy(mimetype);
+    if(des.Compare(paramnull))
+        {
+        param2 = (void*)des.PtrZ();
+        }
+    
+    status = CheckForNullParam(aItem, param1);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->CreateChildNode(
-                m_MetadataInsertionItf, parentId , type, const_cast<TUint8*>(des.PtrZ()), &childnode);              
+                XAMetadataInsertionItf(itfPtr), parentId , type, (XAchar*)param2, (XAint32*)param1);              
         status = res;
         }
     else
@@ -122,14 +137,31 @@
     XAboolean freeKeys;
     XAuint32 keycount(0);
     XAuint32 encodingcount(0);
+    void* param1 = (void*)&freeKeys;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    void* param2 = (void*)&keycount;
+    void* param3 = (void*)&encodingcount;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(parentId);
     RET_ERR_IF_ERR(status);
     
+    status = CheckForNullParam(aItem, param1);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param2);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param3);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->GetSupportedKeysCount(
-                m_MetadataInsertionItf, parentId , &freeKeys, &keycount, &encodingcount);              
+                XAMetadataInsertionItf(itfPtr), parentId , (XAuint32*)param1,
+                                        (XAuint32*)param2, (XAuint32*)param3);              
         status = res;
         }
     else
@@ -146,17 +178,25 @@
     TInt nodeId(0);
     TUint index(0);
     XAuint32 keysize(0);
+    void* param1 = (void*)&keysize;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(nodeId);
     RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(index);
     RET_ERR_IF_ERR(status);
+
+    status = CheckForNullParam(aItem, param1);
+    RET_ERR_IF_ERR(status);  
     
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->GetKeySize(
-                m_MetadataInsertionItf, nodeId , index, &keysize);              
+                XAMetadataInsertionItf(itfPtr), nodeId , index, (XAuint32*)param1);              
         status = res;
         }
     else
@@ -174,6 +214,11 @@
     TUint index(0);
     TUint keysize(0);
     XAMetadataInfo info = {1,1,"en-us",'a'};
+    void* param1 = (void*)&info;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(nodeId);
     RET_ERR_IF_ERR(status);
@@ -184,10 +229,13 @@
     status = aItem.GetNextInt(keysize);
     RET_ERR_IF_ERR(status);
     
+    status = CheckForNullParam(aItem, param1);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->GetKey(
-                m_MetadataInsertionItf, nodeId , index, keysize, &info);              
+                XAMetadataInsertionItf(itfPtr), nodeId , index, keysize, (XAMetadataInfo*)param1);              
         status = res;
         }
     else
@@ -204,6 +252,11 @@
     TInt nodeId(0);
     TUint index(0);
     XAuint32 encoding(0);
+    void* param1 = (void*)&encoding;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
     
     status = aItem.GetNextInt(nodeId);
     RET_ERR_IF_ERR(status);
@@ -211,10 +264,13 @@
     status = aItem.GetNextInt(index);
     RET_ERR_IF_ERR(status);
     
+    status = CheckForNullParam(aItem, param1);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->GetFreeKeysEncoding(
-                m_MetadataInsertionItf, nodeId , index, &encoding);              
+                XAMetadataInsertionItf(itfPtr), nodeId , index, (XAuint32*)param1);              
         status = res;
         }
     else
@@ -235,7 +291,12 @@
     XAchar valuelangCountry[16];    
     XAMetadataInfo keyinput = {1,1,"abc",'a'};
     XAMetadataInfo valueinput = {1,1,"efg",'a'};
+    void* param1 = (void*)&keyinput;
+    void* param2 = (void*)&valueinput;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
     
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
 
     TUint keyinputsize;
     TPtrC language;
@@ -277,10 +338,17 @@
     status = aItem.GetNextInt(overwrite);
     RET_ERR_IF_ERR(status);
     
+    status = CheckForNull(aItem, param1);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNull(aItem, param2);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->InsertMetadataItem(
-                m_MetadataInsertionItf, nodeId , &keyinput, &valueinput, overwrite);              
+                XAMetadataInsertionItf(itfPtr), nodeId , (XAMetadataInfo*)param1,
+                (XAMetadataInfo*)param2, overwrite);              
         status = res;
         }
     else
@@ -290,14 +358,19 @@
     return status;
     }
 
-TInt COpenMAXALTestModule::al_metadatainsertionitf_RegisterCallback( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_metadatainsertionitf_RegisterCallback( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
+    void* itfPtr = (void*) m_MetadataInsertionItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     if(m_MetadataInsertionItf)
         {
         res = (*m_MetadataInsertionItf)->RegisterCallback(
-                m_MetadataInsertionItf, MetadataInsertionCallback , (void*)this);              
+                XAMetadataInsertionItf(itfPtr), MetadataInsertionCallback , (void*)this);              
         status = res;
         }
     else
--- a/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalrecorditftests.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/openmax_al_api/tsrc/openmaxaltestmodule/src/recorder/openmaxalrecorditftests.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -79,13 +79,22 @@
     TInt status(KErrNone);
     TInt state(0);
     XAresult res;
+
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(state);
     if(!status)
         {
         if(m_RecordItf)
             {
+            TAG_TIME_PROFILING_BEGIN;
             res = (*m_RecordItf)->SetRecordState(
-                    m_RecordItf, state);              
+                    (XARecordItf)itfPtr, state);              
+            TAG_TIME_PROFILING_END;
+            PRINT_TO_CONSOLE_TIME_DIFF;
             status = res;
             }
         else
@@ -93,26 +102,36 @@
             status = KErrNotFound;
             }    
         }
-
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_SetRecordState Status[%d] RecordState[%d]"), status, state);
     return status;
     }
 
-TInt COpenMAXALTestModule::al_recorditf_GetRecordState( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_recorditf_GetRecordState( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
     XAuint32 state;
+    void* stateParam = (void*) &state;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, stateParam);
+    RET_ERR_IF_ERR(status);
+    
     if(m_RecordItf)
         {
         res = (*m_RecordItf)->GetRecordState(
-                m_RecordItf, &state);              
+                (XARecordItf)itfPtr, (XAuint32*)stateParam);              
         status = res;
         }
     else
         {
         status = KErrNotFound;
-        }    
+        }   
 
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_GetRecordState Status[%d] RecordState[%d]"), status, state);
     return status;
     }
 
@@ -121,74 +140,19 @@
     TInt status(KErrNone);
     TUint duration(0);
     XAresult res;
+    
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(duration);
     if(!status)
         {
         if(m_RecordItf)
             {
             res = (*m_RecordItf)->SetDurationLimit(
-                    m_RecordItf, duration);              
-            status = res;
-            }
-        else
-            {
-            status = KErrNotFound;
-            }    
-        }
-
-    return status;
-    }
-
-TInt COpenMAXALTestModule::al_recorditf_GetPosition( CStifItemParser& /*aItem*/ )
-    {
-    TInt status(KErrNone);
-    XAresult res;
-    XAmillisecond pos;
-    if(m_RecordItf)
-        {
-        res = (*m_RecordItf)->GetPosition(
-                m_RecordItf, &pos);              
-        status = res;
-        }
-    else
-        {
-        status = KErrNotFound;
-        }    
-
-    return status;
-    }
-
-TInt COpenMAXALTestModule::al_recorditf_RegisterCallback( CStifItemParser& /*aItem*/ )
-    {
-    TInt status(KErrNone);
-    XAresult res;
-
-    if(m_RecordItf)
-        {
-        res = (*m_RecordItf)->RegisterCallback(
-                m_RecordItf, &RecordItfCallback, (void*)this);              
-        status = res;
-        }
-    else
-        {
-        status = KErrNotFound;
-        }    
-
-    return status;
-    }
-
-TInt COpenMAXALTestModule::al_recorditf_SetCallbackEventsMask( CStifItemParser& aItem )
-    {
-    TInt status(KErrNone);
-    TUint flags(0);
-    XAresult res;
-    status = aItem.GetNextInt(flags);
-    if(!status)
-        {
-        if(m_RecordItf)
-            {
-            res = (*m_RecordItf)->SetCallbackEventsMask(
-                    m_RecordItf, flags);              
+                    XARecordItf(itfPtr), duration);              
             status = res;
             }
         else
@@ -197,18 +161,53 @@
             }    
         }
 
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_SetDurationLimit Status[%d] DurationLimit[%d]"), status, duration);
     return status;
     }
 
-TInt COpenMAXALTestModule::al_recorditf_GetCallbackEventsMask( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_recorditf_GetPosition( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
-    XAuint32 flags;
+    XAmillisecond pos;
+    void* param = (void*)&pos;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
     if(m_RecordItf)
         {
-        res = (*m_RecordItf)->GetCallbackEventsMask(
-                m_RecordItf, &flags);              
+        res = (*m_RecordItf)->GetPosition(
+                XARecordItf(itfPtr), (XAmillisecond*)param);              
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }    
+
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_GetPosition Status[%d] Position[%d]"), status, pos);
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_recorditf_RegisterCallback( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+
+    if(m_RecordItf)
+        {
+        res = (*m_RecordItf)->RegisterCallback(
+                XARecordItf(itfPtr), &RecordItfCallback, (void*)this);              
         status = res;
         }
     else
@@ -216,6 +215,65 @@
         status = KErrNotFound;
         }    
 
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_RegisterCallback Status[%d] "), status);
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_recorditf_SetCallbackEventsMask( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    TUint flags(0);
+    XAresult res;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = aItem.GetNextInt(flags);
+    if(!status)
+        {
+        if(m_RecordItf)
+            {
+            res = (*m_RecordItf)->SetCallbackEventsMask(
+                    XARecordItf(itfPtr), flags);              
+            status = res;
+            }
+        else
+            {
+            status = KErrNotFound;
+            }    
+        }
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_SetCallbackEventsMask Status[%d] Mask[%d]"), status, flags);
+
+    return status;
+    }
+
+TInt COpenMAXALTestModule::al_recorditf_GetCallbackEventsMask( CStifItemParser& aItem )
+    {
+    TInt status(KErrNone);
+    XAresult res;
+    XAuint32 flags;
+    void* param = (void*)&flags;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
+    if(m_RecordItf)
+        {
+        res = (*m_RecordItf)->GetCallbackEventsMask(
+                XARecordItf(itfPtr), (XAuint32*)param);              
+        status = res;
+        }
+    else
+        {
+        status = KErrNotFound;
+        }   
+    
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_GetCallbackEventsMask Status[%d] Mask[%d]"), status, flags);
     return status;
     }
 
@@ -224,13 +282,18 @@
     TInt status(KErrNone);
     TUint pos(0);
     XAresult res;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(pos);
     if(!status)
         {
         if(m_RecordItf)
             {
             res = (*m_RecordItf)->SetMarkerPosition(
-                    m_RecordItf, pos);              
+                    XARecordItf(itfPtr), pos);              
             status = res;
             }
         else
@@ -238,59 +301,79 @@
             status = KErrNotFound;
             }    
         }
-
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_SetMarkerPosition Status[%d] Pos[%d]"), status, pos);
     return status;
     }
 
-TInt COpenMAXALTestModule::al_recorditf_ClearMarkerPosition( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_recorditf_ClearMarkerPosition( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
-
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     if(m_RecordItf)
         {
-        res = (*m_RecordItf)->ClearMarkerPosition(m_RecordItf);              
+        res = (*m_RecordItf)->ClearMarkerPosition(XARecordItf(itfPtr));              
         status = res;
         }
     else
         {
         status = KErrNotFound;
-        }    
-
+        }
+        
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_ClearMarkerPosition Status[%d]"), status);
     return status;
     }
 
-TInt COpenMAXALTestModule::al_recorditf_GetMarkerPosition( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_recorditf_GetMarkerPosition( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
     XAmillisecond pos;
+    void* param = (void*)&pos;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
     if(m_RecordItf)
         {
         res = (*m_RecordItf)->GetMarkerPosition(
-                m_RecordItf, &pos);              
+                XARecordItf(itfPtr), (XAmillisecond*)param);              
         status = res;
         }
     else
         {
         status = KErrNotFound;
-        }    
-
+        }
+    
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_GetMarkerPosition Status[%d] Pos[%d]"), status, pos);
     return status;
     }
 
 TInt COpenMAXALTestModule::al_recorditf_SetPositionUpdatePeriod( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
-    TUint updatePeriod(0);
+    TInt updatePeriod(0);
     XAresult res;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
     status = aItem.GetNextInt(updatePeriod);
     if(!status)
         {
         if(m_RecordItf)
             {
             res = (*m_RecordItf)->SetPositionUpdatePeriod(
-                    m_RecordItf, updatePeriod);              
+                    XARecordItf(itfPtr), updatePeriod);              
             status = res;
             }
         else
@@ -298,26 +381,37 @@
             status = KErrNotFound;
             }    
         }
-
+    
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_SetPositionUpdatePeriod Status[%d] Pos[%d]"), status, updatePeriod);
     return status;
     }
 
-TInt COpenMAXALTestModule::al_recorditf_GetPositionUpdatePeriod( CStifItemParser& /*aItem*/ )
+TInt COpenMAXALTestModule::al_recorditf_GetPositionUpdatePeriod( CStifItemParser& aItem )
     {
     TInt status(KErrNone);
     XAresult res;
     XAmillisecond pos;
+    void* param = (void*)&pos;
+    void* itfPtr = (void*) m_RecordItf;
+    
+    status = CheckForNull(aItem, itfPtr);
+    RET_ERR_IF_ERR(status);
+    
+    status = CheckForNullParam(aItem, param);
+    RET_ERR_IF_ERR(status);
+    
     if(m_RecordItf)
         {
         res = (*m_RecordItf)->GetPositionUpdatePeriod(
-                m_RecordItf, &pos);              
+                XARecordItf(itfPtr), (XAmillisecond*)param);              
         status = res;
         }
     else
         {
         status = KErrNotFound;
         }    
-
+    
+    iLog->Log(_L("COpenMAXALTestModule::al_recorditf_GetPositionUpdatePeriod Status[%d] Pos[%d]"), status, pos);
     return status;
     }
 
--- a/mmmw_plat/telephony_multimedia_service_api/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -23,6 +23,7 @@
 PRJ_EXPORTS
 
 ../inc/tms.h                    MW_LAYER_PLATFORM_EXPORT_PATH(tms.h)
+../inc/tmsver.h                 MW_LAYER_PLATFORM_EXPORT_PATH(tmsver.h)
 ../inc/tmsamrformat.h           MW_LAYER_PLATFORM_EXPORT_PATH(tmsamrformat.h)
 ../inc/tmsbuffer.h              MW_LAYER_PLATFORM_EXPORT_PATH(tmsbuffer.h)
 ../inc/tmscall.h                MW_LAYER_PLATFORM_EXPORT_PATH(tmscall.h)
--- a/mmmw_plat/telephony_multimedia_service_api/inc/tmsfactory.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/inc/tmsfactory.h	Mon Oct 04 00:51:56 2010 +0300
@@ -500,7 +500,7 @@
     /**
      * Constructor
      */
-    TMSFactory();
+    TMSFactory(TMSVer& ver);
 
 private:
     TMSFactoryImpl* impl;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/telephony_multimedia_service_api/inc/tmsver.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,68 @@
+/*
+ * Copyright (c) 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"
+ * 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: Telephony Multimedia Service
+ *
+ */
+
+#ifndef TMSVER_H
+#define TMSVER_H
+
+// Include files
+#include <glib.h>
+
+namespace TMS {
+
+/**
+ * TMSVer class
+ *
+ * Contains TMS version information.
+ *
+ */
+class TMSVer
+    {
+public:
+
+    /*
+     * Constructor
+     */
+    TMSVer();
+
+    /*
+     * Constructor
+     *
+     * @param  mjr
+     *      Major version number.
+     *
+     * @param  mnr
+     *      Minor version number.
+     *
+     * @param  bld
+     *      Build version number.
+     *
+     */
+    TMSVer(guint mjr, guint mnr, guint bld) :
+        ver_major(mjr),
+        ver_minor(mnr),
+        ver_build(bld) {}
+
+public:
+    guint ver_major;
+    guint ver_minor;
+    guint ver_build;
+    };
+
+} //namespace TMS
+
+#endif // TMSVER_H
+
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/Conf/TMSAudioServicesTestClass.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/Conf/TMSAudioServicesTestClass.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,4 @@
-// _Unsupported_ Those API could be not implemented and return KErrNotSupported
-
+//TMSAudioServicesTestClass.cfg
 
 [Define]
 KErrNotFound -1
@@ -49,7 +48,6 @@
 
 [Enddefine]
 
-
 /////////////
 //TMSFactory
 /////////////
@@ -211,7 +209,31 @@
 [Endtest]
 
 [Test]
-title  01. TMSFactory - 20. IsCallTypeSupported
+title  01. TMSFactory - 20. IsCallTypeSupported CS
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms IsCallTypeSupported 0
+delete Tms
+[Endtest]
+
+[Test]
+title  01. TMSFactory - 21. IsCallTypeSupported ECS
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms IsCallTypeSupported 1
+delete Tms
+[Endtest]
+
+[Test]
+title  01. TMSFactory - 22. IsCallTypeSupported IP
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms IsCallTypeSupported 2
+delete Tms
+[Endtest]
+
+[Test]
+title  01. TMSFactory - 23. IsCallTypeSupported RTP
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms IsCallTypeSupported 3
@@ -514,10 +536,13 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
+Tms CreateEffect 11
+Tms AddVolumeEffectToStream
 Tms OpenDownlink
 waittestclass Tms
+Tms Volume 11
+waittestclass Tms
 delete Tms
 [Endtest]
 
@@ -533,7 +558,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -552,7 +576,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -571,7 +594,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -590,7 +612,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -606,13 +627,16 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
 Tms AddClientSinkToUplStream
+Tms CreateEffect 12
+Tms AddGainEffectToStream
 Tms OpenUplink
 waittestclass Tms
+Tms Gain 12
+waittestclass Tms
 delete Tms
 [Endtest]
 
@@ -625,7 +649,6 @@
 Tms CreateFormat AMR-NB Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -644,7 +667,6 @@
 Tms CreateFormat G711 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -663,7 +685,6 @@
 Tms CreateFormat G729 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -682,7 +703,6 @@
 Tms CreateFormat iLBC Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -701,9 +721,9 @@
 Tms CreateEffect 9
 allownextresult TMS_RESULT_DOES_NOT_EXIST
 Tms RemoveGlobalVolumeEffectToStream
-Tms AddGlobalVolumeEffectToStream
+Tms AddGlobalVolumeEffectToStream   //should never happen global volume is not used with streams.
 allownextresult TMS_RESULT_ALREADY_EXIST
-Tms AddGlobalVolumeEffectToStream
+Tms AddGlobalVolumeEffectToStream  //should never happen
 Tms RemoveGlobalVolumeEffectToStream
 Tms AddGlobalVolumeEffectToStream
 delete Tms
@@ -736,7 +756,6 @@
 Tms SetDownlinkFormat
 Tms CreateSource 3
 Tms CreateSink 8
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 allownextresult TMS_RESULT_DOES_NOT_EXIST
 Tms RemoveClientSrcFromDnlStream
@@ -763,7 +782,6 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -791,7 +809,6 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -817,7 +834,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 allownextresult TMS_STREAM_UNINITIALIZED
 Tms GetStreamState Dnlink
@@ -843,7 +859,7 @@
 [Endtest]
 
 [Test]
-title  04. TMSStream - 28. Start and Stop UPL
+title  04. TMSStream - 28. Record PCM
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
@@ -851,7 +867,54 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Close Uplink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 29. Record G711
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateUplinkStream
+Tms CreateFormat G711 Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Close Uplink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 30. Record G729
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateUplinkStream
+Tms CreateFormat G729 Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -859,13 +922,64 @@
 Tms OpenUplink
 waittestclass Tms
 Tms Start Uplink
+Tms SetTimeout 5000
 waittestclass Tms
 Tms Stop Uplink
+Tms Close Uplink
+waittestclass Tms
 delete Tms
 [Endtest]
 
 [Test]
-title  04. TMSStream - 29. Start and Stop DNL
+title  04. TMSStream - 31. Record iLBC
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateUplinkStream
+Tms CreateFormat iLBC Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Close Uplink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 32. Record AMR-NB
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateUplinkStream
+Tms CreateFormat AMR-NB Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Close Uplink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 33. Play PCM
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
@@ -876,18 +990,116 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8
-Tms AddSinkObserver
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Dnlink
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 34. Play G711
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat G711 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Dnlink
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 35. Play G729
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat G729 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms Start Dnlink
+Tms SetTimeout 5000
 waittestclass Tms
 Tms Stop Dnlink
+Tms Close Dnlink
+waittestclass Tms
 delete Tms
 [Endtest]
 
 [Test]
-title  04. TMSStream - 30. Start and Pause UPL
+title  04. TMSStream - 36. Play iLBC
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat iLBC Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Dnlink
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 37. Play AMR-NB
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat AMR-NB Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Dnlink
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+[Test]
+title  04. TMSStream - 38. Pause UPL
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
@@ -895,14 +1107,16 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
 Tms AddClientSinkToUplStream
 Tms OpenUplink
 waittestclass Tms
+allownextresult TMS_STREAM_INITIALIZED
+Tms GetStreamState Uplink
 Tms Start Uplink
+Tms SetTimeout 1000
 waittestclass Tms
 allownextresult TMS_STREAM_STARTED
 Tms GetStreamState Uplink
@@ -911,6 +1125,7 @@
 allownextresult TMS_STREAM_PAUSED
 Tms GetStreamState Uplink
 Tms Start Uplink
+Tms SetTimeout 1000
 waittestclass Tms
 allownextresult TMS_STREAM_STARTED
 Tms GetStreamState Uplink
@@ -919,7 +1134,7 @@
 [Endtest]
 
 [Test]
-title  04. TMSStream - 31. Start and Pause DNL
+title  04. TMSStream - 39. Pause DNL
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
@@ -930,11 +1145,13 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
+allownextresult TMS_STREAM_INITIALIZED
+Tms GetStreamState Dnlink
 Tms Start Dnlink
+Tms SetTimeout 1000
 waittestclass Tms
 allownextresult TMS_STREAM_STARTED
 Tms GetStreamState Dnlink
@@ -943,6 +1160,7 @@
 allownextresult TMS_STREAM_PAUSED
 Tms GetStreamState Dnlink
 Tms Start Dnlink
+Tms SetTimeout 1000
 waittestclass Tms
 allownextresult TMS_STREAM_STARTED
 Tms GetStreamState Dnlink
@@ -961,14 +1179,13 @@
 Tms CreateCall 0    //CS
 Tms CreateUplinkStream
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 7    //MODEM
-Tms AddSinkObserver
 Tms AddModemSinkToUplStream
 Tms OpenUplink
 waittestclass Tms
 Tms Start Uplink
+Tms SetTimeout 1000
 waittestclass Tms
 Tms Stop Uplink
 delete Tms
@@ -981,14 +1198,13 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms Start Dnlink
+Tms SetTimeout 1000
 waittestclass Tms
 Tms Stop Dnlink
 delete Tms
@@ -997,7 +1213,6 @@
 // TODO: Add MORE cases verifying correct error codes are returned
 //       when attempting to add format to a CS stream.
 
-
 /////////////
 //TMSSource
 /////////////
@@ -1084,7 +1299,6 @@
 Tms CreateFormat AMR-NB Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1120,7 +1334,6 @@
 Tms CreateFormat G711 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1154,7 +1367,6 @@
 Tms CreateFormat G711 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1180,7 +1392,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1203,7 +1414,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1224,7 +1434,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1242,7 +1451,6 @@
 Tms CreateFormat G711 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1263,7 +1471,6 @@
 Tms CreateFormat G729 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1297,7 +1504,6 @@
 Tms CreateFormat G729 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1318,7 +1524,6 @@
 Tms CreateFormat iLBC Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1352,7 +1557,6 @@
 Tms CreateFormat iLBC Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1378,7 +1582,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1401,7 +1604,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1416,10 +1618,9 @@
 Tms CreateFactory
 Tms CreateCall 2
 Tms CreateUplinkStream
-Tms CreateFormat G729 Uplink
+Tms CreateFormat iLBC Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1440,7 +1641,6 @@
 Tms CreateFormat PCM16 Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
-Tms AddSourceObserver
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
 Tms AddSinkObserver
@@ -1455,7 +1655,6 @@
 // TODO: Add more cases verifying correct error codes are returned
 //       when attempting to set format on a CS call.
 
-
 ////////////////////
 // TMSGlobalRouting
 ////////////////////
@@ -1481,10 +1680,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1507,13 +1704,13 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms CreateGlobalRouting
 Tms AddGlobalRoutingObserver
 Tms SetOutput Private
+waittestclass Tms
 Tms GetOutput Private
 delete Tms
 [Endtest]
@@ -1530,13 +1727,13 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms CreateGlobalRouting
 Tms AddGlobalRoutingObserver
 Tms SetOutput Public
+waittestclass Tms
 Tms GetOutput Public
 delete Tms
 [Endtest]
@@ -1548,10 +1745,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1570,10 +1765,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1594,10 +1787,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1618,16 +1809,15 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms CreateGlobalRouting
 Tms AddGlobalRoutingObserver
 Tms SetOutput Accessory
+waittestclass Tms
 delete Tms
 [Endtest]
 
@@ -1640,16 +1830,15 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
 Tms CreateGlobalRouting
 Tms AddGlobalRoutingObserver
 Tms SetOutput TTY
+waittestclass Tms
 delete Tms
 [Endtest]
 
@@ -1662,10 +1851,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1689,10 +1876,8 @@
 Tms CreateCall 0    //CS
 Tms CreateDownlinkStream
 Tms CreateSource 4  //MODEM
-Tms AddSourceObserver
 Tms AddModemSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -1703,7 +1888,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 01. CreateRingTonePlayer
+title  10. RT - 01. Create Player
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1711,7 +1896,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 02. InitRingTonePlayer - Default
+title  10. RT - 02. Init Player - Default
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1722,7 +1907,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 03. InitRingTonePlayer - File
+title  10. RT - 03. Init Player - File
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1733,7 +1918,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 04. PlayRingTone - Default
+title  10. RT - 04. Play Default
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1747,7 +1932,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 05. PlayRingTone - File
+title  10. RT - 05. Play File
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1761,7 +1946,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 06. PlayRingTone - BeepOnce
+title  10. RT - 06. Play BeepOnce
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1774,7 +1959,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 07. PlayRingTone - Silent
+title  10. RT - 07. Play Silent
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1788,7 +1973,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 08. PlayRingTone - UnsecureVoIP
+title  10. RT - 08. Play UnsecureVoIP
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1802,7 +1987,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 09. PlayRingTone - Sequence
+title  10. RT - 09. Play Sequence
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1815,7 +2000,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 10. PlayRingTone - TTS
+title  10. RT - 10. Play TTS
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1828,7 +2013,7 @@
 [Endtest]
 
 [Test]
-title  10. TMSRingTone - 11. PlayRingTone - Play BKP tone
+title  10. RT - 11. Play BKP tone
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateRingTonePlayer
@@ -1843,7 +2028,15 @@
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 01. CreateInbandTonePlayer
+title  10. RT - 12. Video RT test
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateVideoRingTonePlayer
+delete Tms
+[Endtest]
+
+[Test]
+title  11. Inband - 01. Create Player
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
@@ -1852,127 +2045,137 @@
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 02. StartInbandTone - UserBusy
+title  11. Inband - 02. Start UserBusy
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone UserBusy
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 03. StartInbandTone - RadioPathNotFound
+title  11. Inband - 03. Start RadioPathNotFound
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone RadioPathNotFound
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 04. StartInbandTone - Congestion
+title  11. Inband - 04. Start Congestion
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone Congestion
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 05. StartInbandTone - SpecialInfo
+title  11. Inband - 05. Start SpecialInfo
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone SpecialInfo
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 06. StartInbandTone - Reorder
+title  11. Inband - 06. Start Reorder
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone Reorder
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 07. StartInbandTone - Alerting
+title  11. Inband - 07. Start Alerting
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone Alerting
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 08. StartInbandTone - Waiting
+title  11. Inband - 08. Start Waiting
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone Waiting
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 09. StartInbandTone - DataCall
+title  11. Inband - 09. Start DataCall
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone DataCall
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 10. StartInbandTone - NoSequence
+title  11. Inband - 10. Start NoSequence
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone NoSequence
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  11. TMSInbandTone - 11. StartInbandTone - BeepSequence
+title  11. Inband - 11. Start BeepSequence
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateInbandTonePlayer
 Tms StartInbandTone BeepSequence
 waittestclass Tms
 Tms StopInbandTone
+waittestclass Tms
 Tms CloseInbandTonePlayer
 delete Tms
 [Endtest]
 
 [Test]
-title  12. TMSDTMFTone - 01. CreateDTMFTonePlayer Dnlink
+title  12. DTMF - 01. Create for Dnlink
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateDTMFTonePlayer Dnlink
@@ -1981,7 +2184,7 @@
 [Endtest]
 
 [Test]
-title  12. TMSDTMFTone - 02. CreateDTMFTonePlayer Uplink
+title  12. DTMF - 02. Create for Uplink
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateDTMFTonePlayer Uplink
@@ -1990,7 +2193,7 @@
 [Endtest]
 
 [Test]
-title  12. TMSDTMFTone - 03. DTMFTonePlay - Dnlink IP
+title  12. DTMF - 03. Play Dnlink IP
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
@@ -2001,7 +2204,6 @@
 Tms AddSourceObserver
 Tms AddClientSrcToDnlStream
 Tms CreateSink 8    //SPKR
-Tms AddSinkObserver
 Tms AddSpkrSinkToDnlStream
 Tms OpenDownlink
 waittestclass Tms
@@ -2010,7 +2212,6 @@
 waittestclass Tms
 Tms StopDTMFTonePlayer Dnlink
 Tms CloseDTMFPlayer Dnlink
-Tms RemoveSinkObserver
 Tms RemoveSourceObserver
 //Client must call DeInit() otherwise return TMS_RESULT_INVALID_STATE
 allownextresult TMS_RESULT_INVALID_STATE
@@ -2023,26 +2224,45 @@
 [Endtest]
 
 [Test]
-title  12. TMSDTMFTone - 04. DTMFTonePlay - Uplink IP
+title  12. DTMF - 04. Play Uplink IP
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat AMR-NB Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
 Tms CreateUplinkStream
-Tms CreateFormat PCM16
+Tms CreateFormat AMR-NB Uplink
 Tms SetUplinkFormat
 Tms CreateSource 5  //MIC
 Tms AddMicSrcToUplStream
 Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
 Tms AddClientSinkToUplStream
 Tms OpenUplink
 waittestclass Tms
+Tms OpenDownlink
+waittestclass Tms
 Tms CreateDTMFTonePlayer Uplink
-allownextresult TMS_RESULT_FEATURE_NOT_SUPPORTED
-Tms ContinueDTMFStringSending Uplink
+//Allow TMS_RESULT_INVALID_STATE - actually not supported in IP call
+//allownextresult TMS_RESULT_INVALID_STATE
+//Tms ContinueDTMFStringSending Uplink
+Tms SetLoopPlay
+Tms Start Dnlink
+Tms Start Uplink
+Tms SetTimeout 1000
+waittestclass Tms
 Tms DTMFTonePlay Uplink
 waittestclass Tms
-Tms StopDTMFTonePlayer Uplink
+//Tms StopDTMFTonePlayer Uplink
 Tms CloseDTMFPlayer Uplink
+Tms Stop Uplink
+Tms Stop Dnlink
 //Client must call DeInit() otherwise return TMS_RESULT_INVALID_STATE
 allownextresult TMS_RESULT_INVALID_STATE
 Tms RemoveMicSrcFromUplStream
@@ -2050,11 +2270,14 @@
 allownextresult TMS_RESULT_INVALID_STATE
 Tms RemoveClientSinkFromUplStream
 Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
 delete Tms
 [Endtest]
 
 [Test]
-title  12. TMSDTMFTone - 05. DTMFTonePlay - Dnlink CS
+title  12. DTMF - 05. Play Dnlink CS
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 0    //CS
@@ -2080,8 +2303,209 @@
 delete Tms
 [Endtest]
 
+// *** H/W TEST ONLY ***
 [Test]
-title  12. TMSDTMFTone - 06. DTMFTonePlay - Uplink CS
+title  13. Looptest - 01. IP PCM
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat PCM16 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms CreateUplinkStream
+Tms CreateFormat PCM16 Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms SetLoopPlay
+Tms Start Dnlink
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Stop Dnlink
+Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+// *** H/W TEST ONLY ***
+[Test]
+title  13. Looptest - 02. IP G711
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat G711 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms CreateUplinkStream
+Tms CreateFormat G711 Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms OpenDownlink
+waittestclass Tms
+Tms SetLoopPlay
+Tms Start Uplink
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Stop Dnlink
+Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+// *** H/W TEST ONLY ***
+[Test]
+title  13. Looptest - 03. IP AMR-NB
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat AMR-NB Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms CreateUplinkStream
+Tms CreateFormat AMR-NB Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms SetLoopPlay
+Tms Start Dnlink
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Stop Dnlink
+Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+// *** H/W TEST ONLY ***
+[Test]
+title  13. Looptest - 04. IP G729
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat G729 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms CreateUplinkStream
+Tms CreateFormat G729 Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms OpenDownlink
+waittestclass Tms
+Tms SetLoopPlay
+Tms Start Dnlink
+Tms Start Uplink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Stop Dnlink
+Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+// *** H/W TEST ONLY ***
+[Test]
+title  13. Looptest - 05. IP iLBC
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+Tms CreateDownlinkStream
+Tms CreateFormat iLBC Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms CreateUplinkStream
+Tms CreateFormat iLBC Uplink
+Tms SetUplinkFormat
+Tms CreateSource 5  //MIC
+Tms AddMicSrcToUplStream
+Tms CreateSink 6    //CLIENT
+Tms AddSinkObserver
+Tms AddClientSinkToUplStream
+Tms OpenUplink
+waittestclass Tms
+Tms OpenDownlink
+waittestclass Tms
+Tms SetLoopPlay
+Tms Start Uplink
+Tms Start Dnlink
+Tms SetTimeout 5000
+waittestclass Tms
+Tms Stop Uplink
+Tms Stop Dnlink
+Tms Close Uplink
+waittestclass Tms
+Tms Close Dnlink
+waittestclass Tms
+delete Tms
+[Endtest]
+
+// *** H/W TEST ONLY ***
+[Test]
+title  13. Looptest - 06 CS
 create TmsAudioServicesTestClass Tms
 Tms CreateFactory
 Tms CreateCall 0    //CS
@@ -2090,19 +2514,143 @@
 Tms AddMicSrcToUplStream
 Tms CreateSink 7    //MODEM
 Tms AddModemSinkToUplStream
+Tms CreateDownlinkStream
+Tms CreateSource 4  //MODEM
+Tms AddModemSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms CreateEffect 9 //Global volume
+Tms CreateEffect 10 //Global gain
 Tms OpenUplink
 waittestclass Tms
-Tms CreateDTMFTonePlayer Uplink
-Tms DTMFTonePlay Uplink
+Tms OpenDownlink
+waittestclass Tms
+Tms Volume 9
+waittestclass Tms
+Tms Gain 10
+waittestclass Tms
+Tms Start Uplink
+Tms Start Dnlink
+Tms SetTimeout 2000
 waittestclass Tms
-Tms StopDTMFTonePlayer Uplink
-Tms CloseDTMFPlayer Uplink
-//Client must call DeInit() otherwise return TMS_RESULT_INVALID_STATE
-allownextresult TMS_RESULT_INVALID_STATE
-Tms RemoveMicSrcFromUplStream
-//Client must call DeInit() otherwise return TMS_RESULT_INVALID_STATE
-allownextresult TMS_RESULT_INVALID_STATE
-Tms RemoveModemSinkFromUplStream
-Tms Close Uplink
+Tms Volume 9
+Tms Gain 10
+Tms Stop Uplink
+Tms Stop Dnlink
+delete Tms
+[Endtest]
+
+// Coverage tests
+[Test] 
+title 14. RTP - 01 RTPSession Test
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+allownextresult TMS_RESULT_FEATURE_NOT_SUPPORTED
+Tms TestRTPSession
+delete Tms
+[Endtest]
+
+[Test]
+title  15. TMSFactory -  Create Buffer fail test
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+allownextresult TMS_RESULT_BUFFER_TYPE_NOT_SUPPORTED
+Tms CreateBuffer 1 4096
+delete Tms
+[Endtest]
+
+[Test]
+title  16. NULL Pointer - Coverage test
+create TmsAudioServicesTestClass Tms
+Tms CreateStreamTest
+Tms CreateCallTest
+Tms CreateDTMFTest
+Tms CreateInbandToneTest
+Tms CreateRingToneTest
+Tms CreateClientSinkTest
+Tms CreateClientSourceTest
+Tms CreateSinksTest
+Tms CreateSourcesTest
+Tms CreateFormatsTest
+Tms CreateGlobalVolEffectTest
+Tms CreateGlobalGainEffectTest
+Tms CreateVolumeEffectTest
+Tms CreateGainEffectTest
+Tms CreateGlobalRoutingTest
+delete Tms
+[Endtest]
+
+[Test]
+title  17. CS TMSStream fail test
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 0
+allownextresult TMS_RESULT_INVALID_ARGUMENT
+Tms CreateStreamFailTest
 delete Tms
 [Endtest]
+
+[Test]
+title  18. IP TMSStream fail test
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2
+allownextresult TMS_RESULT_INVALID_ARGUMENT
+Tms CreateStreamFailTest
+delete Tms
+[Endtest]
+
+[Test]
+title  19. DTMF - Downlink fail
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateDTMFTonePlayer Dnlink
+allownextresult TMS_RESULT_GENERAL_ERROR
+Tms ContinueDTMFStringSending Dnlink
+Tms CloseDTMFPlayer Dnlink
+delete Tms
+[Endtest]
+
+[Test]
+title  20. DTMF - Uplink fail
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateDTMFTonePlayer Uplink
+allownextresult TMS_RESULT_GENERAL_ERROR
+Tms ContinueDTMFStringSending Uplink
+Tms CloseDTMFPlayer Uplink
+delete Tms
+[Endtest]
+
+[Test]
+title  21. TMSGblRtng IP CALL fail
+create TmsAudioServicesTestClass Tms
+Tms CreateFactory
+Tms CreateCall 2    //IP
+Tms CreateDownlinkStream
+Tms CreateFormat PCM16 Dnlink
+Tms SetDownlinkFormat
+Tms CreateSource 3  //CLIENT
+Tms AddSourceObserver
+Tms AddClientSrcToDnlStream
+Tms CreateSink 8    //SPKR
+Tms AddSpkrSinkToDnlStream
+Tms OpenDownlink
+waittestclass Tms
+Tms CreateGlobalRouting
+Tms AddGlobalRoutingObserver
+Tms GetAvailableOutputs
+allownextresult TMS_RESULT_FEATURE_NOT_SUPPORTED
+Tms GetPreviousOutput Handset
+delete Tms
+[Endtest]
+
+[Test]
+title  22. Terminate server
+create TmsAudioServicesTestClass Tms
+Tms TerminateServer
+Tms SetTimeout 1000
+waittestclass Tms
+delete Tms
+[Endtest]
+
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -42,7 +42,7 @@
 
 LIBRARY         euser.lib
 LIBRARY         stiftestinterface.lib
-LIBRARY         efsrv.lib               // File server session for database
+LIBRARY         efsrv.lib
 LIBRARY         tmsfactory.lib
 LIBRARY	        tmsapi.lib
 LIBRARY	        libglib.lib
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.pkg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/TmsAudioServicesTestClass.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -13,7 +13,6 @@
 ;
 ; Description: Telephony Multimedia Service - STIF TEST
 ;
-;
 
 ;languages
 &EN
@@ -30,9 +29,12 @@
 ;Files to install
 
 "/epoc32/release/armv5/urel/TmsAudioServicesTestClass.dll" - "c:/Sys/Bin/TmsAudioServicesTestClass.dll"
-; If installation process fails, exclude testframework.ini from the sis file and
-; copy manually.
+
+; Including testframework.ini in the package may cause installation failure if another
+; copy of this file is already found in the destination folder. If this happens, remove
+; this file from the package and copy it manually.
 ;"../../init/TestFramework.ini"-"c:/Testframework/TestFramework.ini"
 "../../init/TmsAudioServicesTestClass.ini"-"c:/Testframework/TmsAudioServicesTestClass.ini"
 "../../Conf/TMSAudioServicesTestClass.cfg"-"c:/Testframework/TMSAudioServicesTestClass.cfg"
+"../../data/NokiaTest.aac"-"C:/Data/Sounds/Digital/NokiaTest.aac"
 
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -21,3 +21,10 @@
 PRJ_TESTMMPFILES
 TmsAudioServicesTestClass.mmp
 
+PRJ_TESTEXPORTS
+//TmsAudioServicesTest.iby CORE_MW_LAYER_IBY_EXPORT_PATH(TmsAudioServicesTest.iby)
+//../../conf/TMSAudioServicesTestClass.cfg /epoc32/winscw/c/TestFramework/TMSAudioServicesTestClass.cfg
+//../../init/TmsAudioServicesTestClass.ini /epoc32/winscw/c/TestFramework/TmsAudioServicesTestClass.ini
+//../../init/TestFramework.ini             /epoc32/data/z/system/data/TestFramework.ini
+//../../data/test_8khz.wav   		   /epoc32/winscw/c/testing/data/test_8khz.wav
+
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TMSAudioServicesTestClass.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TMSAudioServicesTestClass.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __TMSAUDIOSERVICESTESTCLASS_H
-#define __TMSAUDIOSERVICESTESTCLASS_H
+#ifndef TMSAUDIOSERVICESTESTCLASS_H
+#define TMSAUDIOSERVICESTESTCLASS_H
 
 //  INCLUDES
 #include <StifLogger.h>
@@ -35,6 +35,10 @@
 #include <tmsclientsource.h>
 #include <tmsclientsourceobsrvr.h>
 #include <tmsclientsinkobsrvr.h>
+#include <tmsmicsource.h>
+#include <tmsmodemsource.h>
+#include <tmsspeakersink.h>
+#include <tmsmodemsink.h>
 #include <tmsvolumeeffect.h>
 #include <tmsglobalvoleffect.h>
 #include <tmsgaineffect.h>
@@ -69,13 +73,8 @@
 
 const TInt KMicroTimeout = 1000;
 const TInt KShortTimeout = 2000;
-const TInt KMediumTimeout = 10000;
-const TInt KLongTimeout = 100000;
-
-#ifdef __JITTER_BUFFER_TEST__
-const TUint KDefaultSampleRateInkHz = 8; // for sequence number calculation
-const TUint KMaxSeqNumber = 0xFFFF; //65535
-#endif //__JITTER_BUFFER_TEST__
+const TInt KMediumTimeout = 4000;
+const TInt KLongTimeout = 10000;
 
 _LIT( KMsgBadTestParameters, "[Error] No valid test case parameters");
 
@@ -132,44 +131,32 @@
 // MACROS
 
 #ifdef __WINSCW__
-_LIT( KTmsAudioServicesTestClassLogPath, "\\logs\\testframework\\" );
-_LIT16(KTestFile1, "\\testing\\data\\alarm 1.aac");
-_LIT16(KTestFile2, "\\testing\\data\\alarm.aac");
-//_LIT16(KTestFile3, "\\testing\\data\\test_8khz.wav");
-_LIT16(KTestFile3, "c:\\data\\sounds\\digital\\test_8khz.wav");
+_LIT(KTmsAudioServicesTestClassLogPath, "\\logs\\testframework\\");
 #else
-_LIT( KTmsAudioServicesTestClassLogPath, "c:\\testing\\Log\\" );
-_LIT16(KTestFile1, "c:\\testing\\data\\alarm 1.aac");
-_LIT16(KTestFile2, "c:\\testing\\data\\alarm.aac");
-//_LIT16(KTestFile3, "c:\\testing\\data\\test_8khz.wav");
-_LIT16(KTestFile3, "c:\\data\\sounds\\digital\\test_8khz.wav");
+// Note: The path must match setting in TmsAudioServicesTestClass.ini
+_LIT(KTmsAudioServicesTestClassLogPath, "e:\\");    //Write to MMC
+//_LIT(KTmsAudioServicesTestClassLogPath, "f:\\");  //Write to MMC
 #endif
+
+_LIT16(KTestFile1, "C:\\Data\\Sounds\\Digital\\NokiaTest.aac");
 _LIT8(KRTBeepSequence, "\x00\x11\x0A\x0A\x08\x73\x0A\x40\x28\x0A\xF7\
 \x05\xFC\x40\x64\x0A\x08\x40\x32\x0A\xF7\x06\x0B");
 _LIT16(KTextToSpeak, "THE PHONE IS RINGING");
 
 // Log file
-_LIT( KTmsAudioServicesTestClassLogFile, "CTmsAudioServicesTestClass.txt" );
-_LIT8(KMimetypeAAC, "audio/aac");
-_LIT8(KMimetypeWAV, "audio/wav");
+_LIT(KTmsAudioServicesTestClassLogFile, "CTmsAudioServicesTestClass.txt");
 const TUint KTonesBufSize = 6;
 const TUint KMimeStringSize = 32;
 
 // FORWARD DECLARATIONS
 class CTmsAudioServicesTestClass;
 class CTmsDataBuffer;
-#ifdef __JITTER_BUFFER_TEST__
-class CTmsJBDataBuffer;
-#endif //__JITTER_BUFFER_TEST__
+class TMSProxy;
 
 // CLASS DECLARATION
 
 /**
  *  CRadioUtilityTestClass test class for STIF Test Framework TestScripter.
- *  ?other_description_lines
- *
- *  @lib ?library
- *  @since Series60_3_2
  */
 NONSHARABLE_CLASS(CTmsAudioServicesTestClass) :
     public CScriptBase,
@@ -191,7 +178,8 @@
         STARTED,
         };
 
-public: // Constructors and destructor
+public:
+    // Constructors and destructor
 
     /**
      * Two-phased constructor.
@@ -225,15 +213,16 @@
         EInbToneStarted,
         EInbToneStopped,
         EDTMFToneStarted,
-        EDTMFToneStopped
+        EDTMFToneStopped,
+        EStreamVolChange,
+        EStreamGainChange,
+        EGlobalVolChange,
+        EGlobalGainChange
         };
 
 public:
-    // Functions from base classes
-
     /**
      * From CScriptBase Runs a script line.
-     * @since ?Series60_version
      * @param aItem Script line containing method name and parameters
      * @return Symbian OS error code
      */
@@ -242,7 +231,6 @@
     // From MTimeoutObserver
 
     /**
-     * @since ?Series60_version
      * @param none
      * Review if all the expected events have ocurred once the time is over
      */
@@ -286,31 +274,22 @@
      */
     void ConstructL();
 
-    // Prohibit copy constructor if not deriving from CBase.
-    // ?classname( const ?classname& );
-    // Prohibit assigment operator if not deriving from CBase.
-    // ?classname& operator=( const ?classname& );
-
     /**
      * Frees all resources allocated from test methods.
-     * @since ?Series60_version
      */
     void Delete();
 
     /**
      * Set an event as expected and set default timeout
-     * @since ?Series60_version
      */
     void AddExpectedEvent(TTmsExpectedEvent event, TInt ms);
 
     /**
      * Unset an event as expected
-     * @since ?Series60_version
      */
     TBool RemoveExpectedEvent(TTmsExpectedEvent event);
 
     /**
-     * @since ?Series60_version
      * @param none
      * Removes all expected events
      */
@@ -319,19 +298,16 @@
     /**
      * Verify that the event was expected, removes it from the list
      * Signal the TestScripter with the returned error code
-     * @since ?Series60_version
      */
     void ProcessEvent(TTmsExpectedEvent aEvent, TInt aError);
 
     /**
      * Maps a event with a descriptor with its name
-     * @since ?Series60_version
      */
     TPtrC EventName(TInt aKey);
 
     /**
      * Sets a timeout different since the default
-     * @since Series60_3_2
      * @param aItem Script line containing parameters.
      * @return Symbian OS error code.
      */
@@ -339,7 +315,6 @@
 
     /**
      *
-     * @since Series60_3_2
      * @param aItem Script line containing parameters.
      * @return Symbian OS error code.
      */
@@ -347,7 +322,6 @@
 
     /**
      *
-     * @since Series60_3_2
      * @param aItem Script line containing parameters.
      * @return Symbian OS error code.
      */
@@ -355,13 +329,10 @@
 
     /**
      * Connect to the default client to the server
-     * @since ?Series60_version
      * @param aItem Script line containing parameters.
      * @return Symbian OS error code.
      */
 
-    TInt ExampleL(CStifItemParser& aItem);
-
     TInt CreateTmsFactory(CStifItemParser& aItem);
     TInt CreateCall(CStifItemParser& aItem);
     TInt CreateFormat(CStifItemParser& aItem);
@@ -404,6 +375,7 @@
     TInt CloseDTMFPlayer(CStifItemParser& aItem);
 
     TInt CreateRingTonePlayer(CStifItemParser& aItem);
+    TInt CreateVideoRingTonePlayer(CStifItemParser& aItem);
     TInt InitRingTonePlayer(CStifItemParser& aItem);
     TInt PlayRingTone(CStifItemParser& aItem);
     TInt PlayRingToneNoEvent(CStifItemParser& aItem);
@@ -439,6 +411,7 @@
     void DisplayDevice(TMSAudioOutput device);
     TInt GetBufferType(CStifItemParser& aItem);
 
+    TInt SetLoopPlay(CStifItemParser& aItem);
     TInt ConfigEncAudDevice(CStifItemParser& aItem);
 
     TInt AddClientSrcToDnlStream(CStifItemParser& aItem);
@@ -479,6 +452,25 @@
     TInt AddGlobalRoutingObserver(CStifItemParser& aItem);
     TInt DeleteGlobalRoutingObserver(CStifItemParser& aItem);
 
+    TInt TestRTPSession(CStifItemParser& aItem);
+    TInt CreateStreamTest(CStifItemParser& aItem);
+    TInt CreateCallTest(CStifItemParser& aItem);
+    TInt CreateDTMFTest(CStifItemParser& aItem);
+    TInt CreateInbandToneTest(CStifItemParser& aItem);
+    TInt CreateRingToneTest(CStifItemParser& aItem);
+    TInt CreateClientSinkTest(CStifItemParser& aItem);
+    TInt CreateClientSourceTest(CStifItemParser& aItem);
+    TInt CreateSinksTest(CStifItemParser& aItem);
+    TInt CreateSourcesTest(CStifItemParser& aItem);
+    TInt CreateGlobalVolEffectTest(CStifItemParser& aItem);
+    TInt CreateGlobalGainEffectTest(CStifItemParser& aItem);
+    TInt CreateVolumeEffectTest(CStifItemParser& aItem);
+    TInt CreateGainEffectTest(CStifItemParser& aItem);
+    TInt CreateGlobalRoutingTest(CStifItemParser& aItem);
+    TInt CreateFormatsTest(CStifItemParser& aItem);
+    TInt CreateStreamFailTest(CStifItemParser& aItem);
+    TInt TerminateServer(CStifItemParser& aItem);
+
 private:
     // Data
 
@@ -538,6 +530,8 @@
     TMSBuffer* iRecBuf;
     TBool iPlayBufReady;
     TBool iRecBufReady;
+    TBool iLoopPlay;
+    TInt iLoopCounter;
 
     // For ring tone playback
     GString* iRTStr;
@@ -556,8 +550,9 @@
     RArray<TTmsExpectedEvent> iOcurredEvents;
 
     CActiveSchedulerWait* iActive;
+    TMSProxy* iProxy;
     };
 
-#endif //__TMSAUDIOSERVICESTESTCLASS_H
+#endif //TMSAUDIOSERVICESTESTCLASS_H
 
 // End of File
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TimeoutController.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/TimeoutController.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __TIMEOUTCONTROLLER_H
-#define __TIMEOUTCONTROLLER_H
+#ifndef TIMEOUTCONTROLLER_H
+#define TIMEOUTCONTROLLER_H
 
 #include <e32svr.h>
 #include <StifParser.h>
@@ -58,8 +58,6 @@
      */
     ~CSimpleTimeout();
 
-public:
-
     /**
      * Starts timeout counting
      */
@@ -70,8 +68,6 @@
      */
     void Stop();
 
-public:
-
     /**
      * RunL derived from CActive handles the completed requests.
      */
@@ -109,5 +105,5 @@
     CStifLogger* iLog;
     };
 
-#endif //__TIMEOUTCONTROLLER_H
+#endif //TIMEOUTCONTROLLER_H
 
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/debug.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/inc/debug.h	Mon Oct 04 00:51:56 2010 +0300
@@ -23,9 +23,9 @@
 #define FTRACE(a) {a;}
 
 /**
-* Declare the FPrint function
-* @return none
-*/
+ * Declare the FPrint function
+ * @return none
+ */
 inline void FPrint(const TRefByValue<const TDesC> aFmt, ...)
     {
     VA_LIST list;
Binary file mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/sis/TmsAudioServicesTestClass.sis has changed
Binary file mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/sis/TmsAudioServicesTestClass.sisx has changed
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TimeoutController.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TimeoutController.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -27,17 +27,12 @@
 
  Description: Default constructor
 
- C++ default constructor can NOT contain any code, that
- might leave.
+ C++ default constructor can NOT contain any code, that might leave.
 
  Parameters: None
 
  Return Values: None
 
- Errors/Exceptions: None
-
- Status: Approved
-
  -------------------------------------------------------------------------------
  */
 CSimpleTimeout::CSimpleTimeout() :
@@ -61,10 +56,6 @@
 
  Return Values: None
 
- Errors/Exceptions:
-
- Status: Approved
-
  -------------------------------------------------------------------------------
  */
 void CSimpleTimeout::ConstructL(MTimeoutObserver* aObserver,
@@ -96,8 +87,6 @@
  Errors/Exceptions: Leaves if memory allocation for object fails
  Leaves if ConstructL leaves
 
- Status: Approved
-
  -------------------------------------------------------------------------------
  */
 CSimpleTimeout* CSimpleTimeout::NewL(MTimeoutObserver* aTestClass,
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClass.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClass.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -30,8 +30,6 @@
     CScriptBase(aTestModuleIf),
     iTestModuleIf(aTestModuleIf)
     {
-    //iDnLinkCodec = ENULL;
-    //iUpLinkCodec = ENULL;
     iDnLinkStatus = UNINITIALIZED;
     iUpLinkStatus = UNINITIALIZED;
     }
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -22,6 +22,162 @@
 #include "TmsAudioServicesTestClass.h"
 #include "debug.h"
 
+class TMSStreamTest : public TMSStream
+    {
+public:
+    ~TMSStreamTest() {};
+    TMSStreamTest() : TMSStream() {};
+    };
+
+class TMSCallTest : public TMSCall
+    {
+public:
+    ~TMSCallTest() {};
+    TMSCallTest() : TMSCall() {};
+    };
+
+class TMSDTMFTest : public TMSDTMF
+    {
+public:
+    ~TMSDTMFTest() {};
+    TMSDTMFTest() : TMSDTMF() {};
+    };
+
+class TMSInbandToneTest : public TMSInbandTone
+    {
+public:
+    ~TMSInbandToneTest() {};
+    TMSInbandToneTest() : TMSInbandTone() {};
+    };
+
+class TMSRingToneTest : public TMSRingTone
+    {
+public:
+    ~TMSRingToneTest() {};
+    TMSRingToneTest() : TMSRingTone() {};
+    };
+
+class TMSClientSinkTest : public TMSClientSink
+    {
+public:
+    ~TMSClientSinkTest() {};
+    TMSClientSinkTest() : TMSClientSink() {};
+    };
+
+class TMSClientSourceTest : public TMSClientSource
+    {
+public:
+    ~TMSClientSourceTest() {};
+    TMSClientSourceTest() : TMSClientSource() {};
+    };
+
+class TMSMicSourceTest : public TMSMicSource
+    {
+public:
+    ~TMSMicSourceTest() {};
+    TMSMicSourceTest() : TMSMicSource() {};
+    };
+
+class TMSModemSourceTest : public TMSModemSource
+    {
+public:
+    ~TMSModemSourceTest() {};
+    TMSModemSourceTest() : TMSModemSource() {};
+    };
+
+class TMSSpeakerSinkTest : public TMSSpeakerSink
+    {
+public:
+    ~TMSSpeakerSinkTest() {};
+    TMSSpeakerSinkTest() : TMSSpeakerSink() {};
+    };
+
+class TMSModemSinkTest : public TMSModemSink
+    {
+public:
+    ~TMSModemSinkTest() {};
+    TMSModemSinkTest() : TMSModemSink() {};
+    };
+
+class TMSGlobalVolTest : public TMSGlobalVolEffect
+    {
+public:
+    ~TMSGlobalVolTest() {};
+    TMSGlobalVolTest() : TMSGlobalVolEffect() {};
+    };
+
+class TMSGlobalGainTest : public TMSGlobalGainEffect
+    {
+public:
+    ~TMSGlobalGainTest() {};
+    TMSGlobalGainTest() : TMSGlobalGainEffect() {};
+    };
+
+class TMSVolumeEffectTest : public TMSVolumeEffect
+    {
+public:
+    ~TMSVolumeEffectTest() {};
+    TMSVolumeEffectTest() : TMSVolumeEffect() {};
+    };
+
+class TMSGainEffectTest : public TMSGainEffect
+    {
+public:
+    ~TMSGainEffectTest() {};
+    TMSGainEffectTest() : TMSGainEffect() {};
+    };
+
+class TMSGlobalRoutingTest : public TMSGlobalRouting
+    {
+public:
+    ~TMSGlobalRoutingTest() {};
+    TMSGlobalRoutingTest() : TMSGlobalRouting() {};
+    };
+
+class TMSG711Test : public TMSG711Format
+    {
+public:
+    ~TMSG711Test() {};
+    TMSG711Test() : TMSG711Format() {};
+    };
+
+class TMSG729Test : public TMSG729Format
+    {
+public:
+    ~TMSG729Test() {};
+    TMSG729Test() : TMSG729Format() {};
+    };
+
+class TMSILBCTest : public TMSILBCFormat
+    {
+public:
+    ~TMSILBCTest() {};
+    TMSILBCTest() : TMSILBCFormat() {};
+    };
+
+/*
+ * Mini TMSProxy
+ */
+class TMSProxy : public RSessionBase
+    {
+public:
+     TMSProxy() {}
+     virtual ~TMSProxy() {}
+
+     void Connect(const TDesC& srvname)
+         {
+         TVersion ver(1,0,0);
+         TRequestStatus stat;
+         CreateSession(srvname, ver, 2, EIpcSession_Unsharable, 0, &stat);
+         User::WaitForRequest(stat);
+         }
+
+     void SendRequest(TInt command)
+         {
+         SendReceive(command);
+         }
+    };
+
 // -----------------------------------------------------------------------------
 // CTmsAudioServicesTestClass::Delete
 // Delete here all resources allocated and opened from test methods.
@@ -32,6 +188,11 @@
     {
     FTRACE(FPrint(_L("CTmsAudioServicesTestClass::Delete")));
 
+    if (iProxy)
+        {
+        iProxy->Close();
+        delete iProxy;
+        }
     if (iFactory && iTmsBuffer)
         {
         iFactory->DeleteBuffer(iTmsBuffer);
@@ -50,6 +211,7 @@
         }
     if (iFactory && iTmsClientSink)
         {
+        static_cast<TMSClientSink*> (iTmsClientSink)->RemoveObserver(*this);
         iFactory->DeleteSink(iTmsClientSink);
         }
     if (iFactory && iTmsModemSink)
@@ -90,22 +252,28 @@
         }
     if (iFactory && iTmsDnlinkEffect)
         {
+        static_cast<TMSVolumeEffect*> (iTmsDnlinkEffect)->RemoveObserver(
+                *this);
         iFactory->DeleteEffect(iTmsDnlinkEffect);
         }
     if (iFactory && iTmsUplinkEffect)
         {
+        static_cast<TMSGainEffect*> (iTmsUplinkEffect)->RemoveObserver(*this);
         iFactory->DeleteEffect(iTmsUplinkEffect);
         }
     if (iFactory && iGlobalVol)
         {
+        static_cast<TMSGlobalVolEffect*> (iGlobalVol)->RemoveObserver(*this);
         iFactory->DeleteEffect(iGlobalVol);
         }
     if (iFactory && iGlobalGain)
         {
+        static_cast<TMSGlobalGainEffect*> (iGlobalGain)->RemoveObserver(*this);
         iFactory->DeleteEffect(iGlobalGain);
         }
     if (iFactory && iTmsGlobalRouting)
         {
+        iTmsGlobalRouting->RemoveObserver(*this);
         iFactory->DeleteGlobalRouting(iTmsGlobalRouting);
         }
 
@@ -129,6 +297,7 @@
             {
             iTmsDnlink->Deinit();
             }
+
         delete iTmsDnlink;
         iTmsDnlink = NULL;
         }
@@ -155,102 +324,119 @@
     {
     static TStifFunctionInfo const KFunctions[] =
         {
-        // Copy this line for every implemented function.
-        // First string is the function name used in TestScripter script file.
-        // Second is the actual implementation member function.
-
-        ENTRY( "SetTimeout", CTmsAudioServicesTestClass::SetTimeout ),
-        ENTRY( "CreateFactory", CTmsAudioServicesTestClass::CreateTmsFactory ),
-        ENTRY( "CreateCall", CTmsAudioServicesTestClass::CreateCall ),
-        ENTRY( "CreateFormat", CTmsAudioServicesTestClass::CreateFormat ),
-        ENTRY( "CreateBuffer", CTmsAudioServicesTestClass::CreateBuffer ),
-        ENTRY( "CreateEffect", CTmsAudioServicesTestClass::CreateEffect ),
-        ENTRY( "CreateGlobalRouting", CTmsAudioServicesTestClass::CreateGlobalRouting ),
-        ENTRY( "CreateSource", CTmsAudioServicesTestClass::CreateSource ),
-        ENTRY( "DeleteSource", CTmsAudioServicesTestClass::DeleteSource ),
-        ENTRY( "CreateSink", CTmsAudioServicesTestClass::CreateSink ),
-        ENTRY( "DeleteSink", CTmsAudioServicesTestClass::DeleteSink ),
-        ENTRY( "GetSourceType", CTmsAudioServicesTestClass::GetSourceType ),
-        ENTRY( "GetSinkType", CTmsAudioServicesTestClass::GetSinkType ),
-        ENTRY( "GetEffectType", CTmsAudioServicesTestClass::GetEffectType ),
-        ENTRY( "CreateDownlinkStream", CTmsAudioServicesTestClass::CreateDownlinkStream ),
-        ENTRY( "CreateUplinkStream", CTmsAudioServicesTestClass::CreateUplinkStream ),
-        ENTRY( "GetSupportedFormats", CTmsAudioServicesTestClass::GetSupportedFormats ),
-        ENTRY( "IsCallTypeSupported", CTmsAudioServicesTestClass::IsCallTypeSupported ),
-        ENTRY( "SetDownlinkFormat", CTmsAudioServicesTestClass::SetDownlinkFormat ),
-        ENTRY( "SetUplinkFormat", CTmsAudioServicesTestClass::SetUplinkFormat ),
-        ENTRY( "ReSetDownlinkFormat", CTmsAudioServicesTestClass::ReSetDownlinkFormat ),
-        ENTRY( "ReSetUplinkFormat", CTmsAudioServicesTestClass::ReSetUplinkFormat ),
-        ENTRY( "OpenDownlink", CTmsAudioServicesTestClass::OpenDownlink ),
-        ENTRY( "OpenUplink", CTmsAudioServicesTestClass::OpenUplink ),
-        ENTRY( "Gain", CTmsAudioServicesTestClass::Gain ),
-        ENTRY( "AddGlobalGainEffectToStream", CTmsAudioServicesTestClass::AddGlobalGainEffectToStream),
-        ENTRY( "RemoveGlobalGainEffectToStream", CTmsAudioServicesTestClass::RemoveGlobalGainEffectToStream),
-        ENTRY( "Volume", CTmsAudioServicesTestClass::Volume ),
-        ENTRY( "AddGlobalVolumeEffectToStream", CTmsAudioServicesTestClass::AddGlobalVolumeEffectToStream),
-        ENTRY( "RemoveGlobalVolumeEffectToStream", CTmsAudioServicesTestClass::RemoveGlobalVolumeEffectToStream),
-        ENTRY( "CreateGlobalGainEffect", CTmsAudioServicesTestClass::CreateGlobalGainEffect),
-        ENTRY( "Close", CTmsAudioServicesTestClass::Close ),
-        ENTRY( "Start", CTmsAudioServicesTestClass::Start ),
-        ENTRY( "Pause", CTmsAudioServicesTestClass::Pause ),
-        ENTRY( "Stop", CTmsAudioServicesTestClass::Stop ),
-        ENTRY( "GetBitRateList", CTmsAudioServicesTestClass::GetBitRateList ),
-        ENTRY( "SetBitrates", CTmsAudioServicesTestClass::SetBitrates ),
-        ENTRY( "GetBitrates", CTmsAudioServicesTestClass::GetBitrates ),
-        ENTRY( "CreateDTMFTonePlayer", CTmsAudioServicesTestClass::CreateDTMFTonePlayer ),
-        ENTRY( "DTMFTonePlay", CTmsAudioServicesTestClass::DTMFTonePlay ),
-        ENTRY( "StopDTMFTonePlayer", CTmsAudioServicesTestClass::StopDTMFTonePlayer ),
-        ENTRY( "ContinueDTMFStringSending", CTmsAudioServicesTestClass::ContinueDTMFStringSending ),
-        ENTRY( "CloseDTMFPlayer", CTmsAudioServicesTestClass::CloseDTMFPlayer ),
-        ENTRY( "CreateRingTonePlayer", CTmsAudioServicesTestClass::CreateRingTonePlayer ),
-        ENTRY( "InitRingTonePlayer", CTmsAudioServicesTestClass::InitRingTonePlayer ),
-        ENTRY( "PlayRingTone", CTmsAudioServicesTestClass::PlayRingTone ),
-        ENTRY( "PlayRingToneNoEvent", CTmsAudioServicesTestClass::PlayRingToneNoEvent ),
-        ENTRY( "PauseRingTone", CTmsAudioServicesTestClass::PauseRingTone ),
-        ENTRY( "MuteRingTone", CTmsAudioServicesTestClass::MuteRingTone ),
-        ENTRY( "StopRingTone", CTmsAudioServicesTestClass::StopRingTone ),
-        ENTRY( "CloseRingTonePlayer", CTmsAudioServicesTestClass::CloseRingTonePlayer ),
-        ENTRY( "CreateInbandTonePlayer", CTmsAudioServicesTestClass::CreateInbandTonePlayer ),
-        ENTRY( "StartInbandTone", CTmsAudioServicesTestClass::StartInbandTone ),
-        ENTRY( "StopInbandTone", CTmsAudioServicesTestClass::StopInbandTone ),
-        ENTRY( "CloseInbandTonePlayer", CTmsAudioServicesTestClass::CloseInbandTonePlayer ),
-        ENTRY( "GetDownlinkVersion", CTmsAudioServicesTestClass::GetDownlinkVersion ),
-        ENTRY( "GetUplinkVersion", CTmsAudioServicesTestClass::GetUplinkVersion ),
-        ENTRY( "GetType", CTmsAudioServicesTestClass::GetType ),
-        ENTRY( "GetVAD", CTmsAudioServicesTestClass::GetVAD ),
-        ENTRY( "ToggleVAD", CTmsAudioServicesTestClass::ToggleVAD ),
-        ENTRY( "GetMode", CTmsAudioServicesTestClass::GetMode ),
-        ENTRY( "SetMode", CTmsAudioServicesTestClass::SetMode ),
-        ENTRY( "GetCNG", CTmsAudioServicesTestClass::GetCNG ),
-        ENTRY( "ToggleCNG", CTmsAudioServicesTestClass::ToggleCNG ),
-        ENTRY( "GetPLC", CTmsAudioServicesTestClass::GetPLC ),
-        ENTRY( "TogglePLC", CTmsAudioServicesTestClass::TogglePLC ),
-        ENTRY( "GetBufferType", CTmsAudioServicesTestClass::GetBufferType ),
-        ENTRY( "AddClientSrcToDnlStream", CTmsAudioServicesTestClass::AddClientSrcToDnlStream ),
-        ENTRY( "AddMicSrcToUplStream", CTmsAudioServicesTestClass::AddMicSrcToUplStream ),
-        ENTRY( "AddModemSrcToDnlStream", CTmsAudioServicesTestClass::AddModemSrcToDnlStream ),
-        ENTRY( "RemoveClientSrcFromDnlStream", CTmsAudioServicesTestClass::RemoveClientSrcFromDnlStream ),
-        ENTRY( "RemoveMicSrcFromUplStream", CTmsAudioServicesTestClass::RemoveMicSrcFromUplStream ),
-        ENTRY( "RemoveModemSrcFromDnlStream", CTmsAudioServicesTestClass::RemoveModemSrcFromDnlStream ),
-        ENTRY( "AddSourceObserver", CTmsAudioServicesTestClass::AddSourceObserver ),
-        ENTRY( "RemoveSourceObserver", CTmsAudioServicesTestClass::RemoveSourceObserver ),
-        ENTRY( "AddClientSinkToUplStream", CTmsAudioServicesTestClass::AddClientSinkToUplStream ),
-        ENTRY( "AddModemSinkToUplStream", CTmsAudioServicesTestClass::AddModemSinkToUplStream ),
-        ENTRY( "AddSpkrSinkToDnlStream", CTmsAudioServicesTestClass::AddSpkrSinkToDnlStream ),
-        ENTRY( "RemoveClientSinkFromUplStream", CTmsAudioServicesTestClass::RemoveClientSinkFromUplStream ),
-        ENTRY( "RemoveModemSinkFromUplStream", CTmsAudioServicesTestClass::RemoveModemSinkFromUplStream ),
-        ENTRY( "RemoveSpkrSinkFromDnlStream", CTmsAudioServicesTestClass::RemoveSpkrSinkFromDnlStream ),
-        ENTRY( "AddSinkObserver", CTmsAudioServicesTestClass::AddSinkObserver ),
-        ENTRY( "RemoveSinkObserver", CTmsAudioServicesTestClass::RemoveSinkObserver ),
-        ENTRY( "GetStreamType", CTmsAudioServicesTestClass::GetStreamType ),
-        ENTRY( "GetStreamState", CTmsAudioServicesTestClass::GetStreamState ),
-        ENTRY( "SetOutput", CTmsAudioServicesTestClass::SetOutput ),
-        ENTRY( "GetOutput", CTmsAudioServicesTestClass::GetOutput ),
-        ENTRY( "GetPreviousOutput", CTmsAudioServicesTestClass::GetPreviousOutput ),
-        ENTRY( "GetAvailableOutputs", CTmsAudioServicesTestClass::GetAvailableOutputs ),
-        ENTRY( "AddGlobalRoutingObserver", CTmsAudioServicesTestClass::AddGlobalRoutingObserver ),
-        ENTRY( "DeleteGlobalRoutingObserver", CTmsAudioServicesTestClass::DeleteGlobalRoutingObserver ),
-        ENTRY( "Example", CTmsAudioServicesTestClass::ExampleL )
+        ENTRY("SetTimeout", CTmsAudioServicesTestClass::SetTimeout),
+        ENTRY("CreateFactory", CTmsAudioServicesTestClass::CreateTmsFactory),
+        ENTRY("CreateCall", CTmsAudioServicesTestClass::CreateCall),
+        ENTRY("CreateFormat", CTmsAudioServicesTestClass::CreateFormat),
+        ENTRY("CreateBuffer", CTmsAudioServicesTestClass::CreateBuffer),
+        ENTRY("CreateEffect", CTmsAudioServicesTestClass::CreateEffect),
+        ENTRY("CreateGlobalRouting", CTmsAudioServicesTestClass::CreateGlobalRouting),
+        ENTRY("CreateSource", CTmsAudioServicesTestClass::CreateSource),
+        ENTRY("DeleteSource", CTmsAudioServicesTestClass::DeleteSource),
+        ENTRY("CreateSink", CTmsAudioServicesTestClass::CreateSink),
+        ENTRY("DeleteSink", CTmsAudioServicesTestClass::DeleteSink),
+        ENTRY("GetSourceType", CTmsAudioServicesTestClass::GetSourceType),
+        ENTRY("GetSinkType", CTmsAudioServicesTestClass::GetSinkType),
+        ENTRY("GetEffectType", CTmsAudioServicesTestClass::GetEffectType),
+        ENTRY("CreateDownlinkStream", CTmsAudioServicesTestClass::CreateDownlinkStream),
+        ENTRY("CreateUplinkStream", CTmsAudioServicesTestClass::CreateUplinkStream),
+        ENTRY("GetSupportedFormats", CTmsAudioServicesTestClass::GetSupportedFormats),
+        ENTRY("IsCallTypeSupported", CTmsAudioServicesTestClass::IsCallTypeSupported),
+        ENTRY("SetDownlinkFormat", CTmsAudioServicesTestClass::SetDownlinkFormat),
+        ENTRY("SetUplinkFormat", CTmsAudioServicesTestClass::SetUplinkFormat),
+        ENTRY("ReSetDownlinkFormat", CTmsAudioServicesTestClass::ReSetDownlinkFormat),
+        ENTRY("ReSetUplinkFormat", CTmsAudioServicesTestClass::ReSetUplinkFormat),
+        ENTRY("OpenDownlink", CTmsAudioServicesTestClass::OpenDownlink),
+        ENTRY("OpenUplink", CTmsAudioServicesTestClass::OpenUplink),
+        ENTRY("Gain", CTmsAudioServicesTestClass::Gain),
+        ENTRY("AddVolumeEffectToStream", CTmsAudioServicesTestClass::AddVolumeEffectToStream),
+        ENTRY("AddGainEffectToStream", CTmsAudioServicesTestClass::AddGainEffectToStream),
+        ENTRY("AddGlobalGainEffectToStream", CTmsAudioServicesTestClass::AddGlobalGainEffectToStream),
+        ENTRY("RemoveGlobalGainEffectToStream", CTmsAudioServicesTestClass::RemoveGlobalGainEffectToStream),
+        ENTRY("Volume", CTmsAudioServicesTestClass::Volume),
+        ENTRY("AddGlobalVolumeEffectToStream", CTmsAudioServicesTestClass::AddGlobalVolumeEffectToStream),
+        ENTRY("RemoveGlobalVolumeEffectToStream", CTmsAudioServicesTestClass::RemoveGlobalVolumeEffectToStream),
+        ENTRY("CreateGlobalGainEffect", CTmsAudioServicesTestClass::CreateGlobalGainEffect),
+        ENTRY("Close", CTmsAudioServicesTestClass::Close),
+        ENTRY("Start", CTmsAudioServicesTestClass::Start),
+        ENTRY("Pause", CTmsAudioServicesTestClass::Pause),
+        ENTRY("Stop", CTmsAudioServicesTestClass::Stop),
+        ENTRY("GetBitRateList", CTmsAudioServicesTestClass::GetBitRateList),
+        ENTRY("SetBitrates", CTmsAudioServicesTestClass::SetBitrates),
+        ENTRY("GetBitrates", CTmsAudioServicesTestClass::GetBitrates),
+        ENTRY("CreateDTMFTonePlayer", CTmsAudioServicesTestClass::CreateDTMFTonePlayer),
+        ENTRY("DTMFTonePlay", CTmsAudioServicesTestClass::DTMFTonePlay),
+        ENTRY("StopDTMFTonePlayer", CTmsAudioServicesTestClass::StopDTMFTonePlayer),
+        ENTRY("ContinueDTMFStringSending", CTmsAudioServicesTestClass::ContinueDTMFStringSending),
+        ENTRY("CloseDTMFPlayer", CTmsAudioServicesTestClass::CloseDTMFPlayer),
+        ENTRY("CreateRingTonePlayer", CTmsAudioServicesTestClass::CreateRingTonePlayer),
+        ENTRY("CreateVideoRingTonePlayer", CTmsAudioServicesTestClass::CreateVideoRingTonePlayer),
+        ENTRY("InitRingTonePlayer", CTmsAudioServicesTestClass::InitRingTonePlayer),
+        ENTRY("PlayRingTone", CTmsAudioServicesTestClass::PlayRingTone),
+        ENTRY("PlayRingToneNoEvent", CTmsAudioServicesTestClass::PlayRingToneNoEvent),
+        ENTRY("PauseRingTone", CTmsAudioServicesTestClass::PauseRingTone),
+        ENTRY("MuteRingTone", CTmsAudioServicesTestClass::MuteRingTone),
+        ENTRY("StopRingTone", CTmsAudioServicesTestClass::StopRingTone),
+        ENTRY("CloseRingTonePlayer", CTmsAudioServicesTestClass::CloseRingTonePlayer),
+        ENTRY("CreateInbandTonePlayer", CTmsAudioServicesTestClass::CreateInbandTonePlayer),
+        ENTRY("StartInbandTone", CTmsAudioServicesTestClass::StartInbandTone),
+        ENTRY("StopInbandTone", CTmsAudioServicesTestClass::StopInbandTone),
+        ENTRY("CloseInbandTonePlayer", CTmsAudioServicesTestClass::CloseInbandTonePlayer),
+        ENTRY("GetDownlinkVersion", CTmsAudioServicesTestClass::GetDownlinkVersion),
+        ENTRY("GetUplinkVersion", CTmsAudioServicesTestClass::GetUplinkVersion),
+        ENTRY("GetType", CTmsAudioServicesTestClass::GetType),
+        ENTRY("GetVAD", CTmsAudioServicesTestClass::GetVAD),
+        ENTRY("ToggleVAD", CTmsAudioServicesTestClass::ToggleVAD),
+        ENTRY("GetMode", CTmsAudioServicesTestClass::GetMode),
+        ENTRY("SetMode", CTmsAudioServicesTestClass::SetMode),
+        ENTRY("GetCNG", CTmsAudioServicesTestClass::GetCNG),
+        ENTRY("ToggleCNG", CTmsAudioServicesTestClass::ToggleCNG),
+        ENTRY("GetPLC", CTmsAudioServicesTestClass::GetPLC),
+        ENTRY("TogglePLC", CTmsAudioServicesTestClass::TogglePLC),
+        ENTRY("GetBufferType", CTmsAudioServicesTestClass::GetBufferType),
+        ENTRY("AddClientSrcToDnlStream", CTmsAudioServicesTestClass::AddClientSrcToDnlStream),
+        ENTRY("AddMicSrcToUplStream", CTmsAudioServicesTestClass::AddMicSrcToUplStream),
+        ENTRY("AddModemSrcToDnlStream", CTmsAudioServicesTestClass::AddModemSrcToDnlStream),
+        ENTRY("RemoveClientSrcFromDnlStream", CTmsAudioServicesTestClass::RemoveClientSrcFromDnlStream),
+        ENTRY("RemoveMicSrcFromUplStream", CTmsAudioServicesTestClass::RemoveMicSrcFromUplStream),
+        ENTRY("RemoveModemSrcFromDnlStream", CTmsAudioServicesTestClass::RemoveModemSrcFromDnlStream),
+        ENTRY("AddSourceObserver", CTmsAudioServicesTestClass::AddSourceObserver),
+        ENTRY("RemoveSourceObserver", CTmsAudioServicesTestClass::RemoveSourceObserver),
+        ENTRY("AddClientSinkToUplStream", CTmsAudioServicesTestClass::AddClientSinkToUplStream),
+        ENTRY("AddModemSinkToUplStream", CTmsAudioServicesTestClass::AddModemSinkToUplStream),
+        ENTRY("AddSpkrSinkToDnlStream", CTmsAudioServicesTestClass::AddSpkrSinkToDnlStream),
+        ENTRY("RemoveClientSinkFromUplStream", CTmsAudioServicesTestClass::RemoveClientSinkFromUplStream),
+        ENTRY("RemoveModemSinkFromUplStream", CTmsAudioServicesTestClass::RemoveModemSinkFromUplStream),
+        ENTRY("RemoveSpkrSinkFromDnlStream", CTmsAudioServicesTestClass::RemoveSpkrSinkFromDnlStream),
+        ENTRY("AddSinkObserver", CTmsAudioServicesTestClass::AddSinkObserver),
+        ENTRY("RemoveSinkObserver", CTmsAudioServicesTestClass::RemoveSinkObserver),
+        ENTRY("GetStreamType", CTmsAudioServicesTestClass::GetStreamType),
+        ENTRY("GetStreamState", CTmsAudioServicesTestClass::GetStreamState),
+        ENTRY("SetOutput", CTmsAudioServicesTestClass::SetOutput),
+        ENTRY("GetOutput", CTmsAudioServicesTestClass::GetOutput),
+        ENTRY("GetPreviousOutput", CTmsAudioServicesTestClass::GetPreviousOutput),
+        ENTRY("GetAvailableOutputs", CTmsAudioServicesTestClass::GetAvailableOutputs),
+        ENTRY("AddGlobalRoutingObserver", CTmsAudioServicesTestClass::AddGlobalRoutingObserver),
+        ENTRY("DeleteGlobalRoutingObserver", CTmsAudioServicesTestClass::DeleteGlobalRoutingObserver),
+        ENTRY("TestRTPSession", CTmsAudioServicesTestClass::TestRTPSession),
+        ENTRY("CreateStreamTest", CTmsAudioServicesTestClass::CreateStreamTest),
+        ENTRY("CreateCallTest", CTmsAudioServicesTestClass::CreateCallTest),
+        ENTRY("CreateDTMFTest", CTmsAudioServicesTestClass::CreateDTMFTest),
+        ENTRY("CreateInbandToneTest", CTmsAudioServicesTestClass::CreateInbandToneTest),
+        ENTRY("CreateRingToneTest", CTmsAudioServicesTestClass::CreateRingToneTest),
+        ENTRY("CreateClientSinkTest", CTmsAudioServicesTestClass::CreateClientSinkTest),
+        ENTRY("CreateClientSourceTest", CTmsAudioServicesTestClass::CreateClientSourceTest),
+        ENTRY("CreateSourcesTest", CTmsAudioServicesTestClass::CreateSourcesTest),
+        ENTRY("CreateSinksTest", CTmsAudioServicesTestClass::CreateSinksTest),
+        ENTRY("CreateGlobalVolEffectTest", CTmsAudioServicesTestClass::CreateGlobalVolEffectTest),
+        ENTRY("CreateGlobalGainEffectTest", CTmsAudioServicesTestClass::CreateGlobalGainEffectTest),
+        ENTRY("CreateVolumeEffectTest", CTmsAudioServicesTestClass::CreateVolumeEffectTest),
+        ENTRY("CreateGainEffectTest", CTmsAudioServicesTestClass::CreateGainEffectTest),
+        ENTRY("CreateGlobalRoutingTest", CTmsAudioServicesTestClass::CreateGlobalRoutingTest),
+        ENTRY("CreateFormatsTest", CTmsAudioServicesTestClass::CreateFormatsTest),
+        ENTRY("SetLoopPlay", CTmsAudioServicesTestClass::SetLoopPlay),
+        ENTRY("CreateStreamFailTest", CTmsAudioServicesTestClass::CreateStreamFailTest),
+        ENTRY("TerminateServer", CTmsAudioServicesTestClass::TerminateServer)
         };
 
     const TInt count = sizeof(KFunctions) / sizeof(TStifFunctionInfo);
@@ -286,18 +472,18 @@
         (TText*)L"EInbToneStarted",
         (TText*)L"EInbToneStopped",
         (TText*)L"EDTMFToneStarted",
-        (TText*)L"EDTMFToneStopped",
+        (TText*)L"EDTMFToneStopped"
         };
 
-    if( (TUint)aKey >= (sizeof( keywords )/sizeof(TText*)) )
+    if((TUint)aKey >= (sizeof(keywords)/sizeof(TText*)))
         {
         iLog->Log(_L("Keyword out of bounds"));
-        TPtrC keyword( badKeyword );
+        TPtrC keyword(badKeyword);
         return keyword;
         }
     else
         {
-        TPtrC keyword( keywords[aKey] );
+        TPtrC keyword(keywords[aKey]);
         return keyword;
         }
     }
@@ -391,7 +577,6 @@
             Signal();
             iTimeoutController->Cancel();
             }
-
         }
     else
         {
@@ -482,7 +667,7 @@
             (KErrNone == aItem.GetNextInt(panicCode)))
         {
         iLog->Log(_L("Allowing panic: %S %d"), &panicType, panicCode);
-        //     iTestModuleIf.SetExitReason( CTestModuleIf::EPanic, panicCode );
+        //iTestModuleIf.SetExitReason(CTestModuleIf::EPanic, panicCode);
         iNormalExitReason = EFalse;
         }
     else
@@ -508,33 +693,6 @@
     return error;
     }
 
-// -----------------------------------------------------------------------------
-// CTmsAudioServicesTestClass::ExampleL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CTmsAudioServicesTestClass::ExampleL(CStifItemParser& aItem)
-    {
-    // Print to UI
-    _LIT( KTmsAudioServicesTestClass, "TmsAudioServicesTestClass" );
-    _LIT( KExample, "In Example" );
-    TestModuleIf().Printf(0, KTmsAudioServicesTestClass, KExample);
-    // Print to log file
-    iLog->Log(KExample);
-
-    TInt i = 0;
-    TPtrC string;
-    _LIT( KParam, "Param[%i]: %S" );
-    while (aItem.GetNextString(string) == KErrNone)
-        {
-        TestModuleIf().Printf(i, KTmsAudioServicesTestClass, KParam, i,
-                &string);
-        i++;
-        }
-    return KErrNone;
-    }
-
 TInt CTmsAudioServicesTestClass::CreateTmsFactory(CStifItemParser& /*aItem */)
     {
     RDebug::Printf("CTmsAudioServicesTestClass::CreateTmsFactory >> ENTER");
@@ -565,6 +723,14 @@
             case TMS_CALL_IP:
                 {
                 error = iFactory->CreateCall(calltype, iTmsCall, 0);
+                //#ifdef __TEST_CODE_COVERAGE__
+                guint ctxid;
+                if (iTmsCall)
+                    {
+                    iTmsCall->GetCallType();
+                    iTmsCall->GetCallContextId(ctxid);
+                    }
+                //#endif __TEST_CODE_COVERAGE__
                 iLog->Log(_L("CTmsAudioServicesTestClass::CreateCall, error [%d]"), error);
                 }
                 break;
@@ -672,10 +838,25 @@
             case TMS_BUFFER_MEMORY:
                 {
                 error = iFactory->CreateBuffer(buffertype, size, iTmsBuffer);
+                //#ifdef __TEST_CODE_COVERAGE__
+                if (iTmsBuffer)
+                    {
+                    guint bufsize;
+                    iTmsBuffer->GetType(buffertype);
+                    iTmsBuffer->GetDataSize(bufsize);
+                    iTmsBuffer->SetDataSize(bufsize);
+                    guint8* pbuf(NULL);
+                    iTmsBuffer->GetDataPtr(pbuf);
+                    guint64 ts(0);
+                    iTmsBuffer->GetTimeStamp(ts);
+                    iTmsBuffer->SetTimeStamp(ts);
+                    //iFactory->DeleteBuffer(tmsbuffer);
+                    }
+                //#endif //__TEST_CODE_COVERAGE__
                 }
                 break;
-            default:
-                error = KErrNotSupported;
+            default: //covering failure case for coverage
+                error = iFactory->CreateBuffer(buffertype, size, iTmsBuffer);
                 break;
             }
         }
@@ -1411,6 +1592,7 @@
     FTRACE(FPrint(_L("CTmsAudioServicesTestClass::Close")));
     iLog->Log(_L("CTmsAudioServicesTestClass::Close"));
     TInt error = KErrNone;
+    iLoopPlay = EFalse;
 
     TPtrC closeType;
     error = aItem.GetNextString(closeType);
@@ -1456,17 +1638,16 @@
     error = aItem.GetNextString(startType);
     if (error == KErrNone)
         {
+        iLoopCounter = 0;
+
         if (startType == KTagUplink)
             {
             if ((iUpLinkStatus == INITIALIZED) || (iUpLinkStatus == PAUSED))
                 {
                 iTmsUplink->Start(2);
-
-                if (iUpLinkStatus == INITIALIZED)
-                    {
-                    AddExpectedEvent(EEmptyBuffer, KMediumTimeout);
-                    }
-                else
+                iTmsUplink->GetStreamId();
+
+                if (iUpLinkStatus == PAUSED)
                     {
                     AddExpectedEvent(EStreamStarted, KMediumTimeout);
                     }
@@ -1484,11 +1665,9 @@
             if ((iDnLinkStatus == INITIALIZED) || (iDnLinkStatus == PAUSED))
                 {
                 iTmsDnlink->Start(2);
-                if (iDnLinkStatus == INITIALIZED)
-                    {
-                    AddExpectedEvent(EFillBuffer, KMediumTimeout);
-                    }
-                else
+                iTmsDnlink->GetStreamId();
+
+                if (iDnLinkStatus == PAUSED)
                     {
                     AddExpectedEvent(EStreamStarted, KMediumTimeout);
                     }
@@ -1622,8 +1801,12 @@
                 iMaxGain);
         RDebug::Printf("[TMS STIF] GAIN, GetMaxLevel Level [%d] Ret Err [%d]", iMaxGain, ret);
         RDebug::Printf("[TMS STIF] GAIN, SetLevel to [%d]", iMaxGain);
-        ret = static_cast<TMSGainEffect*>(iTmsUplinkEffect)->SetLevel(iMaxGain);
+        ret = static_cast<TMSGainEffect*> (iTmsUplinkEffect)->SetLevel(
+                iMaxGain);
         RDebug::Printf("[TMS STIF] GAIN, SetLevel ret [%d]", ret);
+
+        AddExpectedEvent(EStreamGainChange, KMediumTimeout);
+
         iLog->Log(_L("SetMaxGain: %d"), iMaxGain);
         RDebug::Printf("[TMS STIF] GAIN, GetLevel");
         ret = static_cast<TMSGainEffect*> (iTmsUplinkEffect)->GetLevel(iGain);
@@ -1636,6 +1819,9 @@
 
         static_cast<TMSGainEffect*> (iTmsUplinkEffect)->SetLevel(0);
         iLog->Log(_L("MuteMic"));
+
+        AddExpectedEvent(EStreamGainChange, KMediumTimeout);
+
         static_cast<TMSGainEffect*> (iTmsUplinkEffect)->GetLevel(iGain);
 
         if (iGain != 0)
@@ -1655,6 +1841,9 @@
                 iMaxGain);
         RDebug::Printf("[TMS STIF] GLOBAL GAIN, SetLevel ret [%d]", ret);
         iLog->Log(_L("SetGlobalMaxGain: %d"), iMaxGain);
+
+        AddExpectedEvent(EGlobalGainChange, KMediumTimeout);
+
         RDebug::Printf("[TMS STIF] GLOBAL GAIN, GetLevel");
         ret = static_cast<TMSGlobalGainEffect*>(iGlobalGain)->GetLevel(iGain);
         RDebug::Printf("[TMS STIF] GLOBAL GAIN, Exp Level [%d] Ret Level [%d] Ret Err [%d]", iMaxGain, iGain, ret);
@@ -1666,6 +1855,9 @@
 
         static_cast<TMSGlobalGainEffect*> (iGlobalGain)->SetLevel(0);
         iLog->Log(_L("MuteMic"));
+
+        AddExpectedEvent(EGlobalGainChange, KMediumTimeout);
+
         static_cast<TMSGlobalGainEffect*> (iGlobalGain)->GetLevel(iGain);
 
         if (iGain != 0)
@@ -1698,6 +1890,9 @@
         RDebug::Printf("[TMS STIF] Volume, SetLevel to MaxLevel [%d]", iMaxVolume);
         ret = static_cast<TMSVolumeEffect*> (iTmsDnlinkEffect)->SetLevel(
                 iMaxVolume);
+
+        AddExpectedEvent(EStreamVolChange, KMediumTimeout);
+
         RDebug::Printf("[TMS STIF] SetLevel Ret Error [%d]", ret);
         iLog->Log(_L("SetMaxVolume: %d"), iMaxVolume);
         RDebug::Printf("[TMS STIF] GetLevel");
@@ -1713,6 +1908,9 @@
         RDebug::Printf("[TMS STIF] Volume, SetLevel to 0 ");
         ret = static_cast<TMSVolumeEffect*> (iTmsDnlinkEffect)->SetLevel(0);
         RDebug::Printf("[TMS STIF] SetLevel Ret Error [%d]", ret);
+
+        AddExpectedEvent(EStreamVolChange, KMediumTimeout);
+
         iLog->Log(_L("Mute Volume"));
         ret = static_cast<TMSVolumeEffect*> (iTmsDnlinkEffect)->GetLevel(
                 iVolume);
@@ -1735,6 +1933,9 @@
         RDebug::Printf("[TMS STIF] GLOBAL_VOL, SetLevel to [%d]", iMaxVolume);
         ret = static_cast<TMSGlobalVolEffect*> (iGlobalVol)->SetLevel(
                 iMaxVolume);
+
+        AddExpectedEvent(EGlobalVolChange, KMediumTimeout);
+
         RDebug::Printf("[TMS STIF] SetLevel Ret Error [%d]", ret);
         iLog->Log(_L("SetMaxGlobalVolume: %d"), iMaxVolume);
         RDebug::Printf("[TMS STIF] GLOBAL_VOL,GetLevel");
@@ -1749,6 +1950,9 @@
 
         static_cast<TMSGlobalVolEffect*> (iGlobalVol)->SetLevel(0);
         iLog->Log(_L("Mute Global Volume"));
+
+        AddExpectedEvent(EGlobalVolChange, KMediumTimeout);
+
         static_cast<TMSGlobalVolEffect*> (iGlobalVol)->GetLevel(iVolume);
 
         if (iVolume != 0)
@@ -2128,7 +2332,7 @@
 
     if (iTmsGlobalRouting)
         {
-        error = iTmsGlobalRouting ->GetAvailableOutputs(iAvailableoutputs);
+        error = iTmsGlobalRouting->GetAvailableOutputs(iAvailableoutputs);
 
         if (error == KErrNone)
             {
@@ -2188,7 +2392,8 @@
             {
             if (iBitratesVector.size() > 0)
                 {
-                std::vector<guint>::iterator iBitrate = iBitratesVector.begin();
+                std::vector<guint>::iterator iBitrate =
+                        iBitratesVector.begin();
                 error = iTmsFormatUp -> SetBitRate(*iBitrate);
                 iLog->Log(_L("BR set %d"), *iBitrate);
                 }
@@ -2593,6 +2798,16 @@
         {
         error = iTmsDnlink->AddSource(iTmsClientSource);
         }
+//#ifdef __TEST_CODE_COVERAGE__  //Features not supported
+    TMSSourceType st;
+    static_cast<TMSClientSource*> (iTmsClientSource)->GetType(st);
+    gboolean enqueue(false);
+    static_cast<TMSClientSource*> (iTmsClientSource)->GetEnqueueMode(enqueue);
+    static_cast<TMSClientSource*> (iTmsClientSource)->ProcessBuffer(NULL);
+    static_cast<TMSClientSource*> (iTmsClientSource)->SetEnqueueMode(FALSE);
+    static_cast<TMSClientSource*> (iTmsClientSource)->Flush();
+//#endif //__TEST_CODE_COVERAGE__
+
     iLog->Log(_L("CTmsAudioServicesTestClass::AddClientSrcToDnlStream Error [%d]"), error);
     return error;
     }
@@ -2696,7 +2911,7 @@
     TInt error = KErrNone;
     if (iTmsUplink && iTmsClientSink)
         {
-        //static_cast<TMSClientSink*>(iTmsSink)->AddObserver(*this, NULL);
+        //static_cast<TMSClientSink*>(iTmsClientSink)->AddObserver(*this, NULL);
         error = iTmsUplink->AddSink(iTmsClientSink);
         }
     return error;
@@ -3152,6 +3367,24 @@
     return error;
     }
 
+TInt CTmsAudioServicesTestClass::CreateVideoRingTonePlayer(
+        CStifItemParser& /*aItem */)
+    {
+    //Just for coverage feature not supported yet.
+    FTRACE(FPrint(_L("CTmsAudioServicesTestClass::CreateVideoRingTonePlayer")));
+    iLog->Log(_L("CTmsAudioServicesTestClass::CreateVideoRingTonePlayer"));
+    TInt error = TMS_RESULT_SUCCESS;
+    if (iFactory)
+        {
+        RWindow* window(NULL);
+        gint scrid;
+        error = iFactory->CreateRingTonePlayer(iRingTonePlayer, *window,
+                scrid);
+        }
+    iLog->Log(_L("CTmsAudioServicesTestClass::CreateVideoRingTonePlayer Error [%d]"), error);
+    return error;
+    }
+
 TInt CTmsAudioServicesTestClass::InitRingTonePlayer(CStifItemParser& aItem)
     {
     FTRACE(FPrint(_L("CTmsAudioServicesTestClass::InitRingTonePlayer")));
@@ -3169,7 +3402,7 @@
             }
         else if (StreamType == KTagRTFile)
             {
-            TBuf<sizeof(KTestFile3)> buf(KTestFile3);
+            TBuf<sizeof(KTestFile1)> buf(KTestFile1);
             iRTStr = g_string_new_len((gchar*) buf.Ptr(), buf.Length() * 2);
             error = iRingTonePlayer->Init(TMS_RINGTONE_FILE, iRTStr);
             g_string_free(iRTStr, TRUE);
@@ -3413,6 +3646,7 @@
         {
         error = iInbandTonePlayer->Stop();
         RemoveExpectedEvent(EInbToneStarted);
+        AddExpectedEvent(EInbToneStopped, KShortTimeout);
         }
     iLog->Log(_L("CTmsAudioServicesTestClass::StopInbandTone Error [%d]"), error);
     return error;
@@ -3433,39 +3667,75 @@
     }
 
 // ----------------------------------------------------------------------------
+// CVoIPTestEngine::SetLoopPlay
+//
+// ----------------------------------------------------------------------------
+//
+TInt CTmsAudioServicesTestClass::SetLoopPlay(CStifItemParser& /*aItem*/)
+    {
+    iLog->Log(_L("CTmsAudioServicesTestClass::SetLoopPlay"));
+    iLoopPlay = ETrue;
+    return 0;
+    }
+
+// ----------------------------------------------------------------------------
 // CTmsTestEngine::DoLoopback
 //
 // ----------------------------------------------------------------------------
 //
 void CTmsAudioServicesTestClass::DoLoopback()
     {
-    iLog->Log(_L("CTmsAudioServicesTestClass::DoLoopback"));
-
-    if (iPlayBufReady && iRecBufReady)
+    //iLog->Log(_L("CTmsAudioServicesTestClass::DoLoopback"));
+
+    if (!iLoopPlay)
         {
-        iLog->Log(_L("Both uplink and downlink are ready"));
-        guint8* srcptr(0);
-        guint8* desptr(0);
-        guint srcsize(0);
-        guint dessize(0);
-
-        iPlayBuf->GetDataPtr(desptr);
-        iPlayBuf->GetDataSize(dessize);
-
-        iRecBuf->GetDataPtr(srcptr);
-        iRecBuf->GetDataSize(srcsize);
-
-        Mem::Copy(desptr, srcptr, srcsize);
-
-        static_cast<TMSClientSource*> (iTmsClientSource)->BufferFilled(
-                *iPlayBuf);
-        static_cast<TMSClientSink*> (iTmsClientSink)->BufferProcessed(iRecBuf);
-
-        iPlayBufReady = EFalse; // buf filled, ready for FillBuffer
-        iRecBufReady = EFalse;  // buf consumed, ready for EmptyBuffer
+        if (iPlayBufReady)
+            {
+            // Just keep D/S NULL playback going
+            iPlayBufReady = EFalse;
+            guint8* desptr(0);
+            iPlayBuf->GetDataPtr(desptr);
+            TPtr8 p(desptr, 4);
+            p.Copy(_L("0000"));
+            iPlayBuf->SetDataSize(4);
+            static_cast<TMSClientSource*> (iTmsClientSource)->BufferFilled(
+                    *iPlayBuf);
+            iLoopCounter++; //speed up count for single stream
+            }
+        else if (iRecBufReady)
+            {
+            // Just keep recording going
+            iRecBufReady = EFalse;
+            static_cast<TMSClientSink*> (iTmsClientSink)->BufferProcessed(
+                    iRecBuf);
+            iLoopCounter++; //speed up count for single stream
+            }
         }
-
-    iLog->Log(_L("CTmsAudioServicesTestClass::DoLoopback END"));
+    else
+        {
+        if (iPlayBufReady && iRecBufReady)
+            {
+            iPlayBufReady = EFalse;
+            iRecBufReady = EFalse;
+            guint8* srcptr(0);
+            guint8* desptr(0);
+            guint srcsize(0);
+            guint dessize(0);
+            iPlayBuf->GetDataPtr(desptr);
+            iPlayBuf->GetDataSize(dessize);
+            iRecBuf->GetDataPtr(srcptr);
+            iRecBuf->GetDataSize(srcsize);
+            Mem::Copy(desptr, srcptr, srcsize);
+            static_cast<TMSClientSink*> (iTmsClientSink)->BufferProcessed(
+                    iRecBuf);
+            iPlayBuf->SetDataSize(srcsize);
+            static_cast<TMSClientSource*> (iTmsClientSource)->BufferFilled(
+                    *iPlayBuf);
+            }
+        }
+
+    iLoopCounter++;
+    //iLog->Log(_L("CTmsAudioServicesTestClass::DoLoopback END"));
     }
 
 TInt CTmsAudioServicesTestClass::ConfigEncAudDevice(CStifItemParser& /*aItem*/)
@@ -3476,6 +3746,20 @@
     return error;
     }
 
+TInt CTmsAudioServicesTestClass::TestRTPSession(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CTmsAudioServicesTestClass::TestRTPSession")));
+    TInt error = KErrNone;
+    //Just for CTC coverage not supported yet.
+    if (iFactory)
+        {
+        TMSRTPSession* rtpsession(NULL);
+        error = iFactory->CreateRTPSession(rtpsession, 0, 0);
+        iFactory->DeleteRTPSession(rtpsession);
+        }
+    return error;
+    }
+
 // ----------------------------------------------------------------------------
 // CTmsAudioServicesTestClass::DisplayDevice
 //
@@ -3513,3 +3797,308 @@
             break;
         }
     }
+
+// Coverage tests to ensure there are no null pointer panics
+
+TInt CTmsAudioServicesTestClass::CreateStreamTest(CStifItemParser& /*aItem*/)
+    {
+    TMSStreamTest stream = TMSStreamTest();
+    stream.AddObserver(*this, NULL);
+    stream.RemoveObserver(*this);
+    stream.Init();
+    stream.AddEffect(NULL);
+    stream.RemoveEffect(NULL);
+    stream.AddSink(NULL);
+    stream.RemoveSink(NULL);
+    stream.AddSource(NULL);
+    stream.RemoveSource(NULL);
+    stream.GetState();
+    stream.GetStreamId();
+    stream.GetStreamType();
+    stream.Pause();
+    stream.Deinit();
+    stream.Start();
+    stream.Stop();
+    stream.SetFormat(NULL);
+    stream.ResetFormat(NULL);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateCallTest(CStifItemParser& /*aItem*/)
+    {
+    TMSCallTest call = TMSCallTest();
+    TMSStream* strm(NULL);
+
+    call.CreateStream(1, strm);
+    guint contextId;
+    call.GetCallContextId(contextId);
+    call.GetCallType();
+    call.DeleteStream(strm);
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateDTMFTest(CStifItemParser& /*aItem*/)
+    {
+    TMSDTMFTest dtmf = TMSDTMFTest();
+
+    dtmf.AddObserver(*this, NULL);
+    dtmf.RemoveObserver(*this);
+    dtmf.SetTone(NULL);
+    dtmf.Start();
+    dtmf.Stop();
+    dtmf.ContinueDTMFStringSending(FALSE);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateInbandToneTest(CStifItemParser& /*aItem*/)
+    {
+    TMSInbandToneTest inband = TMSInbandToneTest();
+
+    inband.AddObserver(*this, NULL);
+    inband.RemoveObserver(*this);
+    inband.Start(TMS_INBAND_NO_SEQUENCE);
+    inband.Stop();
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateRingToneTest(CStifItemParser& /*aItem*/)
+    {
+    TMSRingToneTest ringtone = TMSRingToneTest();
+
+    ringtone.AddObserver(*this, NULL);
+    ringtone.RemoveObserver(*this);
+    ringtone.Init(1, NULL, NULL);
+    ringtone.Mute();
+    ringtone.Pause();
+    ringtone.Play();
+    ringtone.Stop();
+    ringtone.Deinit();
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateClientSinkTest(CStifItemParser& /*aItem*/)
+    {
+    TMSClientSinkTest clientsink = TMSClientSinkTest();
+
+    clientsink.AddObserver(*this, NULL);
+    clientsink.RemoveObserver(*this);
+    TMSSinkType snktype;
+    clientsink.GetType(snktype);
+    TMSBuffer* tmsbuffer(NULL);
+    clientsink.BufferProcessed(tmsbuffer);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateClientSourceTest(CStifItemParser& /*aItem*/)
+    {
+    TMSClientSourceTest clientsource = TMSClientSourceTest();
+
+    clientsource.AddObserver(*this, NULL);
+    clientsource.RemoveObserver(*this);
+    clientsource.Flush();
+    gboolean enq;
+    clientsource.GetEnqueueMode(enq);
+    TMSSourceType srctype;
+    clientsource.GetType(srctype);
+    TMSBuffer* tmsbuffer(NULL);
+    clientsource.ProcessBuffer(tmsbuffer);
+    clientsource.SetEnqueueMode(FALSE);
+    clientsource.BufferFilled(*tmsbuffer);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateSinksTest(CStifItemParser& /*aItem*/)
+    {
+    TMSModemSinkTest modemsink = TMSModemSinkTest();
+
+    TMSSinkType sinktype;
+    modemsink.GetType(sinktype);
+
+    TMSSpeakerSinkTest speaker = TMSSpeakerSinkTest();
+    speaker.GetType(sinktype);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateSourcesTest(CStifItemParser& /*aItem*/)
+    {
+    TMSModemSourceTest modemsource = TMSModemSourceTest();
+
+    TMSSourceType sourcetype;
+    modemsource.GetType(sourcetype);
+
+    TMSMicSourceTest micsource = TMSMicSourceTest();
+    micsource.GetType(sourcetype);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateGlobalVolEffectTest(CStifItemParser& /*aItem*/)
+    {
+    TMSGlobalVolTest globalvol = TMSGlobalVolTest();
+
+    globalvol.AddObserver(*this, NULL);
+    globalvol.RemoveObserver(*this);
+    TMSEffectType effecttype;
+    globalvol.GetType(effecttype);
+    guint level(0);
+    globalvol.GetLevel(level);
+    globalvol.GetMaxLevel(level);
+    globalvol.SetLevel(level);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateGlobalGainEffectTest(CStifItemParser& /*aItem*/)
+    {
+    TMSGlobalGainTest globalgain = TMSGlobalGainTest();
+
+    globalgain.AddObserver(*this, NULL);
+    globalgain.RemoveObserver(*this);
+    TMSEffectType effecttype;
+    globalgain.GetType(effecttype);
+    guint level(0);
+    globalgain.GetLevel(level);
+    globalgain.GetMaxLevel(level);
+    globalgain.SetLevel(level);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateVolumeEffectTest(CStifItemParser& /*aItem*/)
+    {
+    TMSVolumeEffectTest vol = TMSVolumeEffectTest();
+
+    vol.AddObserver(*this, NULL);
+    vol.RemoveObserver(*this);
+    TMSEffectType effecttype;
+    vol.GetType(effecttype);
+    guint level(0);
+    vol.GetLevel(level);
+    vol.GetMaxLevel(level);
+    vol.SetLevel(level);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateGainEffectTest(CStifItemParser& /*aItem*/)
+    {
+    TMSGainEffectTest gain = TMSGainEffectTest();
+
+    gain.AddObserver(*this, NULL);
+    gain.RemoveObserver(*this);
+    TMSEffectType effecttype;
+    gain.GetType(effecttype);
+    guint level(0);
+    gain.GetLevel(level);
+    gain.GetMaxLevel(level);
+    gain.SetLevel(level);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateGlobalRoutingTest(CStifItemParser& /*aItem*/)
+    {
+    TMSGlobalRoutingTest routing = TMSGlobalRoutingTest();
+
+    routing.AddObserver(*this, NULL);
+    routing.RemoveObserver(*this);
+    OutputVector outputvector;
+    routing.GetAvailableOutputs(outputvector);
+    TMSAudioOutput output;
+    routing.GetOutput(output);
+    routing.GetPreviousOutput(output);
+    routing.SetOutput(output);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateFormatsTest(CStifItemParser& /*aItem*/)
+    {
+    TMSG711Test g711 = TMSG711Test();
+    guint bitrate;
+    g711.GetBitRate(bitrate);
+    gboolean cng;
+    g711.GetCNG(cng);
+    TMSG711CodecMode mode;
+    g711.GetMode(mode);
+    gboolean plc;
+    g711.GetPlc(plc);
+    BitRateVector brvector;
+    g711.GetSupportedBitRates(brvector);
+    TMSFormatType formattype;
+    g711.GetType(formattype);
+    gboolean vad;
+    g711.GetVADMode(vad);
+    g711.SetBitRate(0);
+    g711.SetCNG(cng);
+    g711.SetMode(mode);
+    g711.SetPlc(plc);
+    g711.SetVADMode(vad);
+
+    TMSG729Test g729 = TMSG729Test();
+    g729.GetBitRate(bitrate);
+    g729.GetSupportedBitRates(brvector);
+    g729.GetType(formattype);
+    g729.GetVADMode(vad);
+    g729.SetBitRate(0);
+    g729.SetVADMode(vad);
+
+    TMSILBCTest ilbc = TMSILBCTest();
+    ilbc.GetBitRate(bitrate);
+    ilbc.GetCNG(cng);
+    TMSILBCCodecMode mod;
+    ilbc.GetMode(mod);
+    ilbc.GetSupportedBitRates(brvector);
+    ilbc.GetType(formattype);
+    ilbc.GetVADMode(vad);
+    ilbc.SetBitRate(0);
+    ilbc.SetCNG(cng);
+    ilbc.SetMode(mod);
+    ilbc.SetVADMode(vad);
+
+    return KErrNone;
+    }
+
+TInt CTmsAudioServicesTestClass::CreateStreamFailTest(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CTmsAudioServicesTestClass::CreateStreamFailTest")));
+    iLog->Log(_L("CTmsAudioServicesTestClass::CreateStreamFailTest"));
+    TInt error = KErrNone;
+
+    TMSStreamTest stream = TMSStreamTest();
+    TMSStream *stm = &stream;
+    if (iTmsCall)
+        {
+        error = iTmsCall->CreateStream(TMS_STREAM_DOWNLINK, stm);
+        }
+
+    iLog->Log(_L("CTmsAudioServicesTestClass::CreateStreamFailTest Error [%d]"), error);
+    return error;
+    }
+
+TInt CTmsAudioServicesTestClass::TerminateServer(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CTmsAudioServicesTestClass::TerminateServer")));
+    iLog->Log(_L("CTmsAudioServicesTestClass::TerminateServer"));
+    TInt error = KErrNone;
+
+    iProxy = new TMSProxy();
+    if (iProxy)
+        {
+        _LIT(KTMSServerName, "!TmsServer");
+        iProxy->Connect(KTMSServerName);
+        const TInt KTMSTermSrv = 37;
+        iProxy->SendRequest(KTMSTermSrv);
+        }
+
+    iLog->Log(_L("CTmsAudioServicesTestClass::TerminateServer Error [%d]"), error);
+    return error;
+    }
+
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/TmsAudioServicesTestClass/src/TmsAudioServicesTestClassBlocksCallbacks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -19,11 +19,15 @@
 #include "TmsAudioServicesTestClass.h"
 #include "debug.h"
 
+// CONSTANTS
+const TUint KLoopCount = 1000;
+
+//From TMSStreamObserver
 void CTmsAudioServicesTestClass::TMSStreamEvent(const TMSStream& stream,
         TMSSignalEvent event)
     {
     iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::TMSStreamEvent"));
-    switch (const_cast<TMSStream&>(stream).GetStreamType())
+    switch (const_cast<TMSStream&> (stream).GetStreamType())
         {
         case TMS_STREAM_UPLINK:
             {
@@ -110,34 +114,44 @@
 //From TMSClientSourceObserver
 void CTmsAudioServicesTestClass::FillBuffer(TMSBuffer& buffer)
     {
-    iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::FillBuffer"));
-    ProcessEvent(EFillBuffer, KErrNone);
-    iPlayBufReady = ETrue;
-    iPlayBuf = &buffer;
-    if (iDnLinkStatus == STARTED)
+    //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::FillBuffer"));
+
+    // Note: Playback will continue until KLoopCount is reached or until timer
+    //       timeout occurs set in the .cfg file by SetTimeout.
+
+    if (iLoopCounter < KLoopCount)
         {
-        DoLoopback();
+        iPlayBufReady = ETrue;
+        iPlayBuf = &buffer;
+        if (iDnLinkStatus == STARTED)
+            {
+            DoLoopback();
+            }
         }
     }
 
 void CTmsAudioServicesTestClass::BufferProcessed(const TMSBuffer* /*buffer*/,
         gint /*reason*/)
     {
-    iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::BufferProcessed"));
+    //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::BufferProcessed"));
     }
 
 //From TMSClientSinkObserver
 void CTmsAudioServicesTestClass::ProcessBuffer(const TMSBuffer* buffer)
     {
-    iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::ProcessBuffer"));
-    ProcessEvent(EEmptyBuffer, KErrNone);
-    iRecBufReady = ETrue;
-    iRecBuf = const_cast<TMSBuffer*>(buffer);
-    if (iUpLinkStatus == STARTED)
+    //iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::ProcessBuffer"));
+
+    // Note: Recording will continue until KLoopCount is reached or until timer
+    //       timeout occurs set in the .cfg file by SetTimeout.
+
+    if (iLoopCounter < KLoopCount)
         {
-        // Process recorded buffer here.
-        DoLoopback();
-        //static_cast<TMSClientSink*>(iTmsSink)->BufferProcessed(iRecBuf);
+        iRecBufReady = ETrue;
+        iRecBuf = const_cast<TMSBuffer*> (buffer);
+        if (iUpLinkStatus == STARTED)
+            {
+            DoLoopback();
+            }
         }
     }
 
@@ -146,11 +160,20 @@
     {
     iLog->Log(_L("[tms cb]CTmsAudioServicesTestClass::EffectsEvent"));
     TMSEffectType effecttype;
-    const_cast<TMSEffect&>(tmseffect).GetType(effecttype);
+    const_cast<TMSEffect&> (tmseffect).GetType(effecttype);
     switch (effecttype)
         {
         case TMS_EFFECT_VOLUME:
+            ProcessEvent(EStreamVolChange, KErrNone);
+            break;
         case TMS_EFFECT_GAIN:
+            ProcessEvent(EStreamGainChange, KErrNone);
+            break;
+        case TMS_EFFECT_GLOBAL_VOL:
+            ProcessEvent(EGlobalVolChange, KErrNone);
+            break;
+        case TMS_EFFECT_GLOBAL_GAIN:
+            ProcessEvent(EGlobalGainChange, KErrNone);
             break;
         default:
             break;
@@ -236,11 +259,11 @@
     switch (event.type)
         {
         case TMS_EVENT_INBAND_TONE_STARTED:
-            //ProcessEvent(EInbToneStarted, KErrNone);
+            ProcessEvent(EInbToneStarted, KErrNone);
             iLog->Log(_L("Inband Tone Started"));
             break;
         case TMS_EVENT_INBAND_TONE_STOPPED:
-            //ProcessEvent(EInbToneStopped, KErrNone);
+            ProcessEvent(EInbToneStopped, KErrNone);
             iLog->Log(_L("Inband Tone Stopped"));
             break;
         default:
Binary file mmmw_plat/telephony_multimedia_service_api/tsrc/data/NokiaTest.aac has changed
--- a/mmmw_plat/telephony_multimedia_service_api/tsrc/init/TmsAudioServicesTestClass.ini	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/telephony_multimedia_service_api/tsrc/init/TmsAudioServicesTestClass.ini	Mon Oct 04 00:51:56 2010 +0300
@@ -1,4 +1,4 @@
 [general]
 logFileName TmsAudioServicesTestClass.log
-logPath c:\testing\Log\
+logPath f:\
 [general_end]
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/Conf/Emulator_test/VThumbTest.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,189 @@
+// _Unsupported_ Those API could be not implemented and return KErrNotSupported
+
+
+[Define]
+KErrNotFound -1
+KErrNotSupported -5
+KErrArgument -6
+KErrNotReady -18
+KErrAccessDenied -21
+KErrServerTerminated -15
+KErrNoMemory -4
+KErrCallbackErrorCode -2001
+KErrUnexpectedValue -2002
+KErrNotificationPending -2005
+KErrUnexpectedNotification -2006
+KErrTimeoutController -2007
+
+// No display mode 
+	ENone 0
+	// Monochrome display mode (1 bpp) 
+	EGray2  1
+	// Four grayscales display mode (2 bpp) 
+	EGray4  2
+	// 16 grayscales display mode (4 bpp) 
+	EGray16  3
+	// 256 grayscales display mode (8 bpp) 
+	EGray256  4
+	// Low colour EGA 16 colour display mode (4 bpp) 
+	EColor16  5
+	// 256 colour display mode (8 bpp) 
+	EColor256  6
+	// 64,000 colour display mode (16 bpp) 
+	EColor64K  7
+	// True colour display mode (24 bpp) 
+	EColor16M  8
+	// (Not an actual display mode used for moving buffers containing bitmaps) 
+	ERgb  9
+	// 4096 colour display (12 bpp). 
+	EColor4K  10
+	// True colour display mode (32 bpp, but top byte is unused and unspecified) 
+	EColor16MU  11
+	// Display mode with alpha (24bpp colour plus 8bpp alpha) 
+	EColor16MA  12
+	// Pre-multiplied Alpha display mode (24bpp color multiplied with the alpha channel value, plus 8bpp alpha) 
+	EColor16MAP  13
+	//Any new display mode should be insterted here!
+	//There might be up to 255 display modes, so value of the last
+	//inserted EColorXXX enum item should be less than 256 -
+	//BC reasons!
+	EColorLast  14
+
+[Enddefine]
+
+
+// 
+// TNE Test Cases
+// 
+
+[Test]
+id 101
+title 1. Test Thumb for 3gpv5 H263 176*144 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 102
+title 2. Test Thumb for 3gpv5 H263 176*144 file by Newl File Handle
+create VThumbTest tne
+tne TNENewLFileHandle c:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 103
+title 3. Test Thumb for 3gpv5 H263 176*144 file by NewLC File Name
+create VThumbTest tne
+tne TNENewLCFileName c:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 104
+title 4. Test Thumb for 3gpv5 H263 176*144 file by NewLC File Handle
+create VThumbTest tne
+tne TNENewLCFileHandle c:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 105
+title 5. Test Thumb for 3gpv6 H263 352*288 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\3GPPv6_H263_352x288.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 106
+title 6. Test Thumb for 3gpv6 H264 352*288 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\3GPPv6_H264_352x288.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 107
+title 7. Test Thumb for ODD FRAME SIZE - 3gpv6 H264 352*288 file by  Newl File Name 
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\3GPPv6_H264_352x288.3gp
+waittestclass tne
+tne GetThumb 1 111 83 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 108
+title 8. Test Thumb for 3gpv6 MPEG4SP 352*288 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\3GPPv6_MPEG4SP_352x288.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 109
+title 9. Test Thumb for Real Video 10 640*480 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName c:\testing\data\TNETestData\RV10_640x480.rm
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 110
+title 10. Test Thumb for Real Video 9 352*288 file by  Newl File Handle
+create VThumbTest tne
+tne TNENewLFileHandle c:\testing\data\TNETestData\RV9_352x288.rm
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 111
+title 11. Test Thumb for WMV file by  NewlC File Handle
+create VThumbTest tne
+tne TNENewLCFileHandle c:\testing\data\TNETestData\camera.wmv
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/Conf/VThumbTest.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,107 @@
+// _Unsupported_ Those API could be not implemented and return KErrNotSupported
+
+
+[Define]
+KErrNotFound -1
+KErrNotSupported -5
+KErrArgument -6
+KErrNotReady -18
+KErrAccessDenied -21
+KErrServerTerminated -15
+KErrNoMemory -4
+KErrCallbackErrorCode -2001
+KErrUnexpectedValue -2002
+KErrNotificationPending -2005
+KErrUnexpectedNotification -2006
+KErrTimeoutController -2007
+
+// No display mode 
+	ENone 0
+	// Monochrome display mode (1 bpp) 
+	EGray2  1
+	// Four grayscales display mode (2 bpp) 
+	EGray4  2
+	// 16 grayscales display mode (4 bpp) 
+	EGray16  3
+	// 256 grayscales display mode (8 bpp) 
+	EGray256  4
+	// Low colour EGA 16 colour display mode (4 bpp) 
+	EColor16  5
+	// 256 colour display mode (8 bpp) 
+	EColor256  6
+	// 64,000 colour display mode (16 bpp) 
+	EColor64K  7
+	// True colour display mode (24 bpp) 
+	EColor16M  8
+	// (Not an actual display mode used for moving buffers containing bitmaps) 
+	ERgb  9
+	// 4096 colour display (12 bpp). 
+	EColor4K  10
+	// True colour display mode (32 bpp, but top byte is unused and unspecified) 
+	EColor16MU  11
+	// Display mode with alpha (24bpp colour plus 8bpp alpha) 
+	EColor16MA  12
+	// Pre-multiplied Alpha display mode (24bpp color multiplied with the alpha channel value, plus 8bpp alpha) 
+	EColor16MAP  13
+	//Any new display mode should be insterted here!
+	//There might be up to 255 display modes, so value of the last
+	//inserted EColorXXX enum item should be less than 256 -
+	//BC reasons!
+	EColorLast  14
+
+[Enddefine]
+
+
+// 
+// TNE Test Cases
+// 
+
+
+[Test]
+id 101
+title 1. Test Thumb for 3gpv5 H263 176*144 file by  Newl File Name
+create VThumbTest tne
+tne TNENewLFileName e:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 102
+title 2. Test Thumb for 3gpv5 H263 176*144 file by Newl File Handle
+create VThumbTest tne
+tne TNENewLFileHandle e:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 103
+title 3. Test Thumb for 3gpv5 H263 176*144 file by NewLC File Name
+create VThumbTest tne
+tne TNENewLCFileName e:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
+[Test]
+id 104
+title 4. Test Thumb for 3gpv5 H263 176*144 file by NewLC File Handle
+create VThumbTest tne
+tne TNENewLCFileHandle e:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp
+waittestclass tne
+tne GetThumb 1 120 80 0 EColor16M 
+waittestclass tne
+delete tne
+pause 1000
+[Endtest]
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/bwins/VThumbTestu.def	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,3 @@
+EXPORTS
+	?LibEntryL@@YAPAVCScriptBase@@AAVCTestModuleIf@@@Z @ 1 NONAME ; class CScriptBase * LibEntryL(class CTestModuleIf &)
+
Binary file mmmw_plat/thumbnail_engine_api/tsrc/data/mmc/TNETestData/3GPPv5_H263_176x144.3gp has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/eabi/VThumbTestu.def	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,3 @@
+EXPORTS
+	_Z9LibEntryLR13CTestModuleIf @ 1 NONAME
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,46 @@
+/*
+* Copyright (c) 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"
+* 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:  API test automation for thumbnail engine
+*
+*/
+
+
+PRJ_PLATFORMS
+// specify the platforms your component needs to be built for here
+// defaults to WINS MARM so you can ignore this if you just build these
+DEFAULT
+
+PRJ_TESTEXPORTS
+// NOTE: If using ARS requirements all export operations should be done under this.
+// 'abld test export'
+
+PRJ_EXPORTS
+// Specify the source file followed by its destination here
+// copy will be used to copy the source file to its destination
+// If there's no destination then the source file will be copied
+// to the same name in /epoc32/include
+// Example: 
+/*
+/agnmodel/inc/AGMCOMON.H
+*/
+
+PRJ_TESTMMPFILES
+// NOTE: If using ARS requirements .mmp file operation should be done under this.
+// 'abld test build'
+//FMRadioEngineTestClass.mmp
+tnetest.mmp
+
+
+
+//  End of File
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/group/tnetest.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,44 @@
+/*
+* Copyright (c) 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"
+* 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:  API test automation for thumbnail engine
+*
+*/
+
+#include <platform_paths.hrh>
+
+TARGET          VThumbTest.dll
+TARGETTYPE      DLL
+CAPABILITY      CAP_GENERAL_DLL
+VENDORID        VID_DEFAULT
+
+DEFFILE         VThumbTest.def
+
+SOURCEPATH      ../src
+SOURCE          tnetest.cpp
+
+
+USERINCLUDE     ../inc
+
+MW_LAYER_SYSTEMINCLUDE
+
+LIBRARY         euser.lib ws32.lib hal.lib ecom.lib  estlib.lib flogger.lib
+LIBRARY         stiftestinterface.lib
+LIBRARY         tneengine.lib                     //Thumbnail Engine
+LIBRARY                 efsrv.lib                         //File server client
+LANG            SC
+
+UID             0x1000008D 0x101FB3E7
+
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/group/tnetest.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,70 @@
+;
+; Copyright (c) 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"
+; 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: Installation file for thumbnail engine STIF Test in Platform Security Environments
+;
+; 
+
+
+; Languages
+
+&EN
+
+
+
+; Package header
+
+#{"VThumbTest"},(0x101FB3E7), 1, 0, 0, TYPE=SA
+
+
+
+
+
+; Localised Vendor name
+
+%{"Nokia"}
+
+
+
+; Unique Vendor name
+
+:"Nokia"
+
+
+
+
+
+
+
+; Install files
+
+
+
+  
+
+"\epoc32\release\armv5\urel\VThumbTest.dll"   -"C:\Sys\Bin\VThumbTest.dll"
+"..\conf\VThumbTest.cfg" -"C:\TestFramework\VThumbTest.cfg"
+"..\init\TestFramework.ini" -"C:\TestFramework\TestFramework.ini"
+"..\data\mmc\TNETestData\3GPPv5_H263_176x144.3gp" -"E:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp"
+"..\init\log.txt" -"C:\logs\tne\log.txt"
+
+
+
+
+
+
+
+
+
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/inc/debug.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,44 @@
+/*
+* Copyright (c) 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"
+* 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:  API test automation for thumbnail engine
+*
+*/
+
+#ifndef DEBUG_H
+#define DEBUG_H
+
+//INCLUDES
+#include <f32file.h>
+#define FTRACE(a) {a;}
+
+/**
+* Declare the FPrint function
+* @since Series 60 2.7
+* @return none
+*/
+inline void FPrint(const TRefByValue<const TDesC> aFmt, ...)
+{
+    VA_LIST list;
+    VA_START(list,aFmt);
+    TInt tmpInt = VA_ARG(list, TInt);
+    TInt tmpInt2 = VA_ARG(list, TInt);
+    TInt tmpInt3 = VA_ARG(list, TInt);
+    VA_END(list);
+    #ifdef _DEBUG
+    RDebug::Print(aFmt, tmpInt, tmpInt2, tmpInt3);
+    #endif
+}
+#endif // DEBUG_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/inc/tnetest.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,186 @@
+/*
+* Copyright (c) 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"
+* 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:  API test automation for thumbnail engine
+*
+*/
+
+
+#ifndef TNETEST_H
+#define TNETEST_H
+
+//  INCLUDES
+#include <e32base.h>
+#include <e32std.h>
+#include <e32debug.h>
+#include <eikapp.h>
+#include <eikdoc.h>
+#include <w32std.H>
+#include <StifItemParser.h>
+#include <StifLogger.h>//logging in STIF
+#include <TestScripterInternal.h>
+#include <StifTestModule.h>
+#include <Stiftestinterface.h>
+#include <tnevideoclipinfo.h> // Thumbnail Main API
+// #include "TimeoutController.h"
+
+
+
+
+
+const TInt KErrTimeoutController = -2007;		// Unexpected notification
+_LIT(KTagId, " ");
+// FORWARD DECLARATIONS
+class CTneTestClass;
+
+
+// CLASS DECLARATION
+
+/**
+*  CTneTestClass test class for STIF Test Framework TestScripter.
+*
+*  @lib RadioUtilityTestClass.lib
+*  @since Series60_3_2
+*/
+NONSHARABLE_CLASS(CTneTestClass) : public CScriptBase, 
+										public MTNEVideoClipInfoObserver,
+                    public MTNEVideoClipThumbObserver
+                   // public MTimeoutObserver   later
+    {
+    public:  // Constructors and destructor
+
+     
+        static CTneTestClass* NewL( CTestModuleIf& aTestModuleIf );
+        
+       
+       
+
+        /**
+        * Destructor.
+        */
+        virtual ~CTneTestClass();
+
+
+    
+
+    public: // Functions from base classes
+
+        /**
+        * From CScriptBase Runs a script line.
+        * @since 3.2
+        * @param aItem Script line containing method name and parameters
+        * @return Symbian OS error code
+        */
+        virtual TInt RunMethodL( CStifItemParser& aItem );
+
+	    
+      
+      
+      // From MTimeoutObserver
+	    /**
+	    * @since 3.2
+	    * @param none
+	    * Review if all the expected events have ocurred once the time is over
+	    */
+	   // void HandleTimeout(TInt error);
+
+	    
+        
+   
+
+    private:
+
+        /**
+        * C++ default constructor.
+        */
+        CTneTestClass( CTestModuleIf& aTestModuleIf );
+
+        /**
+        * By default Symbian 2nd phase constructor is private.
+        */
+        void ConstructL();
+        
+       TInt	FindFileName(CStifItemParser& aItem) ;
+
+        // Prohibit copy constructor if not deriving from CBase.
+        // Prohibit assigment operator if not deriving from CBase.
+
+        //Timeout function
+        //later
+       // TInt SetTimeout( CStifItemParser& aItem );
+
+//logic to open TNE instance 
+
+// NewL File name 
+		  TInt TNENewLFileNameL(CStifItemParser& aItem);
+// Newl File handle		  
+		  TInt TNENewLFileHandleL(CStifItemParser& aItem);
+// NewLC File name      
+      TInt TNENewLCFileNameL(CStifItemParser& aItem);
+// NewLC File handle        
+      TInt TNENewLCFileHandleL(CStifItemParser& aItem);
+
+      // Thumbnail Specific from TneVideoClipInfo
+      
+      TInt CTneTestClass::GetThumb( CStifItemParser& aItem) ;
+	   
+	    // from TNEVideoClipInfoObserver
+	    
+	     void NotifyVideoClipInfoReady( CTNEVideoClipInfo& aInfo, TInt aError );
+	    
+	    void NotifyVideoClipThumbCompleted( CTNEVideoClipInfo& aInfo, TInt aError, CFbsBitmap* aThumb );
+/*
+		TInt StartMonitor( CStifItemParser& aItem );
+		TInt StopMonitor( CStifItemParser& aItem );
+        TInt IsRadioOn( CStifItemParser& aItem );
+		TInt CreateFactory( CStifItemParser& aItem );
+		TInt CreateUtility( CStifItemParser& aItem );
+		
+	*/
+
+
+    
+
+    private:    // Data
+        
+    // reference to TestModuleIf
+    CTestModuleIf& iTestModuleIf;
+    //CStifLogger* iLog;
+    
+    // Active object with a timer to timeout the test case   later
+  //  CSimpleTimeout * iTimeoutController;
+
+    // Indicates if the test case use a normal exit reason
+    TBool iNormalExitReason;
+
+   //Thumbnail Engine
+        CTNEVideoClipInfo* iTNEVideoClipInfo;
+    /* I think we can depend on user input for this 
+    
+        TInt iThumbnailFrameIndex;
+        TSize iThumbnailSize;
+        TDisplayMode iDisplayMode;
+        TBool iEnhance;
+    */
+       TFileName iFileName;
+      
+       RWsSession 			       iWS;
+       RFs                    iFs;       
+        
+
+  
+    };
+
+#endif
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/init/TestFramework.ini	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,218 @@
+#
+# This is STIF initialization file
+# Comment lines start with '#'-character.
+# See STIF TestFramework users guide.doc for instructions
+
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+# Set following test engine settings:
+#	- Set Test Reporting mode. TestReportMode's possible values are:
+#		+ 'Summary': Summary of the tested test cases.
+#		+ 'Environment': Hardware and software info.
+#		+ 'TestCases': Test case report.
+#		+ 'FullReport': Set of all above ones.
+#		+ Example 'TestReportMode= Summary TestCases'
+#
+# 	- CreateTestReport setting controls report creation mode
+#		+ YES, Test report will created.
+#		+ NO, No Test report.
+#
+# 	- File path indicates the base path of the test report.
+# 	- File name indicates the name of the test report.
+#
+# 	- File format indicates the type of the test report.
+#		+ TXT, Test report file will be txt type, for example 'TestReport.txt'.
+#		+ HTML, Test report will be html type, for example 'TestReport.html'.
+#   + XML, Test report will be xml type, for example 'TestReport.xml'.
+#          Note, that xml format is available only when output is set to FILE.
+#
+# 	- File output indicates output source of the test report.
+#		+ FILE, Test report logging to file.
+#		+ RDEBUG, Test report logging to using rdebug.
+#
+# 	- File Creation Mode indicates test report overwriting if file exist.
+#		+ OVERWRITE, Overwrites if the Test report file exist.
+#		+ APPEND, Continue logging after the old Test report information if
+#                 report exist.
+# 	- Sets a device reset module's dll name(Reboot).
+#		+ If Nokia specific reset module is not available or it is not correct one
+#		  StifHWResetStub module may use as a template for user specific reset
+#		  module.
+# 	- Sets STIF test measurement disable options. e.g. pluging1 and pluging2 disablation
+#		DisableMeasurement= stifmeasurementplugin01 stifmeasurementplugin02
+#
+
+[Engine_Defaults]
+
+TestReportMode= FullReport    # Possible values are: 'Empty', 'Summary', 'Environment',
+                              #                      'TestCases' or 'FullReport'
+
+CreateTestReport= YES         # Possible values: YES or NO
+
+TestReportFilePath= C:\LOGS\TestFramework\
+TestReportFileName= TestReport_VThumbTest
+
+TestReportFormat= TXT         # Possible values: TXT, HTML or XML
+TestReportOutput= FILE        # Possible values: FILE or RDEBUG
+TestReportFileCreationMode= OVERWRITE # Possible values: OVERWRITE or APPEND
+
+DeviceResetDllName= StifResetForNokia.dll # e.g. 'StifHWResetStub.dll' for user specific reseting
+
+DisableMeasurement= stifmeasurementdisablenone  # Possible values are:
+              # 'stifmeasurementdisablenone', 'stifmeasurementdisableall'
+              # 'stifmeasurementplugin01', 'stifmeasurementplugin02',
+              # 'stifmeasurementplugin03', 'stifmeasurementplugin04',
+              # 'stifmeasurementplugin05' or 'stifbappeaprofiler'
+
+Timeout= 0                    # Default timeout value for each test case. In milliseconds
+#UITestingSupport= YES        # Possible values: YES or NO
+#SeparateProcesses= YES       # Possible values: YES or NO (default: NO)
+[End_Defaults]
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+
+
+
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+# Module configurations start
+# Modules are added between module tags
+# tags. Module name is specified after ModuleName= tag, like
+# ModuleName= XXXXXXXXX
+# Modules might have initialisation file, specified as
+# IniFile= c:\testframework\YYYYYY
+# Modules might have several configuration files, like
+# TestCaseFile= c:\testframework\NormalCases.txt
+# TestCaseFile= c:\testframework\SmokeCases.txt
+# TestCaseFile= c:\testframework\ManualCases.txt
+
+# (TestCaseFile is synonym for old term ConfigFile)
+
+# Following case specifies demo module settings. Demo module
+# does not read any settings from file, so tags 
+# IniFile and TestCaseFile are not used.
+# In the simplest case it is enough to specify only the
+# name of the test module when adding new test module
+
+[New_Module]
+ModuleName= testscripter
+TestCaseFile= c:\testframework\VThumbTest.cfg
+[End_Module]
+
+
+# Load testmoduleXXX, optionally with initialization file and/or test case files
+#[New_Module]
+#ModuleName= testmodulexxx
+
+#TestModuleXXX used initialization file
+#IniFile= c:\testframework\init.txt
+
+#TestModuleXXX used configuration file(s)
+#TestCaseFile= c:\testframework\testcases1.cfg
+#TestCaseFile= c:\testframework\testcases2.cfg
+#TestCaseFile= c:\testframework\manualtestcases.cfg
+
+#[End_Module]
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+
+
+
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+# Set STIF logging overwrite parameters for Logger.
+# 	Hardware and emulator environment logging path and styles can
+# 	be configured from here to overwrite the Logger's implemented values.
+#	
+#	Settings description:
+#	- Indicates option for creation log directory/directories. If log directory/directories
+#         is/are not created by user they will make by software.
+#		+ YES, Create log directory/directories if not allready exist.
+#		+ NO, Log directory/directories not created. Only created one is used.
+#
+#	- Overwrite emulator path setting.
+#		+ Example: If 'EmulatorBasePath= C:\LOGS\TestFramework\' and in code is defined 
+#		           Logger's path 'D:\\LOGS\\Module\\' with those definition the path
+#		           will be 'C:\LOGS\TestFramework\LOGS\Module\'
+#
+#	- Overwrite emulator's logging format.
+#		+ TXT, Log file(s) will be txt type(s), for example 'Module.txt'.
+#		+ HTML, Log file(s) will be html type(s), for example 'Module.html'.
+#
+#	- Overwrited emulator logging output source.
+#		+ FILE, Logging to file(s).
+#		+ RDEBUG, Logging to using rdebug(s).
+#
+#	- Overwrite hardware path setting (Same description as above in emulator path).
+#	- Overwrite hardware's logging format(Same description as above in emulator format).
+#	- Overwrite hardware's logging output source(Same description as above in emulator output).
+#
+#	- File Creation Mode indicates file overwriting if file exist.
+#		+ OVERWRITE, Overwrites if file(s) exist.
+#		+ APPEND, Continue logging after the old logging information if file(s) exist.
+#
+#	- Will thread id include to the log filename.
+#		+ YES, Thread id to log file(s) name, Example filename 'Module_b9.txt'.
+#		+ NO, No thread id to log file(s), Example filename 'Module.txt'.
+#
+#	- Will time stamps include the to log file.
+#		+ YES, Time stamp added to each line in log file(s). Time stamp is 
+#                 for example'12.Nov.2003 115958    LOGGING INFO'
+#		+ NO, No time stamp(s).
+#
+#	- Will line breaks include to the log file.
+#		+ YES, Each logging event includes line break and next log event is in own line.
+#		+ NO, No line break(s).
+#
+#	- Will event ranking include to the log file.
+#		+ YES, Event ranking number added to each line in log file(s). Ranking number
+#                 depends on environment's tics, for example(includes time stamp also)
+#                 '012   12.Nov.2003 115958    LOGGING INFO'
+#		+ NO, No event ranking.
+#
+#	- Will write log file in unicode format.
+#		+ YES, Log file will be written in unicode format
+#		+ NO, Log will be written as normal, not unicode, file.
+#
+
+[Logger_Defaults]
+
+#NOTE: If you want to set Logger using next setting(s) remove comment(s)'#'
+#NOTE: TestEngine and TestServer logging settings cannot change here
+
+#CreateLogDirectories= YES    # Possible values: YES or NO
+
+#EmulatorBasePath= C:\LOGS\TestFramework\
+#EmulatorFormat= HTML         # Possible values: TXT or HTML
+#EmulatorOutput= FILE         # Possible values: FILE or RDEBUG
+
+#HardwareBasePath= D:\LOGS\TestFramework\
+#HardwareFormat= HTML         # Possible values: TXT or HTML
+#HardwareOutput= FILE         # Possible values: FILE or RDEBUG
+
+#FileCreationMode= OVERWRITE  # Possible values: OVERWRITE or APPEND
+
+#ThreadIdToLogFile= YES       # Possible values: YES or NO
+#WithTimeStamp= YES           # Possible values: YES or NO
+#WithLineBreak= YES           # Possible values: YES or NO
+#WithEventRanking= YES        # Possible values: YES or NO
+
+#FileUnicode= YES             # Possible values: YES or NO
+#AddTestCaseTitle= YES        # Possible values: YES or NO
+[End_Logger_Defaults]
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+
+
+
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+# Set filters to be used by ConsoleUI.
+# 	If you want to use filter with ConsoleUI, simply remove comments
+# 	from section below and provide valid filter entries.
+#   Each filter line has to start with "filter= " keyword.
+#   Filter can contain special wildcard characters:
+#     *  which stands for none or any literal;
+#     ?  which stands for single character.
+#   Filters are not case-sensitive.
+
+#[Filters]
+#filter= *math*
+#filter= *radio*
+#[End_Filters]
+# -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
+
+# End of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/sis/SISXU.bat	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,21 @@
+rem Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+rem All rights reserved.
+rem This component and the accompanying materials are made available
+rem under the terms of the "Eclipse Public License v1.0"
+rem which accompanies this distribution, and is available
+rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+rem
+rem Initial Contributors:
+rem Nokia Corporation - initial contribution.
+rem
+rem Contributors:
+rem
+rem echo Description: script for sisx file creation for thumbnail engine STIF test
+rem
+
+
+rm *.SIS
+rm *.sis*
+makesis tnetest.pkg
+signsis -v tnetest.sis tnetest.sisx C:\keys\RDTest_02.der C:\keys\RDTest_02.key
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,72 @@
+;
+; Copyright (c) 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"
+; 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: Installation file for thumbnail engine STIF Test in Platform Security Environments
+;
+; 
+
+
+
+; Languages
+
+&EN
+
+
+
+; Package header
+
+#{"VThumbTest"},(0x101FB3E7), 1, 0, 0, TYPE=SA
+
+
+
+
+
+; Localised Vendor name
+
+%{"Nokia"}
+
+
+
+; Unique Vendor name
+
+:"Nokia"
+
+
+
+
+
+
+
+; Install files
+
+
+
+  
+
+"\epoc32\release\armv5\urel\VThumbTest.dll"   -"!:\Sys\Bin\VThumbTest.dll"
+"..\conf\VThumbTest.cfg" -"C:\TestFramework\VThumbTest.cfg"
+"..\data\mmc\TNETestData\3GPPv5_H263_176x144.3gp" -"E:\testing\data\TNETestData\3GPPv5_H263_176x144.3gp"
+"..\init\log.txt" -"C:\logs\tne\log.txt"
+
+
+  
+
+
+
+
+
+
+
+
+
+
Binary file mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.sis has changed
Binary file mmmw_plat/thumbnail_engine_api/tsrc/sis/tnetest.sisx has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/thumbnail_engine_api/tsrc/src/tnetest.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,469 @@
+/*
+* Copyright (c) 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"
+* 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:  API test automation for thumbnail engine
+*
+*/
+
+
+// INCLUDE FILES
+
+#include <gdi.h>
+#include "tnetest.h"
+#include <flogger.h>
+
+
+
+// PRINT macro
+#ifdef _DEBUG
+#include <e32svr.h>
+#define PRINT(x) RDebug::Print x
+#else
+#define PRINT(x)
+#endif
+
+//#ifdef _DEBUG
+#define ENABLE_S60_TNE_LOGGING 1
+//#endif
+
+//implementation
+#ifdef ENABLE_S60_TNE_LOGGING
+#define FLOG FileLog
+inline static void FileLog(TRefByValue<const TDesC16> aFmt,...)
+{
+    VA_LIST  args;
+    VA_START (args, aFmt);
+    RFileLogger::WriteFormat(_L("tne"), _L("S60tne.log"), 
+                        EFileLoggingModeAppend, aFmt, args);
+}
+
+#else // logging is disabled
+#define FLOG LogFNull
+inline static void LogFNull(TRefByValue<const TDesC16> aFmt,...){}
+
+#endif // enable logging
+
+
+
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// CRadioUtilityTestClass::CRadioUtilityTestClass
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+CTneTestClass::CTneTestClass( 
+    CTestModuleIf& aTestModuleIf ):
+        CScriptBase( aTestModuleIf ), 
+        iTestModuleIf(aTestModuleIf)
+    {    
+    }
+
+// -----------------------------------------------------------------------------
+// CTneTestClass::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -----------------------------------------------------------------------------
+//
+
+void CTneTestClass::ConstructL()
+    {
+    // intialize memeber variables 
+   //  iLog->Log(_L("CTneTestClass::ConstructL()in "));
+ 
+   
+    iTNEVideoClipInfo = NULL;
+	User::LeaveIfError(iWS.Connect());
+	User::LeaveIfError(iFs.Connect());
+
+
+    }
+
+
+// -----------------------------------------------------------------------------
+// CTneTestClass::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+CTneTestClass* CTneTestClass::NewL(CTestModuleIf& aTestModuleIf )
+    {
+   FLOG(_L("CTneTestClass::NewL in "));
+    CTneTestClass* self = new (ELeave) CTneTestClass( aTestModuleIf );
+    CleanupStack::PushL( self );
+    self->ConstructL();
+    CleanupStack::Pop();
+    return self;
+	FLOG(_L("CTneTestClass::NewL out "));
+    }
+    
+TInt CTneTestClass::FindFileName(CStifItemParser& aItem) 
+{
+   TPtrC string;
+   //TFileName aFileName;
+    TInt lRetVal = KErrNone;
+   aItem.SetParsingType( CStifItemParser::EQuoteStyleParsing );
+
+   lRetVal = aItem.GetNextString ( string );
+
+   if ( lRetVal != KErrNone )
+	 {
+    //   FLOG(_L("CHelixSTIFClient:: File name missing in config file "));
+       return lRetVal;
+	 }
+   else
+   {
+      iFileName.Copy(string);
+   }
+   
+   return lRetVal;
+
+}
+    
+    
+    
+// intialize thumbnail Newl FIle name
+TInt CTneTestClass::TNENewLFileNameL(CStifItemParser& aItem)
+{
+ FLOG(_L("CTneTestClass::TNENewLFileNameL in "));
+   TInt error = KErrNone;
+   
+   if ((error = FindFileName(aItem)) == KErrNone)
+    {  
+     FLOG(_L("CTneTestClass:Filename=%S"),&iFileName ); 
+      if( iTNEVideoClipInfo )
+            {
+            delete iTNEVideoClipInfo;
+            iTNEVideoClipInfo = NULL;
+            }
+      TRAPD( err,iTNEVideoClipInfo = CTNEVideoClipInfo::NewL( iFileName, *this ) ); 
+      error = err;
+       FLOG(_L("TNENewLFileNameL error returned = %d"),error ); 
+      return error;
+    }
+    FLOG(_L(" TNENewLFileNameL error returned if not KErrnone = %d"),error ); 
+    return error;
+}
+
+
+
+// intialize thumbnail Newl File Handle
+TInt CTneTestClass::TNENewLFileHandleL(CStifItemParser& aItem)
+{
+ FLOG(_L("CTneTestClass::TNENewLFileHandleL in "));
+ TInt error = KErrNone;
+  RFile afileHandle; 
+   if ((error = FindFileName(aItem)) == KErrNone)
+    {  
+     FLOG(_L("CTneTestClass:Filename=%S"),&iFileName ); 
+      // convert into a file handle and intialize tne     
+          if( (error = afileHandle.Open( iFs,(TDesC &) iFileName, EFileShareReadersOnly | EFileStream | EFileRead)) != KErrNone )
+            {
+            return error;
+            }
+         if( iTNEVideoClipInfo )
+            {
+            delete iTNEVideoClipInfo;
+            iTNEVideoClipInfo = NULL;
+            }    
+      TRAPD( err,iTNEVideoClipInfo = CTNEVideoClipInfo::NewL( afileHandle, *this ) ); 
+      afileHandle.Close();
+      error = err;
+       FLOG(_L("TNENewLFileHandleL error returned = %d"),error ); 
+      return error;
+    }
+     FLOG(_L("TNENewLFileHandleL error returned if not KErrnone = %d"),error ); 
+    return error;
+
+}
+  
+   
+  
+
+TInt CTneTestClass::TNENewLCFileNameL(CStifItemParser& aItem)
+{
+ FLOG(_L("CTneTestClass::TNENewLCFileNameL in "));
+TInt error = KErrNone;
+   
+   if ((error = FindFileName(aItem)) == KErrNone)
+    {  
+     FLOG(_L("CTneTestClass:Filename=%S"),&iFileName ); 
+      if( iTNEVideoClipInfo )
+            {
+            delete iTNEVideoClipInfo;
+            iTNEVideoClipInfo = NULL;
+            }
+      TRAPD( err,iTNEVideoClipInfo = CTNEVideoClipInfo::NewLC( iFileName, *this ) ); 
+      error = err;
+       FLOG(_L(" TNENewLCFileNameL error returned = %d"),error ); 
+      return error;
+    }
+     FLOG(_L(" TNENewLCFileNameL error returned if not KErrnone = %d"),error ); 
+    return error;
+
+}
+
+
+TInt CTneTestClass::TNENewLCFileHandleL(CStifItemParser& aItem)
+{
+ FLOG(_L("CTneTestClass::TNENewLCFileHandleL in "));
+TInt error = KErrNone;
+  RFile afileHandle; 
+   if ((error = FindFileName(aItem)) == KErrNone)
+    {  
+     FLOG(_L("CTneTestClass : Filename=%S"),&iFileName ); 
+      // convert into a file handle and intialize tne     
+          if( (error = afileHandle.Open( iFs,(TDesC &) iFileName, EFileShareReadersOnly | EFileStream | EFileRead)) != KErrNone )
+            {
+            return error;
+            }
+         if( iTNEVideoClipInfo )
+            {
+            delete iTNEVideoClipInfo;
+            iTNEVideoClipInfo = NULL;
+            }    
+      TRAPD( err,iTNEVideoClipInfo = CTNEVideoClipInfo::NewLC( afileHandle, *this ) ); 
+      afileHandle.Close();
+      error = err;
+       FLOG(_L("TNENewLCFileHandleL error returned = %d"),error ); 
+      return error;
+    }
+     FLOG(_L("TNENewLCFileHandleL error returned if not KErrnone = %d"),error ); 
+    return error;
+
+}
+
+
+
+
+// get thumb
+
+TInt CTneTestClass::GetThumb(CStifItemParser& aItem)
+
+{
+  _LIT(KTagId, "");
+  TInt lRetVal = KErrNone;
+  TInt iThumbnailFrameIndex;
+  TSize iThumbnailSize;
+  TDisplayMode iDisplayMode;
+  TInt iDisplInt;
+  TInt ienh;
+  TBool iEnhance;
+  TInt iWidth;
+  TInt iHeight;
+  TPtrC string;
+  
+  // thumbindex
+//
+ //if ((lRetVal = aItem.GetInt(KTagId,iThumbnailFrameIndex)) != KErrNone )
+ if ((lRetVal = aItem.GetNextInt(iThumbnailFrameIndex)) != KErrNone )
+  { 
+     FLOG(_L("CTneTestClass: Getthumb    if ((lRetVal = aItem.GetNextInt(iThumbnailFrameIndex)) != KErrNone ) error = %d"),lRetVal );
+     return lRetVal ;
+  }
+ //width
+ else if ((lRetVal = aItem.GetNextInt(iWidth)) != KErrNone )
+  { 
+  FLOG(_L("CTneTestClass: Getthumb   else if ((lRetVal = aItem.GetNextInt(iWidth)) != KErrNone ) error = %d"),lRetVal );
+  return lRetVal ;
+  }
+  //height
+ else if ((lRetVal = aItem.GetNextInt(iHeight)) != KErrNone )
+  { 
+    FLOG(_L("CTneTestClass : Getthumb   else if ((lRetVal = aItem.GetNextInt(iHeight)) != KErrNone ) error = %d"),lRetVal );
+    return lRetVal ;
+  }
+  //enhance
+  else if ((lRetVal = aItem.GetNextInt(ienh)) != KErrNone )
+  {
+    FLOG(_L("CTneTestClass : Getthumb   else if ((lRetVal = aItem.GetNextInt(ienh)) != KErrNone ) error = %d"),lRetVal ); 
+    return lRetVal ;
+  }
+  
+  // thumbnail size 
+  iThumbnailSize = TSize(iWidth,iHeight);
+  
+  // display mode
+  
+  
+     
+ if ((lRetVal = aItem.GetNextInt(iDisplInt)) != KErrNone )
+ {
+  FLOG(_L(" CTneTestClass : Getthumb  if ((lRetVal = aItem.GetNextInt(iDisplInt)) != KErrNone ) error = %d"),lRetVal ); 
+  return lRetVal;
+ }
+ else 
+ {
+ iDisplayMode =  (TDisplayMode)iDisplInt;
+ }
+ 
+ // set enhance boolean value
+ 
+ 
+     if (ienh == 0)
+     {
+        iEnhance =  ETrue;
+     }
+     else
+     {
+        iEnhance =  EFalse;
+     }
+     
+     // getThumbL call to TNE
+ TRAPD( error,iTNEVideoClipInfo->GetThumbL( *this, iThumbnailFrameIndex, &iThumbnailSize, iDisplayMode, iEnhance, CActive::EPriorityIdle ) );
+      lRetVal = error;
+       FLOG(_L(" CTneTestClass : error returned from Getthumb = %d"),lRetVal ); 
+      return lRetVal;
+}
+
+
+
+void CTneTestClass::NotifyVideoClipInfoReady( CTNEVideoClipInfo& aInfo, TInt aError )
+{
+  FLOG(_L("error returned  CTneTestClass::NotifyVideoClipInfoReady = %d"),aError ); 
+  Signal(aError);
+}
+
+
+void CTneTestClass::NotifyVideoClipThumbCompleted( CTNEVideoClipInfo& /*aInfo*/, TInt aError, CFbsBitmap* aThumb )
+{
+  FLOG(_L(" CTneTestClass : error returned  CTneTestClass::NotifyVideoClipThumbCompleted = %d"),aError ); 
+ if ( aError == KErrNone && aThumb == NULL)
+ {
+  // there is no error code returned but the bitmap pointer is NULL
+  // This is still an error.
+  aError = KErrNotFound;
+ }
+  Signal(aError);
+}
+
+
+//////////////RunMethodL()/////////////////
+
+TInt CTneTestClass::RunMethodL( 
+    CStifItemParser& aItem ) 
+    {
+    static TStifFunctionInfo const KFunctions[] =
+        {  
+        // Copy this line for every implemented function.
+        // First string is the function name used in TestScripter script file.
+        // Second is the actual implementation member function. 
+        ENTRY( "TNENewLFileName", CTneTestClass::TNENewLFileNameL ),
+        ENTRY( "TNENewLFileHandle", CTneTestClass::TNENewLFileHandleL ),
+        ENTRY( "TNENewLCFileName", CTneTestClass::TNENewLCFileNameL ),
+        ENTRY( "TNENewLCFileHandle", CTneTestClass::TNENewLCFileHandleL ),
+        ENTRY( "GetThumb", CTneTestClass::GetThumb ),
+       
+         };
+
+    const TInt count = sizeof( KFunctions ) / 
+                        sizeof( TStifFunctionInfo );
+
+    return RunInternalL( KFunctions, count, aItem );
+    }
+
+
+
+
+
+// Destructor
+CTneTestClass::~CTneTestClass()
+    { 
+     FLOG(_L("CTneTestClass::~CTneTestClass() in") ); 
+    // delete iLog; 
+     if ( iTNEVideoClipInfo )
+        {
+        delete iTNEVideoClipInfo;
+        }
+        iWS.Close();
+        iFs.Close();
+    
+    // Delete logger
+   // delete iLog; 
+	// delete iTimeoutController;
+ FLOG(_L("CTneTestClass::~CTneTestClass() out") ); 
+    }
+
+
+
+
+
+/* this will be looked on later 
+// Timeout
+
+// -----------------------------------------------------------------------------
+// CRadioUtilityTestClass::SetTimeout
+// Create a timer and set a timeout
+// When the timeout is reached the test case is marked as failed
+// It's used rather than the "timeout" keyword in the configuration file
+// because in this way the log continues
+// -----------------------------------------------------------------------------
+TInt CTneTestClass::SetTimeout( CStifItemParser& aItem )
+{
+	FTRACE(FPrint(_L("CRadioUtilityTestClass::SetTimeout")));
+	TInt timeout=0;
+	TInt error = aItem.GetNextInt(timeout) ;
+	if ( iTimeoutController )
+	{
+		if ( timeout > 0 )
+		{
+			iTimeoutController->Start( TTimeIntervalMicroSeconds(timeout*1000) );
+		}
+		else
+		{
+			iTimeoutController->Start( TTimeIntervalMicroSeconds(1000000) );
+		}
+	}
+	else
+	{
+		FLOG(_L("Timeout Controller doesn't exist"));
+		error = KErrTimeoutController;
+	}
+	return error;
+}
+
+*/
+
+
+// ========================== OTHER EXPORTED FUNCTIONS =========================
+
+// -----------------------------------------------------------------------------
+// LibEntryL is a polymorphic Dll entry point.
+// Returns: CScriptBase: New CScriptBase derived object
+// -----------------------------------------------------------------------------
+//
+EXPORT_C CScriptBase* LibEntryL( 
+    CTestModuleIf& aTestModuleIf ) // Backpointer to STIF Test Framework
+    {
+
+    return ( CScriptBase* ) CTneTestClass::NewL( aTestModuleIf );
+
+    }
+
+// -----------------------------------------------------------------------------
+// E32Dll is a DLL entry point function.
+// Returns: KErrNone
+// -----------------------------------------------------------------------------
+//
+#ifndef EKA2 // Hide Dll entry point to EKA2
+GLDEF_C TInt E32Dll(
+    TDllReason /*aReason*/) // Reason code
+    {
+    return(KErrNone);
+
+    }
+#endif // EKA2
+
+//  End of File
+
+
--- a/mmmw_plat/voip_audio_services_api/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -1,19 +1,19 @@
 /*
-* Copyright (c) 2008 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:  Exports headers belonging to VoIPAudioServices API.
-*
-*/
+ * Copyright (c) 2008 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:  Exports headers belonging to VoIPAudioServices API.
+ *
+ */
 
 #include <platform_paths.hrh>
 
--- a/mmmw_plat/voip_audio_services_api/inc/voipaudiocommon.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipaudiocommon.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPAUDIOCOMMON_H
-#define __VOIPAUDIOCOMMON_H
+#ifndef VOIPAUDIOCOMMON_H
+#define VOIPAUDIOCOMMON_H
 
 #include <e32base.h>
 
@@ -38,6 +38,6 @@
     EPCM16
     };
 
-#endif //__VOIPAUDIOCOMMON_H
+#endif //VOIPAUDIOCOMMON_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipdatabuffer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipdatabuffer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPDATABUFFER_H
-#define __VOIPDATABUFFER_H
+#ifndef VOIPDATABUFFER_H
+#define VOIPDATABUFFER_H
 
 #include <e32base.h>
 
@@ -44,8 +44,6 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -53,8 +51,6 @@
 
     /**
      * SetPayloadPtr
-     *
-     * @since S60 v5.0
      * @param TPtr8
      * @return none
      */
@@ -62,8 +58,6 @@
 
     /**
      * GetPayloadPtr
-     *
-     * @since S60 v5.0
      * @param TPtr8&
      * @return none
      */
@@ -71,8 +65,6 @@
 
     /**
      * GetBufferType
-     *
-     * @since S60 v5.0
      * @param TVoIPBufferType&
      * @return none
      */
@@ -81,8 +73,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -90,8 +80,6 @@
 
     /**
      * 2nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPDataBufferImpl*
      * @return void
      */
@@ -100,7 +88,6 @@
 private:
 
     CVoIPDataBufferImpl* iVoIPDataBufferImpl;
-
     };
 
 /**
@@ -113,8 +100,6 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -122,8 +107,6 @@
 
     /**
      * SetBufferSequence
-     *
-     * @since S60 v5.0
      * @param const TUint - between 0 and 0xFFFF
      * @return none
      */
@@ -131,8 +114,6 @@
 
     /**
      * GetBufferSequence
-     *
-     * @since S60 v5.0
      * @param TUint& - between 0 and 0xFFFF
      * @return none
      */
@@ -141,8 +122,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -150,8 +129,6 @@
 
     /**
      * 2nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPJBDataBufferImpl*
      * @return void
      */
@@ -160,9 +137,8 @@
 private:
 
     CVoIPJBDataBufferImpl* iVoIPJBDataBufferImpl;
-
     };
 
-#endif //__VOIPDATABUFFER_H
+#endif //VOIPDATABUFFER_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipdownlinkstream.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipdownlinkstream.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPDOWNLINKSTREAM_H
-#define __VOIPDOWNLINKSTREAM_H
+#ifndef VOIPDOWNLINKSTREAM_H
+#define VOIPDOWNLINKSTREAM_H
 
 #include <voipaudiocommon.h>
 #include <voipdtmftoneplayer.h>
@@ -30,8 +30,6 @@
 /**
  *  MVoIPDownlinkObserver class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -45,9 +43,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * FillBuffer
      * @param const CVoIPAudioDownlinkStream&
      * @param CVoIPDataBuffer*
      * @return void
@@ -55,9 +51,7 @@
     virtual void FillBuffer(const CVoIPAudioDownlinkStream& aSrc,
             CVoIPDataBuffer* aBuffer) = 0;
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param const CVoIPAudioDownlinkStream&
      * @param TInt - Event type
      * @param TInt - Status
@@ -70,8 +64,6 @@
 /**
  *  CVoIPAudioDownlinkStream class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -80,8 +72,6 @@
 public:
     /**
      *  TVoIPOutputDevice
-     *  ?description
- *
      */
     enum TVoIPOutputDevice
         {
@@ -93,62 +83,48 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPAudioDownlinkStream();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open
      * @param MVoIPDownlinkObserver&
      * @return TInt
      */
     IMPORT_C TInt Open(MVoIPDownlinkObserver& aObserver);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetVersion
      * @param TVersion&
      * @return TInt
      */
     IMPORT_C TInt GetVersion(TVersion& aVersion);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMaxVolume
      * @param TInt&
      * @return TInt
      */
     IMPORT_C TInt GetMaxVolume(TInt& aVolume);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetVolume
      * @param TInt
      * @return TInt
      */
     IMPORT_C TInt SetVolume(TInt aVolume);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetVolume
      * @param TInt&
      * @return TInt
      */
     IMPORT_C TInt GetVolume(TInt& aVolume);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetFormat
      * @param TVoIPCodecFormat
      * @param CVoIPFormatIntfc*&
      * @return TInt
@@ -157,54 +133,42 @@
             CVoIPFormatIntfc*& aIntfc);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetAudioDevice
      * @param TVoIPOutputDevice
      * @return TInt
      */
     IMPORT_C TInt SetAudioDevice(TVoIPOutputDevice aDevice);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetAudioDevice
      * @param TVoIPOutputDevice&
      * @return TInt
      */
     IMPORT_C TInt GetAudioDevice(TVoIPOutputDevice& aDevice);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Start
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Start();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Stop
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Stop();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Close
      * @param none
      * @return void
      */
     IMPORT_C void Close();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * BufferFilled
      * @param CVoIPDataBuffer*
      * @return TInt
      */
@@ -214,8 +178,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -223,13 +185,11 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
-    void ConstructL(
-            CVoIPAudioDownlinkStreamImpl* aVoIPAudioDownlinkStreamImpl);
+    void ConstructL(CVoIPAudioDownlinkStreamImpl*
+            aVoIPAudioDownlinkStreamImpl);
 
 private:
     /**
@@ -240,9 +200,8 @@
 private:
 
     CVoIPAudioDownlinkStreamImpl* iVoIPAudioDownlinkStreamImpl;
-
     };
 
-#endif //__VOIPDOWNLINKSTREAM_H
+#endif //VOIPDOWNLINKSTREAM_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipdtmftoneplayer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipdtmftoneplayer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPDTMFTONEPLAYER_H
-#define __VOIPDTMFTONEPLAYER_H
+#ifndef VOIPDTMFTONEPLAYER_H
+#define VOIPDTMFTONEPLAYER_H
 
 // FORWARD DECLARATIONS
 class CVoIPAudioUplinkStream;
@@ -27,8 +27,6 @@
 /**
  *  MDTMFToneObserver class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -40,9 +38,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param CDTMFTonePlayer& - DTMF tone player reference
      * @param TInt - Event type
      * @param TInt - Status
@@ -66,80 +62,62 @@
 
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CDTMFTonePlayer();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open
      * @param MDTMFToneObserver&
      * @return TInt
      */
     IMPORT_C TInt Open(MDTMFToneObserver& aObserver);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Play
      * @param TPtr -
      * @return TInt -
      */
     IMPORT_C TInt Play(const TPtr aTones);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Stop
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Stop();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Close
      * @param none
      * @return void
      */
     IMPORT_C void Close();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * AddVoIPAudioUplinkStream
      * @param CVoIPAudioUplinkStream& -
      * @return TInt
      */
     IMPORT_C TInt AddVoIPAudioUplinkStream(CVoIPAudioUplinkStream& aStream);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * RemoveVoIPAudioUplinkStream
      * @param CVoIPAudioUplinkStream&
      * @return TInt
      */
     IMPORT_C TInt RemoveVoIPAudioUplinkStream(CVoIPAudioUplinkStream& aStream);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * AddVoIPAudioDownlinkStream
      * @param CVoIPAudioDownlinkStream& -
      * @return TInt
      */
     IMPORT_C TInt AddVoIPAudioDownlinkStream(CVoIPAudioDownlinkStream& aStream);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * RemoveVoIPAudioDownlinkStream
      * @param CVoIPAudioDownlinkStream& -
      * @return TInt
      */
@@ -150,8 +128,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -159,8 +135,6 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -169,9 +143,8 @@
 private:
 
     CDTMFTonePlayerImpl* iDTMFTonePlayerImpl;
-
     };
 
-#endif //__VOIPDTMFTONEPLAYER_H
+#endif //VOIPDTMFTONEPLAYER_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipformatintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipformatintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPFORMATINTFC_H
-#define __VOIPFORMATINTFC_H
+#ifndef VOIPFORMATINTFC_H
+#define VOIPFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 
@@ -42,9 +42,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param const CVoIPFormatIntfc&
      * @param TInt - event type
      * @return void
@@ -65,8 +63,6 @@
 public:
     /**
      *  TG711CodecMode
-     *  ?description
- *
      */
     enum TG711CodecMode
         {
@@ -76,8 +72,6 @@
 
     /**
      *  TILBCCodecMode
-     *  ?description
- *
      */
     enum TILBCCodecMode
         {
@@ -88,97 +82,75 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPFormatIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetObserver
      * @param MVoIPFormatObserver&
      * @return TInt
      */
     IMPORT_C TInt SetObserver(MVoIPFormatObserver& aObserver);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetSupportedBitRates
      * @param RArray<TUint>&
      * @return TInt
      */
     IMPORT_C TInt GetSupportedBitRates(RArray<TUint>& aArray);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetBitRate
      * @param TUint
      * @return TInt
      */
     IMPORT_C TInt SetBitRate(TUint aBitrate);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetBitRate
      * @param TUint&
      * @return TInt
      */
     IMPORT_C TInt GetBitRate(TUint& aBitrate);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetVAD
      * @param TBool
      * @return TInt
      */
     IMPORT_C TInt SetVAD(TBool aVad);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetVAD
      * @param TBool&
      * @return TInt
      */
     IMPORT_C TInt GetVAD(TBool& aVad);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * FrameModeRequiredForErrorConcealment
      * @param TBool&
      * @return TInt
      */
     IMPORT_C TInt FrameModeRequiredForErrorConcealment(TBool& aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetFrameMode
      * @param TBool
      * @return TInt
      */
     IMPORT_C TInt SetFrameMode(TBool aMode);
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetFrameMode
      * @param TBool&
      * @return TInt
      */
     IMPORT_C TInt GetFrameMode(TBool& aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * ConcealErrorForNextBuffer
      * @param none
      * @return TInt
      */
@@ -188,8 +160,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -197,8 +167,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPFormatIntfcImpl*
      * @return void
      */
@@ -207,9 +175,8 @@
 protected:
 
     CVoIPFormatIntfcImpl* iVoIPFormatIntfcImpl;
-
     };
 
-#endif //__VOIPFORMATINTFC_H
+#endif //VOIPFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipg711decoderintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipg711decoderintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPG711DECFORMATINTFC_H
-#define __VOIPG711DECFORMATINTFC_H
+#ifndef VOIPG711DECFORMATINTFC_H
+#define VOIPG711DECFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 #include <voipformatintfc.h>
@@ -37,62 +37,48 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPG711DecoderIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetMode
      * @param TG711CodecMode
      * @return TInt
      */
     IMPORT_C TInt SetMode(TG711CodecMode aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMode
      * @param TG711CodecMode&
      * @return TInt
      */
     IMPORT_C TInt GetMode(TG711CodecMode& aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetCNG
      * @param TBool
      * @return TInt
      */
     IMPORT_C TInt SetCNG(TBool aCng);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetCNG
      * @param TBool&
      * @return TInt
      */
     IMPORT_C TInt GetCNG(TBool& aCng);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetPLC
      * @param TBool
      * @return TInt
      */
     IMPORT_C TInt SetPLC(TBool aPlc);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetPLC
      * @param TBool&
      * @return TInt
      */
@@ -101,8 +87,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -110,8 +94,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPG711DecoderIntfcImpl*
      * @return void
      */
@@ -119,9 +101,8 @@
 
 protected:
     CVoIPG711DecoderIntfcImpl* iFormatIntfcImpl;
-
     };
 
-#endif //__VOIPG711DECFORMATINTFC_H
+#endif //VOIPG711DECFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipg711encoderintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipg711encoderintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPG711ENCFORMATINTFC_H
-#define __VOIPG711ENCFORMATINTFC_H
+#ifndef VOIPG711ENCFORMATINTFC_H
+#define VOIPG711ENCFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 #include <voipformatintfc.h>
@@ -37,26 +37,20 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPG711EncoderIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetMode
      * @param TG711CodecMode
      * @return TInt
      */
     IMPORT_C TInt SetMode(TG711CodecMode aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMode
      * @param TG711CodecMode&
      * @return TInt
      */
@@ -65,8 +59,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -74,8 +66,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPG711EncoderIntfcImpl*
      * @return void
      */
@@ -83,9 +73,8 @@
 
 protected:
     CVoIPG711EncoderIntfcImpl* iFormatIntfcImpl;
-
     };
 
-#endif //__VOIPG711ENCFORMATINTFC_H
+#endif //VOIPG711ENCFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipg729decoderintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipg729decoderintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPG729DECFORMATINTFC_H
-#define __VOIPG729DECFORMATINTFC_H
+#ifndef VOIPG729DECFORMATINTFC_H
+#define VOIPG729DECFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 #include <voipformatintfc.h>
@@ -37,17 +37,13 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPG729DecoderIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * BadLsfNextBuffer
      * @param none
      * @return TInt
      */
@@ -56,8 +52,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -65,8 +59,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPG729DecoderIntfcImpl*
      * @return void
      */
@@ -74,9 +66,8 @@
 
 protected:
     CVoIPG729DecoderIntfcImpl* iFormatIntfcImpl;
-
     };
 
-#endif //__VOIPG729DECFORMATINTFC_H
+#endif //VOIPG729DECFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipilbcdecoderintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipilbcdecoderintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPILBCDECFORMATINTFC_H
-#define __VOIPILBCDECFORMATINTFC_H
+#ifndef VOIPILBCDECFORMATINTFC_H
+#define VOIPILBCDECFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 #include <voipformatintfc.h>
@@ -37,44 +37,34 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPILBCDecoderIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetMode
      * @param TILBCCodecMode
      * @return TInt
      */
     IMPORT_C TInt SetMode(TILBCCodecMode aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMode
      * @param TILBCCodecMode&
      * @return TInt
      */
     IMPORT_C TInt GetMode(TILBCCodecMode& aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetCNG
      * @param TBool
      * @return TInt
      */
     IMPORT_C TInt SetCNG(TBool aCng);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetCNG
      * @param TBool&
      * @return TInt
      */
@@ -83,8 +73,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -92,8 +80,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPILBCDecoderIntfcImpl*
      * @return void
      */
@@ -101,9 +87,8 @@
 
 protected:
     CVoIPILBCDecoderIntfcImpl* iFormatIntfcImpl;
-
     };
 
-#endif //__VOIPILBCDECFORMATINTFC_H
+#endif //VOIPILBCDECFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipilbcencoderintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipilbcencoderintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPILBCENCFORMATINTFC_H
-#define __VOIPILBCENCFORMATINTFC_H
+#ifndef VOIPILBCENCFORMATINTFC_H
+#define VOIPILBCENCFORMATINTFC_H
 
 #include <voipaudiocommon.h>
 #include <voipformatintfc.h>
@@ -37,26 +37,20 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPILBCEncoderIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetMode
      * @param TILBCCodecMode
      * @return TInt
      */
     IMPORT_C TInt SetMode(TILBCCodecMode aMode);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMode
      * @param TILBCCodecMode&
      * @return TInt
      */
@@ -65,8 +59,6 @@
 protected:
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -74,8 +66,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPILBCEncoderIntfcImpl*
      * @return void
      */
@@ -83,9 +73,8 @@
 
 protected:
     CVoIPILBCEncoderIntfcImpl* iFormatIntfcImpl;
-
     };
 
-#endif //__VOIPILBCENCFORMATINTFC_H
+#endif //VOIPILBCENCFORMATINTFC_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipjitterbufferintfc.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipjitterbufferintfc.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPJITTERBUFFERINTFC_H
-#define __VOIPJITTERBUFFERINTFC_H
+#ifndef VOIPJITTERBUFFERINTFC_H
+#define VOIPJITTERBUFFERINTFC_H
 
 //  INCLUDES
 #include <e32base.h>
@@ -28,8 +28,6 @@
 
 /**
  *  TVoIPJBConfig
- *  ?description
- *
  */
 class TVoIPJBConfig
     {
@@ -62,8 +60,6 @@
 /**
  *  MVoIPJitterBufferObserver class
  *
- *  description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -75,9 +71,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param const CVoIPJitterBufferIntfc&
      * @param TInt - event type
      * @return void
@@ -99,17 +93,13 @@
 public:
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPJitterBufferIntfc();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetObserver
      * @param MVoIPFormatObserver&
      * @return TInt
      */
@@ -117,7 +107,6 @@
 
     /**
      * ConfigureJitterBuffer
-     * @since S60 v5.0
      * @param TVoIPJBConfig&
      * @return void
      */
@@ -125,7 +114,6 @@
 
     /**
      * ResetJitterbuffer
-     * @since S60 v5.0
      * @param aPlayTone ETrue, if tone should be played
      * @return void
      */
@@ -133,7 +121,6 @@
 
     /**
      * DelayDown
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -141,7 +128,6 @@
 
     /**
      * DelayUp
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -151,8 +137,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -160,8 +144,6 @@
 
     /**
      * 2-nd phase constructor
-     *
-     * @since S60 v5.0
      * @param CVoIPJitterBufferIntfcImpl*
      * @return void
      */
@@ -169,9 +151,8 @@
 
 protected:
     CVoIPJitterBufferIntfcImpl* iVoIPJitterBufferIntfcImpl;
-
     };
 
-#endif  //__VOIPJITTERBUFFERINTFC_H
+#endif  //VOIPJITTERBUFFERINTFC_H
 
 // End of File
--- a/mmmw_plat/voip_audio_services_api/inc/voipringtonefactory.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipringtonefactory.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __RINGTONEFACTORY_H
-#define __RINGTONEFACTORY_H
+#ifndef RINGTONEFACTORY_H
+#define RINGTONEFACTORY_H
 
 // FORWARD DECLARATIONS
 class CRingTonePlayer;
@@ -25,8 +25,6 @@
 /**
  *  CRingToneFactory class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -36,8 +34,6 @@
 
     /**
      * CreateFactory
-     *
-     * @since S60 v5.0
      * @param CRingToneFactory*&
      * @return TInt
      */
@@ -45,8 +41,6 @@
 
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -54,8 +48,6 @@
 
     /**
      * CreateRingTonePlayer
-     *
-     * @since S60 v5.0
      * @param CRingTonePlayer*&
      * @return TInt
      */
@@ -65,8 +57,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -74,8 +64,6 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -84,9 +72,8 @@
 private:
 
     CRingToneFactoryImpl* iRingToneFactoryImpl;
-
     };
 
-#endif //__RINGTONEFACTORY_H
+#endif //RINGTONEFACTORY_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipringtoneplayer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipringtoneplayer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __RINGTONEPLAYER_H
-#define __RINGTONEPLAYER_H
+#ifndef RINGTONEPLAYER_H
+#define RINGTONEPLAYER_H
 
 // FORWARD DECLARATIONS
 class RFile;
@@ -26,8 +26,6 @@
 /**
  *  MRingToneObserver class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -39,9 +37,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param CRingTonePlayer& - Ring tone player reference
      * @param TInt - Event type
      * @param TInt - Status
@@ -65,26 +61,20 @@
 
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CRingTonePlayer();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open from default profile
      * @param MRingToneObserver&
      * @return TInt
      */
     IMPORT_C TInt Open(MRingToneObserver& aObserver);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open file
      * @param MRingToneObserver&
      * @param TPtr
      * @return TInt
@@ -92,9 +82,7 @@
     IMPORT_C TInt Open(MRingToneObserver& aObserver, TPtr aFileName);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open from file handle
      * @param MRingToneObserver&
      * @param RFile&
      * @return TInt
@@ -102,9 +90,7 @@
     IMPORT_C TInt Open(MRingToneObserver& aObserver, RFile& aFileHandle);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open from descriptor
      * @param MRingToneObserver&
      * @param TPtr8
      * @param TPtr8
@@ -114,45 +100,35 @@
             TPtr8 aMimeType);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Play
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Play();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Pause
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Pause();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Resume
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Resume();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Stop
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Stop();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Close
      * @param none
      * @return TInt
      */
@@ -162,8 +138,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -171,8 +145,6 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -181,9 +153,8 @@
 private:
 
     CRingTonePlayerImpl* iRingTonePlayerImpl;
-
     };
 
-#endif //__RINGTONEPLAYER_H
+#endif //RINGTONEPLAYER_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voipuplinkstream.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voipuplinkstream.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPUPLINKSTREAM_H
-#define __VOIPUPLINKSTREAM_H
+#ifndef VOIPUPLINKSTREAM_H
+#define VOIPUPLINKSTREAM_H
 
 #include <voipaudiocommon.h>
 #include <voipdtmftoneplayer.h>
@@ -30,8 +30,6 @@
 /**
  *  MVoIPUplinkObserver class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -44,9 +42,7 @@
 
 public:
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * EmptyBuffer
      * @param CVoIPAudioUplinkStream&
      * @param TPtr8
      * @return void
@@ -55,9 +51,7 @@
             CVoIPDataBuffer* aBuffer) = 0;
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Event
      * @param CVoIPAudioUplinkStream&
      * @param TInt - Event type
      * @param TInt - Status
@@ -70,8 +64,6 @@
 /**
  *  CVoIPAudioUplinkStream class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -81,62 +73,48 @@
 
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C virtual ~CVoIPAudioUplinkStream();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Open
      * @param MVoIPUplinkObserver&
      * @return TInt
      */
     IMPORT_C TInt Open(MVoIPUplinkObserver& aObserver);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetVersion
      * @param TVersion&
      * @return TInt
      */
     IMPORT_C TInt GetVersion(TVersion& aVersion);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetMaxGain
      * @param TInt&
      * @return TInt
      */
     IMPORT_C TInt GetMaxGain(TInt& aGain);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetGain
      * @param TInt
      * @return TInt
      */
     IMPORT_C TInt SetGain(TInt aGain);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetGain
      * @param TInt&
      * @return TInt
      */
     IMPORT_C TInt GetGain(TInt& aGain);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * SetFormat
      * @param TVoIPCodecFormat
      * @param CVoIPFormatIntfc&
      * @return TInt
@@ -145,36 +123,28 @@
             CVoIPFormatIntfc*& aIntfc);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Start
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Start();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Stop
      * @param none
      * @return TInt
      */
     IMPORT_C TInt Stop();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * Close
      * @param none
      * @return void
      */
     IMPORT_C void Close();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * BufferEmptied
      * @param CVoIPDataBuffer*
      * @return TInt
      */
@@ -184,8 +154,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -193,8 +161,6 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -209,9 +175,8 @@
 private:
 
     CVoIPAudioUplinkStreamImpl* iVoIPAudioUplinkStreamImpl;
-
     };
 
-#endif //__VOIPUPLINKSTREAM_H
+#endif //VOIPUPLINKSTREAM_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/inc/voiputilityfactory.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/inc/voiputilityfactory.h	Mon Oct 04 00:51:56 2010 +0300
@@ -16,8 +16,8 @@
  *
  */
 
-#ifndef __VOIPUTILITYFACTORY_H
-#define __VOIPUTILITYFACTORY_H
+#ifndef VOIPUTILITYFACTORY_H
+#define VOIPUTILITYFACTORY_H
 
 #include <voipaudiocommon.h>
 #include <voipdatabuffer.h>
@@ -32,8 +32,6 @@
 /**
  *  CVoIPUtilityFactory class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
  *
  */
@@ -42,8 +40,6 @@
 public:
     /**
      *  TVoIPCallType
-     *  ?description
- *
      */
     enum TVoIPCallType
         {
@@ -54,9 +50,7 @@
 public:
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateFactory
      * @param CVoIPUtilityFactory*&
      * @return TInt
      */
@@ -64,17 +58,13 @@
 
     /**
      * Destructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
     IMPORT_C ~CVoIPUtilityFactory();
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateDownlinkStream
      * @param TVersion
      * @param TCallType
      * @param CVoIPAudioDownlinkStream*&
@@ -84,9 +74,7 @@
             const TVoIPCallType aCallType, CVoIPAudioDownlinkStream*& aDnLink);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateDownlinkStream with jitter buffer management
      * @param TVersion
      * @param CVoIPJitterBufferIntfc*&
      * @param CVoIPAudioDownlinkStream*&
@@ -97,9 +85,7 @@
             CVoIPAudioDownlinkStream*& aDnLink);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateUplinkStream
      * @param TVersion
      * @param TCallType
      * @param CVoIPAudioUplinkStream*&
@@ -109,18 +95,14 @@
             const TVoIPCallType aCallType, CVoIPAudioUplinkStream*& aUpLink);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateDTMFTonePlayer
      * @param CDTMFTonePlayer*&
      * @return TInt
      */
     IMPORT_C TInt CreateDTMFTonePlayer(CDTMFTonePlayer*& aDtmfPlayer);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * CreateBuffer
      * @param CVoIPDataBuffer*&
      * @param const CVoIPDataBuffer::TVoIPBufferType
      * @param const TVoIPCodecFormat aCodecFormat - default EG711 assumes
@@ -132,9 +114,7 @@
             const TVoIPCodecFormat aCodecFormat = EG711);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetSupportedDownlinkFormats
      * @param RArray<TVoIPCodecFormat>&
      * @return TInt -
      */
@@ -142,9 +122,7 @@
             RArray<TVoIPCodecFormat>& aFormats);
 
     /**
-     * ?description
-     *
-     * @since S60 v5.0
+     * GetSupportedUplinkFormats
      * @param RArray<TVoIPCodecFormat>&
      * @return TInt -
      */
@@ -155,8 +133,6 @@
 
     /**
      * Constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -164,8 +140,6 @@
 
     /**
      * Symbian constructor
-     *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -174,9 +148,8 @@
 private:
 
     CVoIPUtilityFactoryImpl* iVoIPUtilityFactoryImpl;
-
     };
 
-#endif //__VOIPUTILITYFACTORY_H
+#endif //VOIPUTILITYFACTORY_H
 
 // End of file
--- a/mmmw_plat/voip_audio_services_api/tsrc/Conf/VoIPAudioServicesTestClass.cfg	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/Conf/VoIPAudioServicesTestClass.cfg	Mon Oct 04 00:51:56 2010 +0300
@@ -1,9 +1,9 @@
-// _Unsupported_ Those API could be not implemented and return KErrNotSupported
-
+//VoIPAudioServicesTestClass.cfg
 
 [Define]
 KErrNotFound -1
 KErrNotSupported -5
+KErrArgument -6
 KErrAlreadyExists -11
 KErrNotReady -18
 KErrAccessDenied -21
@@ -17,17 +17,15 @@
 
 [Enddefine]
 
-
 [Test]
-title  01. VoIPUtilityFactory - 01. Create Factory
+title  01. Factory - 1. Create Factory
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  01. VoIPUtilityFactory - 02. Create Downlinkstream
+title  01. Factory - 2. Create DLN
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
@@ -35,7 +33,7 @@
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 03. Create Uplinkstream
+title  01. Factory - 3. Create UPL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -43,35 +41,36 @@
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 04. Create DTMFTonePlayer
+title  01. Factory - 4. Create DTMF Player
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP CreateUplinkStream
-VoIP CreateDTMFTonePlayer
+VoIP CreateDTMFTonePlayer Uplink
+VoIP CreateDTMFTonePlayer Dnlink
 delete VoIP
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 05. GetSupportedDownlinkFormats
+title  01. Factory - 5. Get DNL Formats
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP GetSupportedDownlinkFormats
+VoIP GetSupportedDownlinkFormats
 delete VoIP
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 06. GetSupportedUplinkFormats
+title  01. Factory - 6. Get UPL Formats
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
 VoIP GetSupportedUplinkFormats
+VoIP GetSupportedUplinkFormats
 delete VoIP
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 07. Get Downlink Version
+title  01. Factory - 7. Get DNL Version
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
@@ -80,7 +79,7 @@
 [Endtest]
 
 [Test]
-title  01. VoIPUtilityFactory - 08. Get Uplink Version
+title  01. Factory - 8. Get UPL Version
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -88,222 +87,267 @@
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  02. RingToneFactory - 01. Create Ring Tone Factory
+title  02. RT Factory - 1. Create RT Factory
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 delete VoIP
 [Endtest]
 
 [Test]
-title  02. RingToneFactory - 02. Create RingTonePlayer
+title  02. RT Factory - 2. Create RT Player
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  03. VoIPAudioDownlinkStream - 01. Set Downlink format - G711
+title  03. DNL - 1. Set format G711
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
+VoIP SetDownlinkFormat G711
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 02. Set Downlink format - G729
+title  03. DNL - 2. Set format G729
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G729
+VoIP SetDownlinkFormat G729
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 03. Set Downlink format - iLBC
+title  03. DNL - 3. Set format iLBC
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat iLBC
+VoIP SetDownlinkFormat iLBC
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 04. Set Downlink format - AMR-NB
+title  03. DNL - 4. Set format AMR-NB
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat AMR-NB
+VoIP SetDownlinkFormat AMR-NB
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 05. Set Downlink format - PCM16
+title  03. DNL - 5. Set format PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat PCM16
+VoIP SetDownlinkFormat PCM16
 delete VoIP
 [Endtest]
 
+// Fail case
 [Test]
-title  03. VoIPAudioDownlinkStream - 06. Open Downlink format - G711
+title  03. DNL - 6. Set format NULL
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+allownextresult KErrNotSupported
+VoIP SetDownlinkFormat NULL
+delete VoIP
+[Endtest]
+
+[Test]
+title  03. DNL - 7. Open G711
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 07. Open Downlink format - G729
+title  03. DNL - 8. Open G711_10MS
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP GetSupportedDownlinkFormats
+VoIP SetDownlinkFormat G711_10MS
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 08. Open Downlink format - iLBC
+title  03. DNL - 9. Open G729
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat iLBC
-VoIP OpenDownlink
+VoIP GetSupportedDownlinkFormats
+VoIP SetDownlinkFormat G729
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 09. Open Downlink format - AMR-NB
+title  03. DNL - 10. Open iLBC
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat iLBC
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  03. DNL - 11. Open AMR-NB
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat AMR-NB
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 10. Open Downlink format - PCM16
+title  03. DNL - 12. Open PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat PCM16
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  03. DNL - 13. Spkr Volume
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP Volume
+VoIP Close Dnlink
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  03. VoIPAudioDownlinkStream - 11. Volume
+title  03. DNL - 14. AudioDevice - Handset
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
+VoIP GetSupportedDownlinkFormats
 VoIP SetDownlinkFormat AMR-NB
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP Volume
+VoIP SetDevice Handset
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+delete VoIP
+[Endtest]
+
+[Test]
+title  03. DNL - 15. AudioDevice - Loudspeaker
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP SetDevice LoudSpeaker
+VoIP Close Dnlink
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  03. VoIPAudioDownlinkStream - 12. AudioDevice - Handset
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat AMR-NB
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP SetDevice Handset
-VoIP Close Dnlink
-waittestclass VoIP
-VoIP SetTimeout 10000
-waittestclass VoIP
-delete VoIP
-[Endtest]
-
-
-[Test]
-title  03. VoIPAudioDownlinkStream - 13. AudioDevice - Loudspeaker
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat AMR-NB
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP SetDevice LoudSpeaker
-VoIP Close Dnlink
-waittestclass VoIP
-VoIP SetTimeout 10000
-waittestclass VoIP
-delete VoIP
-[Endtest]
-
-
-
-[Test]
-title  04. VoIPAudioUplinkStream - 01. Set Uplink format - G711
+title  04. UPL - 1. Set G711
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
 VoIP SetUplinkFormat G711
+VoIP SetUplinkFormat G711
 delete VoIP
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 02. Set Uplink format - G729
+title  04. UPL - 2. Set G711_10MS
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
+VoIP SetUplinkFormat G711_10MS
+delete VoIP
+[Endtest]
+
+[Test]
+title  04. UPL - 3. Set G729
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat G729
 VoIP SetUplinkFormat G729
 delete VoIP
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 03. Set Uplink format - iLBC
+title  04. UPL - 4. Set iLBC
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
+VoIP GetSupportedUplinkFormats
+VoIP SetUplinkFormat iLBC
 VoIP SetUplinkFormat iLBC
 delete VoIP
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 04. Set Uplink format - AMR-NB
+title  04. UPL - 5. Set AMR-NB
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
+VoIP GetSupportedUplinkFormats
+VoIP SetUplinkFormat AMR-NB
 VoIP SetUplinkFormat AMR-NB
 delete VoIP
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 05. Set Uplink format - PCM16
+title  04. UPL - 6. Set PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
 VoIP SetUplinkFormat PCM16
+VoIP SetUplinkFormat PCM16
+delete VoIP
+[Endtest]
+
+// Fail case
+[Test]
+title  04. UPL - 7. Set NULL
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateUplinkStream
+allownextresult KErrNotSupported
+VoIP SetUplinkFormat NULL
 delete VoIP
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 06. Open Uplink format - G711
+title  04. UPL - 8. Open G711
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -314,7 +358,7 @@
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 07. Open Uplink format - G729
+title  04. UPL - 9. Open G729
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -325,7 +369,7 @@
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 08. Open Uplink format - iLBC
+title  04. UPL - 10. Open iLBC
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -336,7 +380,7 @@
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 09. Open Uplink format - AMR-NB
+title  04. UPL - 11. Open AMR-NB
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -347,7 +391,7 @@
 [Endtest]
 
 [Test]
-title  04. VoIPAudioUplinkStream - 10. Open Uplink format - PCM16
+title  04. UPL - 12. Open PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -357,9 +401,8 @@
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  04. VoIPAudioUplinkStream - 11. Gain
+title  04. UPL - 13. Mic Gain
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -372,27 +415,26 @@
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  05. DTMFTonePlayer - 01. Init DTMFTonePlayerDnlink
+title  05. DTMF - 1. Init DNL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP CreateDTMFTonePlayer
+VoIP CreateDTMFTonePlayer Dnlink
 VoIP InitDTMFTonePlayer Dnlink
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  05. DTMFTonePlayer - 02. Init DTMFTonePlayerUplink
+title  05. DTMF - 2. Init UPL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
-VoIP CreateDTMFTonePlayer
+VoIP CreateDTMFTonePlayer Uplink
 VoIP SetUplinkFormat G729
 VoIP OpenUplink
 waittestclass VoIP
@@ -401,48 +443,51 @@
 delete VoIP
 [Endtest]
 
-
 [Test]
-title  05. DTMFTonePlayer - 03. DTMFPlayDnlink
+title  05. DTMF - 3. Play DNL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP CreateDTMFTonePlayer
+VoIP CreateDTMFTonePlayer Dnlink
 VoIP InitDTMFTonePlayer Dnlink
 waittestclass VoIP
 VoIP DTMFTonePlay Dnlink
+VoIP SetTimeout 1000
+waittestclass VoIP
 VoIP CloseDTMFPlayer Dnlink
 delete VoIP
 [Endtest]
 
 [Test]
-title  05. DTMFTonePlayer - 04. DTMFPlayUplink
+title  05. DTMF - 4. Play UPL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
-VoIP CreateDTMFTonePlayer
-VoIP SetUplinkFormat G729
+VoIP CreateDTMFTonePlayer Uplink
+VoIP SetUplinkFormat AMR-NB
 VoIP OpenUplink
 waittestclass VoIP
 VoIP InitDTMFTonePlayer Uplink
 waittestclass VoIP
 VoIP DTMFTonePlay Uplink
+VoIP SetTimeout 1000
+waittestclass VoIP
 VoIP CloseDTMFPlayer Uplink
 delete VoIP
 [Endtest]
 
 [Test]
-title  05. DTMFTonePlayer - 05. StopDTMFPlayer Dnlink
+title  05. DTMF - 5. Stop DNL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP CreateDTMFTonePlayer
+VoIP CreateDTMFTonePlayer Dnlink
 VoIP InitDTMFTonePlayer Dnlink
 waittestclass VoIP
 VoIP DTMFTonePlay Dnlink
@@ -452,12 +497,12 @@
 [Endtest]
 
 [Test]
-title  05. DTMFTonePlayer - 06. StopDTMFPlayer Uplink
+title  05. DTMF - 6. Stop UPL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
-VoIP CreateDTMFTonePlayer
-VoIP SetUplinkFormat G729
+VoIP CreateDTMFTonePlayer Uplink
+VoIP SetUplinkFormat G711
 VoIP OpenUplink
 waittestclass VoIP
 VoIP InitDTMFTonePlayer Uplink
@@ -468,9 +513,30 @@
 delete VoIP
 [Endtest]
 
+// Fail case
+[Test]
+title  05. DTMF - 7. Add NULL DNL
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDTMFTonePlayer Dnlink
+allownextresult KErrArgument
+VoIP InitDTMFTonePlayer Dnlink
+delete VoIP
+[Endtest]
+
+// Fail case
+[Test]
+title  05. DTMF - 8. Add NULL UPL
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDTMFTonePlayer Uplink
+allownextresult KErrArgument
+VoIP InitDTMFTonePlayer Uplink
+delete VoIP
+[Endtest]
 
 [Test]
-title  06. RingTonePlayer - 01. InitRingTonePlayerFromFile with File1
+title  06. RT - 1. Init File
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
@@ -481,18 +547,7 @@
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 02. InitRingTonePlayerFromFile with File2
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateRingToneFactory
-VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer File File2
-waittestclass VoIP
-VoIP CloseRingTonePlayer
-delete VoIP
-[Endtest]
-
-[Test]
-title  06. RingTonePlayer - 03. InitRingTonePlayerFromRFile with File1
+title  06. RT - 2. Init File handle
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
@@ -503,41 +558,32 @@
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 04. InitRingTonePlayerFromRFile with File2
+title  06. RT - 3. Init DesL
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer RFile File2
+VoIP InitRingTonePlayer DesL
 waittestclass VoIP
 VoIP CloseRingTonePlayer
 delete VoIP
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 05. InitRingTonePlayerFromProfile
+title  06. RT - 4. Play Profile
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
 VoIP InitRingTonePlayer Profile
 waittestclass VoIP
+VoIP PlayRingTone
+VoIP SetTimeout 5000
+waittestclass VoIP
 VoIP CloseRingTonePlayer
 delete VoIP
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 06. InitRingTonePlayerFromDesL
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateRingToneFactory
-VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer DesL
-allownextresult KErrCallbackErrorCode
-waittestclass VoIP
-VoIP CloseRingTonePlayer
-delete VoIP
-[Endtest]
-
-[Test]
-title  06. RingTonePlayer - 07. Play ringtone to end with File1
+title  06. RT - 5. Play File
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
@@ -550,42 +596,14 @@
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 08. Play ringtone to end with File2
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateRingToneFactory
-VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer File File2
-waittestclass VoIP
-VoIP PlayRingTone
-waittestclass VoIP
-VoIP CloseRingTonePlayer
-delete VoIP
-[Endtest]
-
-[Test]
-title  06. RingTonePlayer - 09. Play ringtone - Stop - Close with File1
+title  06. RT - 6. Stop File
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
 VoIP InitRingTonePlayer File File1
 waittestclass VoIP
 VoIP PlayRingTone
-VoIP SetTimeout 2000
-waittestclass VoIP
-VoIP StopRingTone
-VoIP CloseRingTonePlayer
-delete VoIP
-[Endtest]
-
-[Test]
-title  06. RingTonePlayer - 10. Play ringtone - Stop - Close with File2
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateRingToneFactory
-VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer File File2
-waittestclass VoIP
-VoIP PlayRingTone
-VoIP SetTimeout 2000
+VoIP SetTimeout 1000
 waittestclass VoIP
 VoIP StopRingTone
 VoIP CloseRingTonePlayer
@@ -593,50 +611,27 @@
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 11. Play ringtone - Pause - Resume with File1
+title  06. RT - 7. Resume File
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateRingToneFactory
 VoIP CreateRingTonePlayer
 VoIP InitRingTonePlayer File File1
 waittestclass VoIP
-VoIP PlayRingTone 
+VoIP PlayRingTone
 VoIP SetTimeout 1000
 waittestclass VoIP
 VoIP PauseRingTone
 VoIP SetTimeout 2000
 waittestclass VoIP
 VoIP ResumeRingTone
-VoIP SetTimeout 4000
+VoIP SetTimeout 2000
 waittestclass VoIP
 VoIP CloseRingTonePlayer
 delete VoIP
 [Endtest]
 
 [Test]
-title  06. RingTonePlayer - 12. Play ringtone - Pause - Resume with File2
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateRingToneFactory
-VoIP CreateRingTonePlayer
-VoIP InitRingTonePlayer File File2
-waittestclass VoIP
-VoIP PlayRingTone 
-VoIP SetTimeout 2000
-waittestclass VoIP
-VoIP PauseRingTone
-VoIP SetTimeout 4000
-waittestclass VoIP
-VoIP ResumeRingTone
-VoIP SetTimeout 10000
-waittestclass VoIP
-VoIP CloseRingTonePlayer
-delete VoIP
-[Endtest]
-
-
-
-
-[Test]
-title  07. VoIPFormatIntfc - 01. BitRate - G711
+title  07. G711 - 1. BitRate
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -650,13 +645,13 @@
 VoIP GetBitrate
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 02. BitRate - G729
+title  07. G729 - 2. BitRate
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -670,13 +665,13 @@
 VoIP GetBitrate
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 03. BitRate - iLBC
+title  07. iLBC - 3. BitRate
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -690,13 +685,13 @@
 VoIP GetBitrate
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 04. BitRate - AMR-NB
+title  07. AMR-NB - 4. BitRate
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -710,33 +705,36 @@
 VoIP GetBitrate
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
+// Fail case
 [Test]
-title  07. VoIPFormatIntfc - 05. BitRate - PCM16
+title  07. PCM16 - 5. BitRate
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
 VoIP SetUplinkFormat PCM16
 VoIP OpenUplink
 waittestclass VoIP
+allownextresult KErrNotSupported
 VoIP GetSupportedBitrates
-VoIP SetBitrate MIN
+allownextresult KErrNotSupported
 VoIP GetBitrate
-VoIP SetBitrate MAX
-VoIP GetBitrate
+VoIP SetBitrate
+allownextresult KErrCallbackErrorCode
+waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 06. VADMode - G711
+title  07. G711 - 6. VAD
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -748,13 +746,13 @@
 VoIP GetVAD
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 07. VADMode - G729
+title  07. G729 - 7. VAD
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -766,13 +764,13 @@
 VoIP GetVAD
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 08. VADMode - iLBC
+title  07. iLBC - 8. VAD
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -784,13 +782,13 @@
 VoIP GetVAD
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 09. VADMode - AMR-NB
+title  07. AMR-NB - 9. VAD
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -802,15 +800,14 @@
 VoIP GetVAD
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
-// Toggle VAD doesn't supported yet, this case just make no crash when API called. 
-// add line - allownextresult KErrUnexpectedValue to PASS the test case
+// Fail case
 [Test]
-title  07. VoIPFormatIntfc - 10. VADMode - PCM16
+title  07. PCM16 - 10. VAD
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -820,82 +817,79 @@
 allownextresult KErrNotSupported
 VoIP GetVAD
 VoIP ToggleVAD
-allownextresult KErrUnexpectedValue
-VoIP GetVAD
+allownextresult KErrCallbackErrorCode
+waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 11. FrameMode - G711
+title  07. G711 - 11. FrameMode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP GetFrameMode
 VoIP GetFrameModeRqrdForEC
 VoIP ToggleFrameMode
 VoIP GetFrameMode
-VoIP ConcealErrForNextBuf
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 12. FrameMode - G729
+title  07. G729 - 12. FrameMode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP SetDownlinkFormat G729
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP GetFrameMode
 VoIP GetFrameModeRqrdForEC
 VoIP ToggleFrameMode
 VoIP GetFrameMode
-VoIP ConcealErrForNextBuf
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 13. FrameMode - iLBC
+title  07. iLBC - 13. FrameMode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP SetDownlinkFormat iLBC
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP GetFrameMode
 VoIP GetFrameModeRqrdForEC
 VoIP ToggleFrameMode
 VoIP GetFrameMode
-VoIP ConcealErrForNextBuf
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  07. VoIPFormatIntfc - 14. FrameMode - AMR-NB
+title  07. AMR-NB - 14. FrameMode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP GetFrameMode
 VoIP GetFrameModeRqrdForEC
@@ -904,39 +898,63 @@
 VoIP ConcealErrForNextBuf
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
-
+// Fail case
+[Test]
+title  07. PCM16 - 15. FrameMode
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat PCM16
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+allownextresult KErrNotSupported
+VoIP GetFrameMode
+allownextresult KErrNotSupported
+VoIP GetFrameModeRqrdForEC
+VoIP ConcealErrForNextBuf
+allownextresult KErrCallbackErrorCode
+waittestclass VoIP
+VoIP ToggleFrameMode
+allownextresult KErrCallbackErrorCode
+waittestclass VoIP
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
 
 [Test]
-title  08. VoIPDecoderIntfc - 1. SetMode and GetMode - G711 decoder
+title  08. Decoder - 1. G711 Mode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP SetMode Dnlink aLaw 
+VoIP SetMode Dnlink aLaw
 VoIP GetMode Dnlink
 VoIP SetMode Dnlink uLaw
 VoIP GetMode Dnlink
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  08. VoIPDecoderIntfc - 2. SetMode and GetMode - iLBC decoder
+title  08. Decoder - 2. iLBC Mode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat iLBC
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP SetMode Dnlink 20ms
 VoIP GetMode Dnlink
@@ -944,18 +962,37 @@
 VoIP GetMode Dnlink
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  08. VoIPDecoderIntfc - 3. SetCNG and GetCNG - G711 decoder
+title  08. Decoder - 3. G711 CNG
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP ToggleCNG
+VoIP GetCNG
+VoIP ToggleCNG
+VoIP GetCNG
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  08. Decoder - 4. iLBC CNG
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat iLBC
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP ToggleCNG
 VoIP GetCNG
@@ -963,69 +1000,164 @@
 VoIP GetCNG
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  08. VoIPDecoderIntfc - 4. SetCNG and GetCNG - iLBC decoder
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat iLBC
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP ToggleCNG
-VoIP GetCNG
-VoIP ToggleCNG
-VoIP GetCNG
-VoIP Close Dnlink
-waittestclass VoIP
-VoIP SetTimeout 10000
-waittestclass VoIP
-delete VoIP
-[Endtest]
-
-[Test]
-title  08. VoIPDecoderIntfc - 5. SetPLC and GetPLC - G711 decoder
+title  08. Decoder - 5. G711 PLC
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP GetPLC
 VoIP TogglePLC
 VoIP GetPLC
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+// Fail case (must be streaming)
+[Test]
+title  08. Decoder - 6. G729 BadLsfNextBuffer
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G729
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP BadLsfNextBuffer
+allownextresult KErrCallbackErrorCode
+waittestclass VoIP
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  08. Decoder - 7. PCM16 Play
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat PCM16
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  08. Decoder - 8. G711 Play
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  08. VoIPDecoderIntfc - 6. BadLsfNextBuffer - G729
+title  08. Decoder - 9. G729 Play
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
-VoIP BadLsfNextBuffer
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Dnlink
 VoIP Close Dnlink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  08. Decoder - 10. iLBC Play
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat iLBC
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
+[Test]
+title  08. Decoder - 11. AMR-NB Play
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
 
-
+// Fail case
+[Test]
+title  08. Decoder - 12. G711 PLC Not ready
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G711
+//allownextresult KErrNotSupported
+//VoIP GetPLC
+//VoIP TogglePLC
+//allownextresult KErrCallbackErrorCode
+//waittestclass VoIP
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
 
 [Test]
-title  09. VoIPEncoderIntfc - 1. SetMode and GetMode - G711 encoder
+title  09. Encoder - 1. G711 Mode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -1038,13 +1170,13 @@
 VoIP GetMode Uplink
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  09. VoIPEncoderIntfc - 2. SetMode and GetMode - iLBC encoder
+title  09. Encoder - 2. iLBC Mode
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -1057,13 +1189,13 @@
 VoIP GetMode Uplink
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 10000
+VoIP SetTimeout 1000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  09. VoIPEncoderIntfc - 3 Start Stop - G711 encoder
+title  09. Encoder - 3. G711 Record aLaw
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -1071,22 +1203,21 @@
 VoIP OpenUplink
 waittestclass VoIP
 VoIP ConfigEncAudDevice
-VoIP Start Uplink
-waittestclass VoIP
-VoIP Stop Uplink
 VoIP SetMode Uplink aLaw
 VoIP GetMode Uplink
-VoIP SetMode Uplink uLaw
-VoIP GetMode Uplink
+VoIP Start Uplink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 4000
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  09. VoIPEncoderIntfc - 4. Start Stop - G711 encoder
+title  09. Encoder - 4. G711 Record uLaw
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateUplinkStream
@@ -1094,68 +1225,98 @@
 VoIP OpenUplink
 waittestclass VoIP
 VoIP ConfigEncAudDevice
+VoIP SetMode Uplink uLaw
+VoIP GetMode Uplink
 VoIP Start Uplink
-waittestclass VoIP
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP Start Dnlink
+VoIP SetTimeout 5000
 waittestclass VoIP
 VoIP Stop Uplink
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 4000
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  09. Encoder - 5. iLBC Record 20ms
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat iLBC
+VoIP OpenUplink
+waittestclass VoIP
+VoIP ConfigEncAudDevice
+VoIP SetMode Uplink 20ms
+VoIP GetMode Uplink
+VoIP Start Uplink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Close Uplink
+waittestclass VoIP
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  09. VoIPEncoderIntfc - 5. Start Stop - G711 encoder
+title  09. Encoder - 6. iLBC Record 30ms
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP Start Dnlink
-waittestclass VoIP
 VoIP CreateUplinkStream
-VoIP SetUplinkFormat G711
+VoIP SetUplinkFormat iLBC
 VoIP OpenUplink
 waittestclass VoIP
 VoIP ConfigEncAudDevice
+VoIP SetMode Uplink 30ms
+VoIP GetMode Uplink
 VoIP Start Uplink
+VoIP SetTimeout 5000
 waittestclass VoIP
-VoIP Stop Dnlink
 VoIP Stop Uplink
-VoIP Close Dnlink
 VoIP Close Uplink
 waittestclass VoIP
-VoIP SetTimeout 4000
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  10. Loopback - 1. Start Downlink and Uplink stream - G711
+title  09. Encoder - 7. PCM16 Record
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP OpenDownlink
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat PCM16
+VoIP OpenUplink
+waittestclass VoIP
+VoIP Start Uplink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Close Uplink
 waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  10. Loopback - 1. G711
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
 VoIP CreateUplinkStream
 VoIP SetUplinkFormat G711
 VoIP OpenUplink
 waittestclass VoIP
-VoIP ConfigEncAudDevice
-VoIP Start Dnlink
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
+VoIP SetLoopPlay
 VoIP Start Uplink
-waittestclass VoIP
-VoIP Stop Uplink
-VoIP Start Uplink
+VoIP Start Dnlink
+VoIP SetTimeout 10000
 waittestclass VoIP
 VoIP Stop Uplink
 VoIP Stop Dnlink
@@ -1163,27 +1324,83 @@
 waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  10. Loopback - 2. Start Downlink and Uplink stream - G729
+title  10. Loopback - 2. G729
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat G729
-VoIP OpenDownlink
+VoIP OpenDownlink StdBuf
 waittestclass VoIP
 VoIP CreateUplinkStream
 VoIP SetUplinkFormat G729
 VoIP OpenUplink
 waittestclass VoIP
+VoIP SetLoopPlay
 VoIP Start Dnlink
-waittestclass VoIP
 VoIP Start Uplink
+VoIP SetTimeout 10000
 waittestclass VoIP
 VoIP Stop Uplink
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP Close Uplink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  10. Loopback - 3. iLBC
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateUplinkStream
+VoIP CreateDownlinkStream
+VoIP SetUplinkFormat iLBC
+VoIP SetDownlinkFormat iLBC
+VoIP OpenUplink
+waittestclass VoIP
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP SetLoopPlay
 VoIP Start Uplink
+VoIP Start Dnlink
+VoIP SetTimeout 10000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Stop Dnlink
+VoIP Close Uplink
+waittestclass VoIP
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  10. Loopback - 4. AMR-NB
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat AMR-NB
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP OpenUplink
+waittestclass VoIP
+VoIP SetLoopPlay
+VoIP Start Uplink
+VoIP Start Dnlink
+VoIP SetTimeout 10000
 waittestclass VoIP
 VoIP Stop Uplink
 VoIP Stop Dnlink
@@ -1191,55 +1408,27 @@
 waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
-delete VoIP
-[Endtest]
-
-[Test]
-title  10. Loopback - 3. Start Downlink and Uplink stream - iLBC
-create VoIPAudioServicesTestClass VoIP
-VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat iLBC
-VoIP OpenDownlink
-waittestclass VoIP
-VoIP CreateUplinkStream
-VoIP SetUplinkFormat iLBC
-VoIP OpenUplink
-waittestclass VoIP
-VoIP Start Dnlink
-waittestclass VoIP
-VoIP Start Uplink
-waittestclass VoIP
-VoIP Stop Uplink
-VoIP Start Uplink
-waittestclass VoIP
-VoIP Stop Uplink
-VoIP Stop Dnlink
-VoIP Close Dnlink
-waittestclass VoIP
-VoIP Close Uplink
+VoIP SetTimeout 2000
 waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  10. Loopback - 4. Start Downlink and Uplink stream - AMR-NB
+title  10. Loopback - 5. PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat PCM16
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
 VoIP CreateUplinkStream
-VoIP SetUplinkFormat AMR-NB
+VoIP SetUplinkFormat PCM16
 VoIP OpenUplink
 waittestclass VoIP
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat AMR-NB
-VoIP OpenDownlink
-waittestclass VoIP
+VoIP SetLoopPlay
+VoIP Start Dnlink
 VoIP Start Uplink
-waittestclass VoIP
-VoIP Start Dnlink
-waittestclass VoIP
-VoIP Stop Uplink
-VoIP Start Uplink
+VoIP SetTimeout 10000
 waittestclass VoIP
 VoIP Stop Uplink
 VoIP Stop Dnlink
@@ -1247,27 +1436,150 @@
 waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
 delete VoIP
 [Endtest]
 
 [Test]
-title  10. Loopback - 5. Start Downlink and Uplink stream - PCM16
+title  11. DataBuffer - 1. GetType PCM16
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat PCM16
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP GetBufferType
+VoIP Close Dnlink
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  11. DataBuffer - 2. GetType G711
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStream
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink StdBuf
+waittestclass VoIP
+VoIP GetBufferType
+VoIP Close Dnlink
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+// JB not supported for PCM
+[Test]
+title  11. DataBuffer - 3. GetJBType PCM16
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
 VoIP CreateDownlinkStream
 VoIP SetDownlinkFormat PCM16
-VoIP OpenDownlink
+allownextresult KErrNotSupported
+VoIP OpenDownlink JbBuf
+delete VoIP
+[Endtest]
+
+[Test]
+title  11. DataBuffer - 4. GetJBType G711
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP GetBufferType
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  12. JB - 1. Configure
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ConfigureJB
+waittestclass VoIP
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  12. JB - 2. Reset
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ResetJB
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  12. JB - 3. DelayDown
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP DelayDown
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  12. JB - 4. DelayUp
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP DelayUp
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP SetTimeout 1000
+waittestclass VoIP
+delete VoIP
+[Endtest]
+
+[Test]
+title  12. JB - 5. Loopback G711
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G711
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ConfigureJB
 waittestclass VoIP
 VoIP CreateUplinkStream
-VoIP SetUplinkFormat PCM16
+VoIP SetUplinkFormat G711
 VoIP OpenUplink
 waittestclass VoIP
+VoIP Start Uplink
 VoIP Start Dnlink
-waittestclass VoIP
-VoIP Start Uplink
-waittestclass VoIP
-VoIP Stop Uplink
-VoIP Start Uplink
+VoIP DelayDown
+VoIP SetTimeout 5000
 waittestclass VoIP
 VoIP Stop Uplink
 VoIP Stop Dnlink
@@ -1275,72 +1587,97 @@
 waittestclass VoIP
 VoIP Close Uplink
 waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
 delete VoIP
 [Endtest]
 
-
-
 [Test]
-title  11. DataBuffer - 01. GetBufferType
+title  12. JB - 6. Loopback G729
 create VoIPAudioServicesTestClass VoIP
 VoIP CreateFactory
-VoIP CreateDownlinkStream
-VoIP SetDownlinkFormat G711
-VoIP GetBufferType
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat G729
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ConfigureJB
+waittestclass VoIP
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat G729
+VoIP OpenUplink
+waittestclass VoIP
+VoIP Start Uplink
+VoIP Start Dnlink
+VoIP DelayUp
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Stop Dnlink
 VoIP Close Dnlink
 waittestclass VoIP
+VoIP Close Uplink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
 delete VoIP
 [Endtest]
 
-
-
-// Needs jitter buffer defined
-// Jitter Buffer Not Supported at this time.
-//[Test]
-//title  12. JitterBuffer - 01. ConfigureJB
-//create VoIPAudioServicesTestClass VoIP
-//VoIP CreateFactory
-//VoIP CreateDownlinkStream
-//VoIP ConfigureJB
-//delete VoIP
-//[Endtest]
-
-//[Test]
-//title  12. JitterBuffer - 02. ResetJitterBuffer
-//create VoIPAudioServicesTestClass VoIP
-//VoIP CreateFactory
-//VoIP CreateDownlinkStream
-//VoIP ResetJB
-//delete VoIP
-//[Endtest]
+[Test]
+title  12. JB - 7. Loopback iLBC
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat iLBC
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ConfigureJB
+waittestclass VoIP
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat iLBC
+VoIP OpenUplink
+waittestclass VoIP
+VoIP Start Uplink
+VoIP Start Dnlink
+VoIP ResetJB
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP Close Uplink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
 
-//[Test]
-//title  12. JitterBuffer - 03. DelayDown
-//create VoIPAudioServicesTestClass VoIP
-//VoIP CreateFactory
-//VoIP CreateDownlinkStream
-//VoIP DelayDown
-//delete VoIP
-//[Endtest]
+[Test]
+title  12. JB - 8. Loopback AMR-NB
+create VoIPAudioServicesTestClass VoIP
+VoIP CreateFactory
+VoIP CreateDownlinkStreamJB
+VoIP SetDownlinkFormat AMR-NB
+VoIP OpenDownlink JbBuf
+waittestclass VoIP
+VoIP ConfigureJB
+waittestclass VoIP
+VoIP CreateUplinkStream
+VoIP SetUplinkFormat AMR-NB
+VoIP OpenUplink
+waittestclass VoIP
+VoIP Start Uplink
+VoIP Start Dnlink
+VoIP SetTimeout 5000
+waittestclass VoIP
+VoIP Stop Uplink
+VoIP Stop Dnlink
+VoIP Close Dnlink
+waittestclass VoIP
+VoIP Close Uplink
+waittestclass VoIP
+VoIP SetTimeout 2000
+waittestclass VoIP
+delete VoIP
+[Endtest]
 
-//[Test]
-//title  12. JitterBuffer - 04. DelayUp
-//create VoIPAudioServicesTestClass VoIP
-//VoIP CreateFactory
-//VoIP CreateDownlinkStream
-//VoIP DelayUp
-//delete VoIP
-//[Endtest]
-
-
-
-
-
-#[Test]
-#title  ExampleL 
-#create VoIPAudioServicesTestClass VoIP
-#VoIP Example
-#delete VoIP
-#[Endtest]
-
-
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/VoIPAudioServicesTestClass.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/VoIPAudioServicesTestClass.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies). 
+ * Copyright (c) 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"
@@ -11,7 +11,7 @@
  *
  * Contributors:
  *
- * Description: voip audio service -  
+ * Description: voip audio service - Stif test
  *
  */
 
@@ -20,10 +20,8 @@
 TARGET          VoIPAudioServicesTestClass.dll
 TARGETTYPE      dll
 UID             0x1000008D 0x101FB3E3
-
-CAPABILITY      ALL -TCB
-
-DEFFILE         VoIPAudioServicesTestClass.def
+CAPABILITY      All -Tcb
+VENDORID        VID_DEFAULT
 
 SOURCEPATH      ../src
 SOURCE          VoIPAudioServicesTestClass.cpp
@@ -43,8 +41,7 @@
 LIBRARY         efsrv.lib  // File server session for database
 LIBRARY         VoIPAudioIntfc.lib
 
-LANG            SC
+DEFFILE         VoIPAudioServicesTestClass.def
 
 SMPSAFE
 
-// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/VoIPAudioServicesTestClass.pkg	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,40 @@
+;
+; 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: VoIP Audio Service - STIF Test
+;
+
+;languages
+&EN
+
+;Header
+#{"VoIPAudioServicesTestClass"},(0x10005942),1,0,0
+
+;Localised Vendor name
+%{"VoIPAudioServicesTestClass"}
+
+;Unique Vendor name
+:"Nokia"
+
+;Files to install
+
+"/epoc32/release/armv5/urel/VoIPAudioServicesTestClass.dll"-"c:/Sys/Bin/VoIPAudioServicesTestClass.dll"
+
+; Including testframework.ini in the package may cause installation failure if another
+; copy of this file is already found in the destination folder. If this happens, remove
+; this file from the package and copy it manually.
+;"../../init/TestFramework.ini"-"c:/Testframework/TestFramework.ini"
+"../../init/VoIPAudioServicesTestClass.ini"-"c:/Testframework/VoIPAudioServicesTestClass.ini"
+"../../conf/VoIPAudioServicesTestClass.cfg"-"c:/Testframework/VoIPAudioServicesTestClass.cfg"
+"../../data/NokiaTest.aac"-"c:/data/sounds/digital/NokiaTest.aac"
+
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -1,61 +1,30 @@
 /*
-* Copyright (c) 2002 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: voip audio service -  
-*
-*/
-
-
+ * Copyright (c) 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"
+ * 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: voip audio service - Stif Test
+ *
+ */
 
 PRJ_PLATFORMS
-// specify the platforms your component needs to be built for here
-// defaults to WINS MARM so you can ignore this if you just build these
 DEFAULT
 
+PRJ_TESTMMPFILES
+VoIPAudioServicesTestClass.mmp
+
 PRJ_TESTEXPORTS
-// NOTE: If using ARS requirements all export operations should be done under this.
-// 'abld test export'
-
-PRJ_EXPORTS
-// Specify the source file followed by its destination here
-// copy will be used to copy the source file to its destination
-// If there's no destination then the source file will be copied
-// to the same name in /epoc32/include
-// Example: 
-/*
-/agnmodel/inc/AGMCOMON.H
-*/
-
-PRJ_TESTMMPFILES
-// NOTE: If using ARS requirements .mmp file operation should be done under this.
-// 'abld test build'
+//VoIPAudioServicesTest.iby CORE_MW_LAYER_IBY_EXPORT_PATH(VoIPAudioServicesTest.iby)
+//../../conf/VoIPAudioServicesTestClass.cfg  /epoc32/winscw/c/TestFramework/VoIPAudioServicesTestClass.cfg
+//../../init/VoIPAudioServicesTestClass.ini  /epoc32/winscw/c/TestFramework/VoIPAudioServicesTestClass.ini
+//../../init/testframework.ini               /epoc32/data/z/system/data/TestFramework.ini
+//../../data/test_8khz.wav                   /epoc32/winscw/c/testing/data/test_8khz.wav
 
-VoIPAudioServicesTestClass.mmp
-
-PRJ_MMPFILES
-// Specify the .mmp files required for building the important component
-// releasables.
-//
-// Specify "tidy" if the component you need to build doesn't need to be
-// released. Specify "ignore" if the MMP file exists but should be
-// ignored.
-// Example:
-/*
-/agnmodel/group/agnmodel.mmp
-#if defined(MARM)
-/agnmodel/group/agsvexe.mmp
-#endif
-*/
-
-
-//  End of File
\ No newline at end of file
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/TimeoutController.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/TimeoutController.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,136 +1,106 @@
 /*
-* Copyright (c) 2006 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: voip audio service -  Simple player for preemption purposes
-*
-*/
+ * 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: Voip Audio Service - Stif test
+ *
+ */
 
+#ifndef TIMEOUTCONTROLLER_H
+#define TIMEOUTCONTROLLER_H
 
 #include <e32svr.h>
 #include <StifParser.h>
 #include <StifLogger.h>
 #include <Stiftestinterface.h>
 
-
 /* This class is used to notify the observer
-*  about the timeout
-*/
+ *  about the timeout
+ */
 class MTimeoutObserver
-{
-    public: // New functions
-
+    {
+public:
     /**
-    * Timeout
-    */
+     * Timeout
+     */
     virtual void HandleTimeout(TInt error) = 0;
-};
-
+    };
 
 _LIT(KFormatTimeStamp, "%:0%J%:1%T%:2%S%.%*C4%:3%+B");
 
-
 /* This class is used for extra time controlling
-*  The STIF timeout isn't enough
-*/
+ *  The STIF timeout isn't enough
+ */
 class CSimpleTimeout : public CActive
-{
-    public:     // Enumerations
-    // None
-
-    private:    // Enumerations
-    // None
-
-    public:     // Constructors and destructor
+    {
+public:
 
     /**
-    * Two-phased constructor.
-    */
-    static CSimpleTimeout* NewL( MTimeoutObserver* aObserver, CStifLogger* aLogger);
+     * Two-phased constructor.
+     */
+    static CSimpleTimeout* NewL(MTimeoutObserver* aObserver,
+            CStifLogger* aLogger);
 
     /**
-    * Destructor.
-    */
+     * Destructor.
+     */
     ~CSimpleTimeout();
 
-    public:     // New functions
-
     /**
-    * Starts timeout counting
-    */
+     * Starts timeout counting
+     */
     void Start(TTimeIntervalMicroSeconds aTimeout);
 
     /**
-    * Cancel timeout counting
-    */
+     * Cancel timeout counting
+     */
     void Stop();
 
-
-    public:     // Functions from base classes
-
     /**
-    * RunL derived from CActive handles the completed requests.
-    */
+     * RunL derived from CActive handles the completed requests.
+     */
     void RunL();
 
     /**
-    * DoCancel derived from CActive handles the cancel
-    */
+     * DoCancel derived from CActive handles the cancel
+     */
     void DoCancel();
 
     /**
-    * RunError derived from CActive handles errors from active handler.
-    */
-    TInt RunError( TInt aError );
+     * RunError derived from CActive handles errors from active handler.
+     */
+    TInt RunError(TInt aError);
 
-    protected:  // New functions
-    // None
-
-    protected:  // Functions from base classes
-    // None
-
-    private:
+private:
 
     /**
-    * By default Symbian OS constructor is private.
-    */
+     * By default Symbian OS constructor is private.
+     */
     void ConstructL(MTimeoutObserver* aObserver, CStifLogger* aLogger);
 
     /**
-    * C++ constructor.
-    */
+     * C++ constructor.
+     */
     CSimpleTimeout();
 
-    public:     // Data
-    // None
-
-    protected:  // Data
-    // None
-
-    private:    // Data
-    MTimeoutObserver*   iObserver;
-    RTimer                        iTimer;
+private:
+    // Data
+    MTimeoutObserver* iObserver;
+    RTimer iTimer;
 
     // Storage for testcase timeout.
-    TTime                       iTestCaseTimeout;
-    CStifLogger*                iLog;
-
-    public:     // Friend classes
-    // None
+    TTime iTestCaseTimeout;
+    CStifLogger* iLog;
+    };
 
-    protected:  // Friend classes
-    // None
+#endif //TIMEOUTCONTROLLER_H
 
-    private:    // Friend classes
-    // None
-
-};
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/VoIPAudioServicesTestClass.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/VoIPAudioServicesTestClass.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,25 +1,22 @@
 /*
-* Copyright (c) 2002-2008 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: voip audio service -
-*
-*/
+ * 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: voip audio service - Stif test
+ *
+ */
 
-
-//#define __JITTER_BUFFER_TEST__
-
-#ifndef CVoIPAudioServicesTestClass_H
-#define CVoIPAudioServicesTestClass_H
+#ifndef VOIPAUDIOSERVICESTESTCLASS_H
+#define VOIPAUDIOSERVICESTESTCLASS_H
 
 //  INCLUDES
 #include <StifLogger.h>
@@ -41,46 +38,38 @@
 #include <VoIPDtmfTonePlayer.h>
 #include <VoIPRingTonePlayer.h>
 #include <VoIPRingToneFactory.h>
-
-#ifdef __JITTER_BUFFER_TEST__
 #include <VoIPJitterBufferIntfc.h>
-#endif //__JITTER_BUFFER_TEST__
-
-
-
 #include "TimeoutController.h"
 
-
 // CONSTANTS
-const TInt KErrBadTestParameter= -1000;         // Error on configuration file
+const TInt KErrBadTestParameter = -1000; // Error on configuration file
 
-const TInt KErrEventPending =-2000;             // Timeout and not callback
-const TInt KErrCallbackErrorCode = -2001;       // Callback return error code
-const TInt KErrUnexpectedValue =-2002;          // Unexpected value at setting
-const TInt KErrTimeoutController = -2007;       // Unexpected notification
+const TInt KErrEventPending = -2000; // Timeout and not callback
+const TInt KErrCallbackErrorCode = -2001; // Callback return error code
+const TInt KErrUnexpectedValue = -2002; // Unexpected value at setting
+const TInt KErrTimeoutController = -2007; // Unexpected notification
 
 const TInt KShortTimeout = 2000;
 const TInt KMediumTimeout = 4000;
-const TInt KLongTimeout = 100000;
+const TInt KLongTimeout = 10000;
 
-#ifdef __JITTER_BUFFER_TEST__
 const TUint KDefaultSampleRateInkHz = 8; // for sequence number calculation
 const TUint KMaxSeqNumber = 0xFFFF; //65535
-#endif //__JITTER_BUFFER_TEST__
-
 
 _LIT( KMsgBadTestParameters, "[Error] No valid test case parameters");
-
-// General
 _LIT( KTagG711, "G711");
+_LIT( KTagG711_10MS, "G711_10MS");
 _LIT( KTagG729, "G729");
 _LIT( KTagILBC, "iLBC");
 _LIT( KTagAMRNB, "AMR-NB");
 _LIT( KTagPCM16, "PCM16");
+_LIT( KTagNULL, "NULL");
 _LIT( KTagHandset, "Handset");
 _LIT( KTagLoudSpeaker, "LoudSpeaker");
 _LIT( KTagUplink, "Uplink");
 _LIT( KTagDnlink, "Dnlink");
+_LIT( KTagStdBuf, "StdBuf");
+_LIT( KTagJbBuf, "JbBuf");
 _LIT( KTagFile, "File");
 _LIT( KTagRFile, "RFile");
 _LIT( KTagProfile, "Profile");
@@ -92,64 +81,41 @@
 _LIT( KTag20ms, "20ms");
 _LIT( KTag30ms, "30ms");
 _LIT( KTagFile1, "File1");
-_LIT( KTagFile2, "File2");
 
-
-
-// MACROS
-//#define ?macro ?macro_def
-// Logging path
 #ifdef __WINSCW__
-_LIT( KVoIPAudioServicesTestClassLogPath, "\\logs\\testframework\\" );
-_LIT16(KTestFile1, "\\testing\\data\\alarm 1.aac");
-_LIT16(KTestFile2, "\\testing\\data\\alarm.aac");
-_LIT16(KTestFile3, "\\testing\\data\\test_8khz.wav");
+_LIT(KVoIPAudioServicesTestClassLogPath, "\\logs\\testframework\\");
 #else
-_LIT( KVoIPAudioServicesTestClassLogPath, "e:\\testing\\Log\\" );
-_LIT16(KTestFile1, "c:\\testing\\data\\alarm 1.aac");
-_LIT16(KTestFile2, "c:\\testing\\data\\alarm.aac");
-_LIT16(KTestFile3, "c:\\testing\\data\\test_8khz.wav");
+// Note: The path must match setting in VoIPAudioServicesTestClass.ini
+_LIT(KVoIPAudioServicesTestClassLogPath, "e:\\"); //write to MMC
+//_LIT(KVoIPAudioServicesTestClassLogPath, "f:\\"); //write to MMC
 #endif
 
-// Log file
+_LIT16(KTestFile1, "C:\\Data\\Sounds\\Digital\\NokiaTest.aac");
 _LIT( KVoIPAudioServicesTestClassLogFile, "CVoIPAudioServicesTestClass.txt" );
-_LIT8(KMimetypeAAC, "audio/aac");
 _LIT8(KMimetypeWAV, "audio/wav");
+
 const TUint KTonesBufSize = 6;
 const TUint KMimeStringSize = 32;
 
 // FORWARD DECLARATIONS
 class CVoIPAudioServicesTestClass;
 class CVoIPDataBuffer;
-#ifdef __JITTER_BUFFER_TEST__
 class CVoIPJBDataBuffer;
-#endif //__JITTER_BUFFER_TEST__
-
-
 
 // CLASS DECLARATION
 
 /**
-*  CRadioUtilityTestClass test class for STIF Test Framework TestScripter.
-*  ?other_description_lines
-*
-*  @lib ?library
-*  @since Series60_3_2
-*/
-NONSHARABLE_CLASS(CVoIPAudioServicesTestClass) :
-                        public CScriptBase,
-                        public MTimeoutObserver,
-                        public MVoIPDownlinkObserver,
-                        public MVoIPUplinkObserver,
-                        public MVoIPFormatObserver,
-                        public MRingToneObserver,
-                        public MDTMFToneObserver
-#ifdef __JITTER_BUFFER_TEST__
-                        , public MVoIPJitterBufferObserver
-#endif //__JITTER_BUFFER_TEST__
-
+ *  CRadioUtilityTestClass test class for STIF Test Framework TestScripter.
+ */
+NONSHARABLE_CLASS(CVoIPAudioServicesTestClass) : public CScriptBase,
+        public MTimeoutObserver,
+        public MVoIPDownlinkObserver,
+        public MVoIPUplinkObserver,
+        public MVoIPFormatObserver,
+        public MRingToneObserver,
+        public MDTMFToneObserver,
+        public MVoIPJitterBufferObserver
     {
-
     enum TAppState
         {
         ENotReady = 0,
@@ -157,415 +123,319 @@
         EStreaming
         };
 
-    public:  // Constructors and destructor
+public:
+    // Constructors and destructor
 
-        /**
-        * Two-phased constructor.
-        */
-        static CVoIPAudioServicesTestClass* NewL( CTestModuleIf& aTestModuleIf );
+    /**
+     * Two-phased constructor.
+     */
+    static CVoIPAudioServicesTestClass* NewL(CTestModuleIf& aTestModuleIf);
 
-        /**
-        * Destructor.
-        */
-        virtual ~CVoIPAudioServicesTestClass();
+    /**
+     * Destructor.
+     */
+    virtual ~CVoIPAudioServicesTestClass();
 
-        enum TVoIPExpectedEvent
+    enum TVoIPExpectedEvent
         {
-            EOpenDownlinkComplete,
-            EOpenUplinkComplete,
-            EDownlinkClosed,
-            EUplinkClosed,
-            EOpenCompleteDNL,
-            EOpenCompleteUPL,
-            EOpenComplete,
-            EPlaybackComplete,
-            EEmptyBuffer,
-            EFillBuffer,
-
+        EOpenDownlinkComplete,
+        EOpenUplinkComplete,
+        EDownlinkClosed,
+        EUplinkClosed,
+        EOpenCompleteDNL,
+        EOpenCompleteUPL,
+        EOpenComplete,
+        EPlaybackComplete,
+        EEmptyBuffer,
+        EFillBuffer,
+        EDownlinkError,
+        EUplinkError
         };
 
-    public: // New functions
-
-        /**
-        * ?member_description.
-        * @since ?Series60_version
-        * @param ?arg1 ?description
-        * @return ?description
-        */
-        //?type ?member_function( ?type ?arg1 );
-
-    public: // Functions from base classes
-
-        /**
-        * From CScriptBase Runs a script line.
-        * @since ?Series60_version
-        * @param aItem Script line containing method name and parameters
-        * @return Symbian OS error code
-        */
-        virtual TInt RunMethodL( CStifItemParser& aItem );
+public:
+    /**
+     * From CScriptBase Runs a script line.
+     * @param aItem Script line containing method name and parameters
+     * @return Symbian OS error code
+     */
+    virtual TInt RunMethodL(CStifItemParser& aItem);
 
-
-        // From MVoIPDownlinkObserver
-        virtual void FillBuffer(const CVoIPAudioDownlinkStream& aSrc,
-                            CVoIPDataBuffer* aBuffer);
-        virtual void Event(const CVoIPAudioDownlinkStream& aSrc,
-        					TInt aEventType,
-        					TInt aError);
+    // From MVoIPDownlinkObserver
+    virtual void FillBuffer(const CVoIPAudioDownlinkStream& aSrc,
+            CVoIPDataBuffer* aBuffer);
+    virtual void Event(const CVoIPAudioDownlinkStream& aSrc, TInt aEventType,
+            TInt aError);
 
-        // From MVoIPUplinkObserver
-        virtual void EmptyBuffer(const CVoIPAudioUplinkStream& aSrc,
-                             CVoIPDataBuffer* aBuffer);
-        virtual void Event(const CVoIPAudioUplinkStream& aSrc,
-                       		TInt aEventType,
-                       		TInt aError);
+    // From MVoIPUplinkObserver
+    virtual void EmptyBuffer(const CVoIPAudioUplinkStream& aSrc,
+            CVoIPDataBuffer* aBuffer);
+    virtual void Event(const CVoIPAudioUplinkStream& aSrc, TInt aEventType,
+            TInt aError);
 
-        // From MVoIPFormatObserver
-        virtual void Event(const CVoIPFormatIntfc& aSrc, TInt aEventType);
+    // From MVoIPFormatObserver
+    virtual void Event(const CVoIPFormatIntfc& aSrc, TInt aEventType);
 
-        // From MRingToneObserver
+    // From MRingToneObserver
 
-        /**
-	     * ?description
-	     *
-	     * @since S60 v5.0
-	     * @param CRingTonePlayer& - Ring tone player reference
-	     * @param TInt - Event type
-	     * @param TInt - Status
-	     * @return void
-	     */
-        virtual void Event(const CRingTonePlayer& aSrc,
-	                       TInt aEventType,
-	                       TInt aError);
+    /**
+     * @param CRingTonePlayer& - Ring tone player reference
+     * @param TInt - Event type
+     * @param TInt - Status
+     * @return void
+     */
+    virtual void Event(const CRingTonePlayer& aSrc, TInt aEventType,
+            TInt aError);
 
-        // From MDTMFToneObserver
+    // From MDTMFToneObserver
 
-        /**
-	     * ?description
-	     *
-	     * @since S60 v5.0
-	     * @param CDTMFTonePlayer& - DTMF tone player reference
-	     * @param TInt - Event type
-	     * @param TInt - Status
-	     * @return void
-	     */
-        virtual void Event(const CDTMFTonePlayer& aPlayer,
-	                       TInt aEventType,
-	                       TInt aError);
+    /**
+     * @param CDTMFTonePlayer& - DTMF tone player reference
+     * @param TInt - Event type
+     * @param TInt - Status
+     * @return void
+     */
+    virtual void Event(const CDTMFTonePlayer& aPlayer, TInt aEventType,
+            TInt aError);
 
-        // From MTimeoutObserver
+    // From MTimeoutObserver
 
-        /**
-        * @since ?Series60_version
-        * @param none
-        * Review if all the expected events have ocurred once the time is over
-        */
-        void HandleTimeout(TInt error);
+    /**
+     * @param none
+     * Review if all the expected events have ocurred once the time is over
+     */
+    void HandleTimeout(TInt error);
 
-#ifdef __JITTER_BUFFER_TEST__
-	// From MVoIPJitterBufferObserver
-	virtual void Event(const CVoIPJitterBufferIntfc& aSrc, TInt aEventType);
-#endif //__JITTER_BUFFER_TEST__
-
-
-    protected:  // New functions
+    // From MVoIPJitterBufferObserver
+    virtual void Event(const CVoIPJitterBufferIntfc& aSrc, TInt aEventType);
 
-        /**
-        * ?member_description.
-        * @since ?Series60_version
-        * @param ?arg1 ?description
-        * @return ?description
-        */
-        //?type ?member_function( ?type ?arg1 );
+protected:
+    // Functions from base classes
+
+private:
 
-    protected:  // Functions from base classes
-
-        /**
-        * From ?base_class ?member_description
-        */
-        //?type ?member_function();
-
-    private:
+    /**
+     * C++ default constructor.
+     */
+    CVoIPAudioServicesTestClass(CTestModuleIf& aTestModuleIf);
 
-        /**
-        * C++ default constructor.
-        */
-        CVoIPAudioServicesTestClass( CTestModuleIf& aTestModuleIf );
+    /**
+     * By default Symbian 2nd phase constructor is private.
+     */
+    void ConstructL();
 
-        /**
-        * By default Symbian 2nd phase constructor is private.
-        */
-        void ConstructL();
+    /**
+     * Frees all resources allocated from test methods.
+     */
+    void Delete();
 
-        // Prohibit copy constructor if not deriving from CBase.
-        // ?classname( const ?classname& );
-        // Prohibit assigment operator if not deriving from CBase.
-        // ?classname& operator=( const ?classname& );
-
-        /**
-        * Frees all resources allocated from test methods.
-        * @since ?Series60_version
-        */
-        void Delete();
+    /**
+     * Set an event as expected and set default timeout
+     */
+    void AddExpectedEvent(TVoIPExpectedEvent event, TInt ms);
 
-        /**
-        * Test methods are listed below.
-        */
+    /**
+     * Unset an event as expected
+     */
+    TBool RemoveExpectedEvent(TVoIPExpectedEvent event);
 
-        /**
-        * Example test method.
-        * @since ?Series60_version
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-
-        /**
-        * Set an event as expected and set default timeout
-        * @since ?Series60_version
-        */
-        void AddExpectedEvent(TVoIPExpectedEvent event, TInt ms);
+    /**
+     * @param none
+     * Removes all expected events
+     */
+    void RemoveAllExpectedEvents();
 
-
-        /**
-        * Unset an event as expected
-        * @since ?Series60_version
-        */
-        TBool RemoveExpectedEvent(TVoIPExpectedEvent event);
-
+    /**
+     * Verify that the event was expected, removes it from the list
+     * Signal the TestScripter with the returned error code
+     */
+    void ProcessEvent(TVoIPExpectedEvent aEvent, TInt aError);
 
-        /**
-        * @since ?Series60_version
-        * @param none
-        * Removes all expected events
-        */
-        void RemoveAllExpectedEvents();
+    /**
+     * Maps a event with a descriptor with its name
+     */
+    TPtrC EventName(TInt aKey);
 
-        /**
-        * Verify that the event was expected, removes it from the list
-        * Signal the TestScripter with the returned error code
-        * @since ?Series60_version
-        */
-        void ProcessEvent(TVoIPExpectedEvent aEvent, TInt aError);
+    /**
+     * Sets a timeout different since the default
+     * @param aItem Script line containing parameters.
+     * @return Symbian OS error code.
+     */
+    TInt SetTimeout(CStifItemParser& aItem);
 
-        /**
-        * Maps a event with a descriptor with its name
-        * @since ?Series60_version
-        */
-        TPtrC EventName( TInt aKey );
-
-        /*
-        * Test methods are listed below.
-        */
+    /**
+     *
+     * @param aItem Script line containing parameters.
+     * @return Symbian OS error code.
+     */
+    TInt SetExpectedEvents(CStifItemParser& aItem);
 
-        /**
-        * Sets a timeout different since the default
-        * @since Series60_3_2
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-        TInt SetTimeout( CStifItemParser& aItem );
+    /**
+     *
+     * @param aItem Script line containing parameters.
+     * @return Symbian OS error code.
+     */
+    TInt SetAllowedPanic(CStifItemParser& aItem);
 
-        /**
-        *
-        * @since Series60_3_2
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-        TInt SetExpectedEvents( CStifItemParser& aItem );
+    /**
+     * Connect to the default client to the server
+     * @param aItem Script line containing parameters.
+     * @return Symbian OS error code.
+     */
 
-        /**
-        *
-        * @since Series60_3_2
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-        TInt SetAllowedPanic( CStifItemParser& aItem );
-
-        /**
-        * Connect to the default client to the server
-        * @since ?Series60_version
-        * @param aItem Script line containing parameters.
-        * @return Symbian OS error code.
-        */
-
-        TInt ExampleL( CStifItemParser& aItem );
+    TInt CreateVoIPUtilityFactory(CStifItemParser& aItem);
+    TInt CreateRingToneFactory(CStifItemParser& aItem);
+    TInt CreateDownlinkStream(CStifItemParser& aItem);
+    TInt CreateDownlinkStreamJB(CStifItemParser& aItem);
+    TInt GetDownlinkVersion(CStifItemParser& aItem);
+    TInt CreateUplinkStream(CStifItemParser& aItem);
+    TInt GetUplinkVersion(CStifItemParser& aItem);
+    TInt CreateDTMFTonePlayer(CStifItemParser& aItem);
+    TInt CreateRingTonePlayer(CStifItemParser& aItem);
+    TInt GetSupportedDownlinkFormats(CStifItemParser& aItem);
+    TInt GetSupportedUplinkFormats(CStifItemParser& aItem);
+    TInt SetDownlinkFormat(CStifItemParser& aItem);
+    TInt SetUplinkFormat(CStifItemParser& aItem);
+    TInt OpenDownlink(CStifItemParser& aItem);
+    TInt OpenUplink(CStifItemParser& aItem);
 
-        TInt CreateVoIPUtilityFactory( CStifItemParser& aItem );
-        TInt CreateRingToneFactory( CStifItemParser& aItem );
-        TInt CreateDownlinkStream( CStifItemParser& aItem );
-        TInt GetDownlinkVersion( CStifItemParser& aItem );
-        TInt CreateUplinkStream( CStifItemParser& aItem );
-        TInt GetUplinkVersion( CStifItemParser& aItem );
-        TInt CreateDTMFTonePlayer( CStifItemParser& aItem );
-        TInt CreateRingTonePlayer( CStifItemParser& aItem );
-        TInt GetSupportedDownlinkFormats( CStifItemParser& aItem );
-        TInt GetSupportedUplinkFormats( CStifItemParser& aItem );
-        TInt SetDownlinkFormat( CStifItemParser& aItem );
-        TInt SetUplinkFormat( CStifItemParser& aItem );
-        TInt OpenDownlink( CStifItemParser& aItem );
-        TInt OpenUplink( CStifItemParser& aItem );
+    TInt Start(CStifItemParser& aItem);
+    TInt Stop(CStifItemParser& aItem);
+    TInt Close(CStifItemParser& aItem);
+    TInt Gain(CStifItemParser& aItem);
+    TInt Volume(CStifItemParser& aItem);
+    TInt SetDevice(CStifItemParser& aItem);
 
-        TInt Start( CStifItemParser& aItem );
-        TInt Stop( CStifItemParser& aItem );
-        TInt Close( CStifItemParser& aItem );
-        TInt Gain( CStifItemParser& aItem );
-        TInt Volume( CStifItemParser& aItem );
-        TInt SetDevice( CStifItemParser& aItem );
+    TInt InitDTMFTonePlayer(CStifItemParser& aItem);
+    TInt DTMFTonePlay(CStifItemParser& aItem);
+    TInt CloseDTMFPlayer(CStifItemParser& aItem);
+    TInt StopDTMFTonePlayer(CStifItemParser& aItem);
 
-        TInt InitDTMFTonePlayer( CStifItemParser& aItem );
-        TInt DTMFTonePlay( CStifItemParser& aItem );
-        TInt CloseDTMFPlayer( CStifItemParser& aItem );
-        TInt StopDTMFTonePlayer( CStifItemParser& aItem );
+    TInt InitRingTonePlayer(CStifItemParser& aItem);
+    TInt CloseRingTonePlayer(CStifItemParser& aItem);
+    TInt PlayRingTone(CStifItemParser& aItem);
+    TInt PauseRingTone(CStifItemParser& aItem);
+    TInt ResumeRingTone(CStifItemParser& aItem);
+    TInt StopRingTone(CStifItemParser& aItem);
+    TInt GetBufferType(CStifItemParser& aItem);
 
-        TInt InitRingTonePlayer( CStifItemParser& aItem );
-        TInt CloseRingTonePlayer( CStifItemParser& aItem );
-        TInt PlayRingTone( CStifItemParser& aItem );
-        TInt PauseRingTone( CStifItemParser& aItem );
-        TInt ResumeRingTone( CStifItemParser& aItem );
-        TInt StopRingTone( CStifItemParser& aItem );
-        TInt GetBufferType( CStifItemParser& aItem );
-
-        TInt GetSupportedBitrates( CStifItemParser& aItem );
-        TInt SetBitrate( CStifItemParser& aItem );
-        TInt GetBitrate( CStifItemParser& aItem );
-        TInt GetVAD( CStifItemParser& aItem );
-        TInt ToggleVAD( CStifItemParser& aItem );
-        TInt GetFrameMode( CStifItemParser& aItem );
-        TInt ToggleFrameMode( CStifItemParser& aItem );
-        TInt GetFrameModeRqrdForEC( CStifItemParser& aItem );
-        TInt ConcealErrForNextBuf( CStifItemParser& aItem );
-        TInt GetMode( CStifItemParser& aItem );
-        TInt SetMode( CStifItemParser& aItem );
-        TInt GetCNG( CStifItemParser& aItem );
-        TInt ToggleCNG( CStifItemParser& aItem );
-        TInt GetPLC( CStifItemParser& aItem );
-        TInt TogglePLC( CStifItemParser& aItem );
-        TInt BadLsfNextBuffer( CStifItemParser& aItem );
+    TInt GetSupportedBitrates(CStifItemParser& aItem);
+    TInt SetBitrate(CStifItemParser& aItem);
+    TInt GetBitrate(CStifItemParser& aItem);
+    TInt GetVAD(CStifItemParser& aItem);
+    TInt ToggleVAD(CStifItemParser& aItem);
+    TInt GetFrameMode(CStifItemParser& aItem);
+    TInt ToggleFrameMode(CStifItemParser& aItem);
+    TInt GetFrameModeRqrdForEC(CStifItemParser& aItem);
+    TInt ConcealErrForNextBuf(CStifItemParser& aItem);
+    TInt GetMode(CStifItemParser& aItem);
+    TInt SetMode(CStifItemParser& aItem);
+    TInt GetCNG(CStifItemParser& aItem);
+    TInt ToggleCNG(CStifItemParser& aItem);
+    TInt GetPLC(CStifItemParser& aItem);
+    TInt TogglePLC(CStifItemParser& aItem);
+    TInt BadLsfNextBuffer(CStifItemParser& aItem);
+    TInt BadLsfNextBuffer();
 
-        void DoLoopback();
-        void DisplayFormat(TVoIPCodecFormat aFormat);
-        void GetSupportedBitrates(RArray<TUint>& aBrArr);
-        void SetBitrate(TUint aBitrate);
-        void GetBitrate(TUint& aBitrate);
+    void DoLoopback();
+    void DisplayFormat(TVoIPCodecFormat aFormat);
+    TInt GetSupportedBitrates(RArray<TUint>& aBrArr);
+    TInt SetBitrate(TUint aBitrate);
+    TInt GetBitrate(TUint& aBitrate);
 
-        TInt ConfigEncAudDevice( CStifItemParser& aItem );
-
+    TInt ConfigEncAudDevice(CStifItemParser& aItem);
+    TInt SetLoopPlay(CStifItemParser& aItem);
+    TInt TestNullObjects(CStifItemParser& aItem);
 
-#ifdef __JITTER_BUFFER_TEST__
-        TInt ConfigureJB();
-        TInt ResetJB();
-        void DelayDown();
-        void DelayUp();
-#endif //__JITTER_BUFFER_TEST__
+    TInt ConfigureJB(CStifItemParser& aItem);
+    TInt ResetJB(CStifItemParser& aItem);
+    TInt DelayDown(CStifItemParser& aItem);
+    TInt DelayUp(CStifItemParser& aItem);
+    void DoJBLoopback();
 
-    public:     // Data
-        // ?one_line_short_description_of_data
-        //?data_declaration;
+private:
+    // Data
 
-    protected:  // Data
-        // ?one_line_short_description_of_data
-        //?data_declaration;
-
-    private:    // Data
+    // reference to TestModuleIf
+    CTestModuleIf& iTestModuleIf;
 
-    	// reference to TestModuleIf
-    	CTestModuleIf& 				iTestModuleIf;
+    // Dn/Uplink, DTMF, Ring tone APIs
+    CVoIPUtilityFactory* iFactory;
+    CVoIPAudioDownlinkStream* iVoIPDnlink;
+    CVoIPAudioUplinkStream* iVoIPUplink;
+    CDTMFTonePlayer* iDTMFTonePlayerDn;
+    CDTMFTonePlayer* iDTMFTonePlayerUp;
+    CRingToneFactory* iRingToneFactory;
+    CRingTonePlayer* iRingTonePlayer;
 
-    	// Dn/Uplink, DTMF, Ring tone APIs
-    	CVoIPUtilityFactory*        iFactory;
-    	CVoIPAudioDownlinkStream*   iVoIPDnlink;
-    	CVoIPAudioUplinkStream*     iVoIPUplink;
-    	CDTMFTonePlayer*            iDTMFTonePlayerDn;
-    	CDTMFTonePlayer*            iDTMFTonePlayerUp;
-    	CRingToneFactory*           iRingToneFactory;
-    	CRingTonePlayer*            iRingTonePlayer;
-
-
-    	// Codec format APIs
-    	CVoIPFormatIntfc*           iDecFormatIntfc;
-    	CVoIPFormatIntfc*           iEncFormatIntfc;
+    // Codec format APIs
+    CVoIPFormatIntfc* iDecFormatIntfc;
+    CVoIPFormatIntfc* iEncFormatIntfc;
 
-    	CVoIPG711EncoderIntfc*      iG711EncFormatIntfc;
-    	CVoIPG711DecoderIntfc*      iG711DecFormatIntfc;
-    	CVoIPFormatIntfc*           iG729EncFormatIntfc;
-    	CVoIPG729DecoderIntfc*      iG729DecFormatIntfc;
-    	CVoIPILBCEncoderIntfc*      iILBCEncFormatIntfc;
-    	CVoIPILBCDecoderIntfc*      iILBCDecFormatIntfc;
-    	CVoIPFormatIntfc*           iAMRNBEncFormatIntfc;
-    	CVoIPFormatIntfc*           iAMRNBDecFormatIntfc;
-    	CVoIPFormatIntfc*           iPCM16EncFormatIntfc;
-    	CVoIPFormatIntfc*           iPCM16DecFormatIntfc;
+    CVoIPG711EncoderIntfc* iG711EncFormatIntfc;
+    CVoIPG711DecoderIntfc* iG711DecFormatIntfc;
+    CVoIPFormatIntfc* iG729EncFormatIntfc;
+    CVoIPG729DecoderIntfc* iG729DecFormatIntfc;
+    CVoIPILBCEncoderIntfc* iILBCEncFormatIntfc;
+    CVoIPILBCDecoderIntfc* iILBCDecFormatIntfc;
+    CVoIPFormatIntfc* iAMRNBEncFormatIntfc;
+    CVoIPFormatIntfc* iAMRNBDecFormatIntfc;
+    CVoIPFormatIntfc* iPCM16EncFormatIntfc;
+    CVoIPFormatIntfc* iPCM16DecFormatIntfc;
 
-#ifdef __JITTER_BUFFER_TEST__
-	    CVoIPJitterBufferIntfc*     iJBIntfc;
-	    CVoIPJBDataBuffer*          iPlayJBuf;
-	    TUint                       iSeqNum;
-	    TUint						iSeqNumIncrement;
-#endif //__JITTER_BUFFER_TEST__
+    CVoIPJitterBufferIntfc* iJBIntfc;
+    CVoIPJBDataBuffer* iPlayJBuf;
+    TUint iSeqNum;
+    TUint iSeqNumIncrement;
 
-	    // For internal app state control
-	    TAppState                   iDnLinkStatus;
-	    TAppState                   iUpLinkStatus;
-	    TVoIPCodecFormat            iDnLinkCodec;
-	    TVoIPCodecFormat            iUpLinkCodec;
+    // For internal app state control
+    TAppState iDnLinkStatus;
+    TAppState iUpLinkStatus;
+    TVoIPCodecFormat iDnLinkCodec;
+    TVoIPCodecFormat iUpLinkCodec;
 
-	    // For storing codec configuration locally
-	    TBool               iPlc;
-	    TBool               iCng;
-	    TBool               iVad;
-	    TBool               iFrameMode;
-	    TBool               iFrameModeReqEC;
-	    TBool               iSpkr;
-	    TInt                iMaxGain;
-	    TInt                iGain;
-	    TInt                iMaxVolume;
-	    TInt                iVolume;
-	    TUint               iBitrate;
-	    RArray<TUint>       iBitratesArray;
-	    TInt 								loopbackCount;
+    // For storing codec configuration locally
+    TBool iPlc;
+    TBool iCng;
+    TBool iVad;
+    TBool iFrameMode;
+    TBool iFrameModeReqEC;
+    TBool iSpkr;
+    TInt iMaxGain;
+    TInt iGain;
+    TInt iMaxVolume;
+    TInt iVolume;
+    TUint iBitrate;
+    RArray<TUint> iBitratesArray;
 
-	    // For streaming buffer control
-	    CVoIPDataBuffer*    iPlayBuf;
-	    CVoIPDataBuffer*		iRecBuf;
-	    TPtr8               iPlayBufPtr;
-	    TPtr8               iRecBufPtr;
-
-	    TBool               iPlayBufReady;
-	    TBool               iRecBufReady;
-
-	    // For ring tone playback
-	    RFile               iRTFile;
-	    RFs                 iFs;
+    // For streaming buffer control
+    CVoIPDataBuffer* iPlayBuf;
+    CVoIPDataBuffer* iRecBuf;
+    TPtr8 iPlayBufPtr;
+    TPtr8 iRecBufPtr;
 
-
-
-	    // Active object with a timer to timeout the test case
-	    CSimpleTimeout * iTimeoutController;
+    TBool iPlayBufReady;
+    TBool iRecBufReady;
 
-	    // Indicates if the test case use a normal exit reason
-	    TBool iNormalExitReason;
+    // For ring tone playback
+    RFile iRTFile;
+    RFs iFs;
 
-	    // List of expected events
-	    RArray<TVoIPExpectedEvent> iExpectedEvents;
-
-	    // List of notification event (by the callback)
-	    RArray<TVoIPExpectedEvent> iOcurredEvents;
+    // Active object with a timer to timeout the test case
+    CSimpleTimeout * iTimeoutController;
 
-	    CActiveSchedulerWait* iActive;
-        // ?one_line_short_description_of_data
-        //?data_declaration;
+    // Indicates if the test case use a normal exit reason
+    TBool iNormalExitReason;
 
-        // Reserved pointer for future extension
-        //TAny* iReserved;
+    // List of expected events
+    RArray<TVoIPExpectedEvent> iExpectedEvents;
 
-    public:     // Friend classes
-        //?friend_class_declaration;
-    protected:  // Friend classes
-        //?friend_class_declaration;
-    private:    // Friend classes
-        //?friend_class_declaration;
+    // List of notification event (by the callback)
+    RArray<TVoIPExpectedEvent> iOcurredEvents;
 
+    CActiveSchedulerWait* iActive;
+    TInt iRecCounter;
+    TInt iPlayCounter;
+    TBool iLoopPlay;
     };
 
-#endif      // CVoIPAudioServicesTestClass_H
-
-// End of File
+#endif //VOIPAUDIOSERVICESTESTCLASS_H
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/debug.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/inc/debug.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2005 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: voip audio service -  Central place for nice debug-type macros & functions
-*
-*/
-
+ * 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: Telephony Multimedia Service - STIF TEST
+ *
+ */
 
 #ifndef DEBUG_H
 #define DEBUG_H
@@ -24,12 +23,11 @@
 #define FTRACE(a) {a;}
 
 /**
-* Declare the FPrint function
-* @since Series 60 2.7
-* @return none
-*/
+ * Declare the FPrint function
+ * @return none
+ */
 inline void FPrint(const TRefByValue<const TDesC> aFmt, ...)
-{
+    {
     VA_LIST list;
     VA_START(list,aFmt);
     TInt tmpInt = VA_ARG(list, TInt);
@@ -39,7 +37,7 @@
     #ifdef _DEBUG
     RDebug::Print(aFmt, tmpInt, tmpInt2, tmpInt3);
     #endif
-}
+    }
 #endif // DEBUG_H
 
 // End of File
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.pkg	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,37 +0,0 @@
-;
-; 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: VoIP Audio Service - STIF Test
-;
-
-;languages
-&EN
-
-;Header
-#{"VoIPAudioServicesTestClass"},(0x10005942),1,0,0
-
-;Localised Vendor name
-%{"VoIPAudioServicesTestClass"}
-
-;Unique Vendor name
-:"Nokia"
-
-;Files to install
-
-"/epoc32/release/armv5/urel/VoIPAudioServicesTestClass.dll"-"c:/Sys/Bin/VoIPAudioServicesTestClass.dll"
-;"../../init/TestFramework.ini"-"c:/Testframework/TestFramework.ini"
-"../../conf/VoIPAudioServicesTestClass.cfg"-"c:/Testframework/VoIPAudioServicesTestClass.cfg"
-
-;"../../data/mmc/alarm 1.aac"-"e:/testing/data/alarm 1.aac"
-;"../../data/mmc/alarm.aac"-"e:/testing/data/alarm.aac"
-"../../data/mmc/test_8khz.wav"-"c:/testing/data/test_8khz.wav"
\ No newline at end of file
Binary file mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.sis has changed
Binary file mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/VoIPAudioServicesTestClass.sisx has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/sis/create_sis.bat	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,23 @@
+cls
+@echo off
+echo.
+
+rem Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+rem All rights reserved.
+rem This component and the accompanying materials are made available
+rem under the terms of the "Eclipse Public License v1.0"
+rem which accompanies this distribution, and is available
+rem at the URL "http://www.eclipse.org/legal/epl-v10.html".
+rem
+rem Initial Contributors:
+rem Nokia Corporation - initial contribution.
+rem
+rem Contributors:
+rem
+echo Description:  VAS Stif test package creation utility
+rem
+
+del VoIPAudioServicesTestClass.sis*
+makesis ..\group\VoIPAudioServicesTestClass.pkg VoIPAudioServicesTestClass.sis
+rem signsis VoIPAudioServicesTestClass.sis VoIPAudioServicesTestClass.sisx rd.crt rd.key
+
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/TimeoutController.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/TimeoutController.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,172 +1,159 @@
 /*
-* Copyright (c) 2008 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: voip audio service -
-*
-*/
-
-
+ * Copyright (c) 2008 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: voip audio service -
+ *
+ */
 
 #include "VoIPAudioServicesTestClass.h"
 #include "debug.h"
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
-
-Method: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Description: voip audio service - Default constructor
+ Method: CSimpleTimeout
 
-C++ default constructor can NOT contain any code, that
-might leave.
+ Description: voip audio service - Default constructor
 
-Parameters: None
+ C++ default constructor can NOT contain any code, that might leave.
 
-Return Values: None
+ Parameters: None
 
-Errors/Exceptions: None
-
-Status: Approved
+ Return Values: None
 
--------------------------------------------------------------------------------
-*/
-CSimpleTimeout::CSimpleTimeout() : CActive (CActive::EPriorityStandard)
-{
+ -------------------------------------------------------------------------------
+ */
+CSimpleTimeout::CSimpleTimeout() :
+    CActive(CActive::EPriorityStandard)
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::CSimpleTimeout")));
-}
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
-
-Method: ConstructL
+ Class: CSimpleTimeout
 
-Description: voip audio service - Symbian OS second phase constructor
+ Method: ConstructL
 
-Symbian OS default constructor can leave.
+ Description: voip audio service - Symbian OS second phase constructor
 
-Parameters:
+ Symbian OS default constructor can leave.
 
-Return Values: None
+ Parameters:
 
-Errors/Exceptions:
-
-Status: Approved
+ Return Values: None
 
--------------------------------------------------------------------------------
-*/
-void CSimpleTimeout::ConstructL( MTimeoutObserver* aObserver,
-CStifLogger* aLogger)
-{
+ -------------------------------------------------------------------------------
+ */
+void CSimpleTimeout::ConstructL(MTimeoutObserver* aObserver,
+        CStifLogger* aLogger)
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::ConstructL")));
     iObserver = aObserver;
     iLog = aLogger;
     iTimer.CreateLocal();
-    iTestCaseTimeout = 0;  // Initialize
+    iTestCaseTimeout = 0; // Initialize
 
     // Add to active scheduler
-    CActiveScheduler::Add ( this );
-}
+    CActiveScheduler::Add(this);
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: NewL
+ Method: NewL
 
-Description: voip audio service - Two-phased constructor.
-
-Parameters: const TTestReportOutput aReportOutput: in: Report output type
+ Description: voip audio service - Two-phased constructor.
 
-Return Values: CSimpleTimeout* : pointer to created object
+ Parameters: const TTestReportOutput aReportOutput: in: Report output type
 
-Errors/Exceptions: Leaves if memory allocation for object fails
-Leaves if ConstructL leaves
+ Return Values: CSimpleTimeout* : pointer to created object
 
-Status: Approved
+ Errors/Exceptions: Leaves if memory allocation for object fails
+ Leaves if ConstructL leaves
 
--------------------------------------------------------------------------------
-*/
-CSimpleTimeout* CSimpleTimeout::NewL( MTimeoutObserver* aTestClass,
-CStifLogger* aLogger)
-{
+ -------------------------------------------------------------------------------
+ */
+CSimpleTimeout* CSimpleTimeout::NewL(MTimeoutObserver* aTestClass,
+        CStifLogger* aLogger)
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::NewL")));
-    CSimpleTimeout* self = new ( ELeave ) CSimpleTimeout();
-    CleanupStack::PushL( self );
-    self->ConstructL( aTestClass, aLogger);
-    CleanupStack::Pop( self );
+    CSimpleTimeout* self = new (ELeave) CSimpleTimeout();
+    CleanupStack::PushL(self);
+    self->ConstructL(aTestClass, aLogger);
+    CleanupStack::Pop(self);
     return self;
-
-}
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: ~CSimpleTimeout
+ Method: ~CSimpleTimeout
 
-Description: voip audio service - Destructor.
+ Description: voip audio service - Destructor.
 
-Cancel request
+ Cancel request
 
-Parameters: None
+ Parameters: None
 
-Return Values: None
+ Return Values: None
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
+ -------------------------------------------------------------------------------
+ */
 CSimpleTimeout::~CSimpleTimeout()
-{
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::~CSimpleTimeout")));
     Cancel();
     iTimer.Close();
-}
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: Start
+ Method: Start
 
-Description: voip audio service - Start timeout counting
+ Description: voip audio service - Start timeout counting
 
-Parameters: None
+ Parameters: None
 
-Return Values: None
+ Return Values: None
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
+ -------------------------------------------------------------------------------
+ */
 void CSimpleTimeout::Start(TTimeIntervalMicroSeconds aTimeout)
-{
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::Start")));
     if (IsActive())
-    {
+        {
         Cancel();
-    }
+        }
 
     // Request timer
     TTime endTime;
@@ -187,59 +174,58 @@
     // Note: iTimer.After() method cannot use because there needed
     // TTimeIntervalMicroSeconds32 and it is 32 bit. So then cannot create
     // timeout time that is long enough. At() uses 64 bit value=>Long enough.
-    iTimer.At( iStatus, endTime );
+    iTimer.At(iStatus, endTime);
     SetActive();
-}
-
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: Start
+ Method: Start
 
-Description: voip audio service - Start timeout counting
+ Description: voip audio service - Start timeout counting
 
-Parameters: None
+ Parameters: None
 
-Return Values: None
+ Return Values: None
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
+ -------------------------------------------------------------------------------
+ */
 void CSimpleTimeout::Stop()
-{
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::Stop")));
     if (IsActive())
-    {
+        {
         Cancel();
+        }
     }
-}
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: RunL
+ Method: RunL
 
-Description: voip audio service - RunL handles completed timeouts.
+ Description: voip audio service - RunL handles completed timeouts.
 
-Parameters: None
+ Parameters: None
 
-Return Values: None
+ Return Values: None
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
+ -------------------------------------------------------------------------------
+ */
 void CSimpleTimeout::RunL()
-{
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::RunL")));
     iLog->Log(_L("CSimpleTimeout::RunL"));
     TTime timeout;
@@ -247,84 +233,83 @@
     // Handle the abort case when system time gets changed, but timeout is
     // still valid. All other cases should timeout since they invalidate the
     // logic of the timers.
-    if ( iStatus == KErrAbort)
-    {
-        if ( iTestCaseTimeout > timeout )
+    if (iStatus == KErrAbort)
         {
-            RDebug::Print( _L( "Absolute timer still valid. Restaring timer. iStatus: %d" ), iStatus.Int() );
+        if (iTestCaseTimeout > timeout)
+            {
+            RDebug::Print(_L( "Absolute timer still valid. Restaring timer. iStatus: %d" ),
+                    iStatus.Int());
             // Start new timer
             iStatus = KErrNone; // reset value
-            iTimer.At ( iStatus, iTestCaseTimeout );  // restart timer
+            iTimer.At(iStatus, iTestCaseTimeout); // restart timer
             SetActive();
-        }
+            }
         else
-        {
+            {
             // Absolute timer no longer valid. Must timeout.
             iLog->Log(_L("Absolute timeout no longer valid"));
             iObserver->HandleTimeout(KErrNone);
+            }
         }
-
-    }
     else
-    {
+        {
         // Status was not KErrAbort. Timing out!
         // iLog->Log(_L("CSimpleTimeout::RunL - Timeout !!"), iTimeout);
         iLog->Log(_L("Timing out"));
         iObserver->HandleTimeout(KErrNone);
+        }
     }
 
-}
-
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: DoCancel
+ Method: DoCancel
 
-Description: voip audio service - Cancel active request
+ Description: voip audio service - Cancel active request
 
-Parameters: None
+ Parameters: None
 
-Return Values: None
+ Return Values: None
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
+ -------------------------------------------------------------------------------
+ */
 void CSimpleTimeout::DoCancel()
-{
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::DoCancel")));
     iTimer.Cancel();
-}
+    }
 
 /*
--------------------------------------------------------------------------------
+ -------------------------------------------------------------------------------
 
-Class: CSimpleTimeout
+ Class: CSimpleTimeout
 
-Method: RunError
+ Method: RunError
 
-Description: voip audio service - Handle errors. Just let framework handle errors because
-RunL does not leave.
+ Description: Handle errors. Just let framework handle errors because
+ RunL does not leave.
 
-Parameters: TInt aError: in: Symbian OS error: Error code
+ Parameters: TInt aError: in: Symbian OS error: Error code
 
-Return Values: TInt: Symbian OS error code
+ Return Values: TInt: Symbian OS error code
 
-Errors/Exceptions: None
+ Errors/Exceptions: None
 
-Status: Approved
+ Status: Approved
 
--------------------------------------------------------------------------------
-*/
-TInt CSimpleTimeout::RunError( TInt aError )
-{
+ -------------------------------------------------------------------------------
+ */
+TInt CSimpleTimeout::RunError(TInt aError)
+    {
     FTRACE(FPrint(_L("CSimpleTimeout::RunError")));
     iLog->Log(_L("Timeout error %d"), aError);
     iObserver->HandleTimeout(aError);
     return aError;
-}
+    }
 
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClass.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClass.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,77 +1,24 @@
 /*
-* Copyright (c) 2002 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: voip audio service -
-*
-*/
-
-
+ * Copyright (c) 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"
+ * 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: voip audio service -
+ *
+ */
 
 // INCLUDE FILES
 #include <Stiftestinterface.h>
 #include "VoIPAudioServicesTestClass.h"
 
-// EXTERNAL DATA STRUCTURES
-//extern  ?external_data;
-
-// EXTERNAL FUNCTION PROTOTYPES
-//extern ?external_function( ?arg_type,?arg_type );
-
-// CONSTANTS
-//const ?type ?constant_var = ?constant;
-
-// MACROS
-//#define ?macro ?macro_def
-
-// LOCAL CONSTANTS AND MACROS
-//const ?type ?constant_var = ?constant;
-//#define ?macro_name ?macro_def
-
-// MODULE DATA STRUCTURES
-//enum ?declaration
-//typedef ?declaration
-
-// LOCAL FUNCTION PROTOTYPES
-//?type ?function_name( ?arg_type, ?arg_type );
-
-// FORWARD DECLARATIONS
-//class ?FORWARD_CLASSNAME;
-
-// ============================= LOCAL FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// ?function_name ?description.
-// ?description
-// Returns: ?value_1: ?description
-//          ?value_n: ?description_line1
-//                    ?description_line2
-// -----------------------------------------------------------------------------
-//
-/*
-?type ?function_name(
-    ?arg_type arg,  // ?description
-    ?arg_type arg)  // ?description
-    {
-
-    ?code  // ?comment
-
-    // ?comment
-    ?code
-    }
-*/
-
-// ============================ MEMBER FUNCTIONS ===============================
-
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::CVoIPAudioServicesTestClass
 // C++ default constructor can NOT contain any code, that
@@ -79,21 +26,18 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPAudioServicesTestClass::CVoIPAudioServicesTestClass(
-    CTestModuleIf& aTestModuleIf ):
-    CScriptBase( aTestModuleIf ),
+        CTestModuleIf& aTestModuleIf) :
+    CScriptBase(aTestModuleIf),
     iTestModuleIf(aTestModuleIf),
-    iPlayBufPtr(0,0,0),
-    iRecBufPtr(0,0,0)
-{
-	iDnLinkCodec = ENULL;
-	iUpLinkCodec = ENULL;
-	iDnLinkStatus = ENotReady;
-	iUpLinkStatus = ENotReady;
-	loopbackCount = 1;
-	#ifdef __JITTER_BUFFER_TEST__
-	iSeqNum = 0;
-	#endif //__JITTER_BUFFER_TEST__
-}
+    iPlayBufPtr(0, 0, 0),
+    iRecBufPtr(0, 0, 0)
+    {
+    iDnLinkCodec = ENULL;
+    iUpLinkCodec = ENULL;
+    iDnLinkStatus = ENotReady;
+    iUpLinkStatus = ENotReady;
+    iSeqNum = 0;
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::ConstructL
@@ -101,15 +45,13 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::ConstructL()
-{
+    {
     iLog = CStifLogger::NewL(KVoIPAudioServicesTestClassLogPath,
-                          	 KVoIPAudioServicesTestClassLogFile,
-                             CStifLogger::ETxt,
-                             CStifLogger::EFile,
-                             EFalse );
+            KVoIPAudioServicesTestClassLogFile, CStifLogger::ETxt,
+            CStifLogger::EFile, EFalse);
 
-    iTimeoutController = CSimpleTimeout::NewL (this, iLog);
-}
+    iTimeoutController = CSimpleTimeout::NewL(this, iLog);
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::NewL
@@ -117,44 +59,36 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPAudioServicesTestClass* CVoIPAudioServicesTestClass::NewL(
-    CTestModuleIf& aTestModuleIf )
-{
-    CVoIPAudioServicesTestClass* self = new (ELeave) CVoIPAudioServicesTestClass( aTestModuleIf );
+        CTestModuleIf& aTestModuleIf)
+    {
+    CVoIPAudioServicesTestClass* self =
+            new (ELeave) CVoIPAudioServicesTestClass(aTestModuleIf);
 
-    CleanupStack::PushL( self );
+    CleanupStack::PushL(self);
     self->ConstructL();
     CleanupStack::Pop();
-
     return self;
-
-}
+    }
 
 // Destructor
 CVoIPAudioServicesTestClass::~CVoIPAudioServicesTestClass()
-{
-
+    {
     // Delete resources allocated from test methods
     Delete();
 
     // Delete logger
     delete iLog;
     delete iTimeoutController;
-}
-
-// ========================== OTHER EXPORTED FUNCTIONS =========================
+    }
 
 // -----------------------------------------------------------------------------
 // LibEntryL is a polymorphic Dll entry point.
+// Backpointer to STIF Test Framework
 // Returns: CScriptBase: New CScriptBase derived object
 // -----------------------------------------------------------------------------
 //
-EXPORT_C CScriptBase* LibEntryL(
-    CTestModuleIf& aTestModuleIf ) // Backpointer to STIF Test Framework
-{
+EXPORT_C CScriptBase* LibEntryL(CTestModuleIf& aTestModuleIf)
+    {
+    return (CScriptBase*) CVoIPAudioServicesTestClass::NewL(aTestModuleIf);
+    }
 
-    return ( CScriptBase* ) CVoIPAudioServicesTestClass::NewL( aTestModuleIf );
-
-}
-
-
-//  End of File
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,21 +1,19 @@
 /*
-* Copyright (c) 2002-2008 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: voip audio service -
-*
-*/
-
-
+ * Copyright (c) 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"
+ * 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: voip audio service -
+ *
+ */
 
 // INCLUDE FILES
 #include <e32svr.h>
@@ -24,57 +22,6 @@
 #include "VoIPAudioServicesTestClass.h"
 #include "debug.h"
 
-// EXTERNAL DATA STRUCTURES
-//extern  ?external_data;
-
-// EXTERNAL FUNCTION PROTOTYPES
-//extern ?external_function( ?arg_type,?arg_type );
-
-// CONSTANTS
-//const ?type ?constant_var = ?constant;
-
-// MACROS
-//#define ?macro ?macro_def
-
-// LOCAL CONSTANTS AND MACROS
-//const ?type ?constant_var = ?constant;
-//#define ?macro_name ?macro_def
-
-// MODULE DATA STRUCTURES
-//enum ?declaration
-//typedef ?declaration
-
-// LOCAL FUNCTION PROTOTYPES
-//?type ?function_name( ?arg_type, ?arg_type );
-
-// FORWARD DECLARATIONS
-//class ?FORWARD_CLASSNAME;
-
-// ============================= LOCAL FUNCTIONS ===============================
-
-// -----------------------------------------------------------------------------
-// ?function_name ?description.
-// ?description
-// Returns: ?value_1: ?description
-//          ?value_n: ?description_line1
-//                    ?description_line2
-// -----------------------------------------------------------------------------
-//
-/*
-?type ?function_name(
-    ?arg_type arg,  // ?description
-    ?arg_type arg)  // ?description
-    {
-
-    ?code  // ?comment
-
-    // ?comment
-    ?code
-    }
-*/
-
-// ============================ MEMBER FUNCTIONS ===============================
-
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Delete
 // Delete here all resources allocated and opened from test methods.
@@ -82,7 +29,7 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::Delete()
-{
+    {
 
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Delete")));
 
@@ -90,10 +37,11 @@
     iOcurredEvents.Close();
 
     iLog->Log(_L("Deleting test class..."));
-	iLog->Log(_L(""));
-	iLog->Log(_L(""));
+    iLog->Log(_L(""));
+    iLog->Log(_L(""));
 
-	iBitratesArray.Reset();
+    iBitratesArray.Reset();
+    iBitratesArray.Close();
 
     delete iG711DecFormatIntfc;
     delete iG711EncFormatIntfc;
@@ -111,133 +59,118 @@
     delete iDTMFTonePlayerDn;
     delete iDTMFTonePlayerUp;
 
-    delete iPlayBuf;
-
-#ifdef __JITTER_BUFFER_TEST__
     delete iJBIntfc;
-    delete iPlayJBuf;
-#endif //__JITTER_BUFFER_TEST__
+    delete iPlayBuf; //will also remove iPlayJBuf
 
-    if (iVoIPDnlink )
-    	{
+    if (iVoIPDnlink)
+        {
         if (iDnLinkStatus != ENotReady)
-        	{
+            {
             iVoIPDnlink->Close();
-        	}
+            }
         delete iVoIPDnlink;
         iVoIPDnlink = NULL;
-    	}
+        }
 
-    if (iVoIPUplink )
-    	{
+    if (iVoIPUplink)
+        {
         if (iUpLinkStatus != ENotReady)
-        	{
+            {
             iVoIPUplink->Close();
-        	}
+            }
         delete iVoIPUplink;
         iVoIPUplink = NULL;
-    	}
-
-    delete iFactory;
+        }
 
     delete iDecFormatIntfc;
     delete iEncFormatIntfc;
-}
+    delete iFactory;
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::RunMethodL
 // Run specified method. Contains also table of test mothods and their names.
 // -----------------------------------------------------------------------------
 //
-TInt CVoIPAudioServicesTestClass::RunMethodL( CStifItemParser& aItem )
-{
-
+TInt CVoIPAudioServicesTestClass::RunMethodL(CStifItemParser& aItem)
+    {
     static TStifFunctionInfo const KFunctions[] =
         {
         // Copy this line for every implemented function.
         // First string is the function name used in TestScripter script file.
         // Second is the actual implementation member function.
 
-        ENTRY( "SetTimeout", CVoIPAudioServicesTestClass::SetTimeout ),
-        ENTRY( "CreateFactory", CVoIPAudioServicesTestClass::CreateVoIPUtilityFactory ),
-        ENTRY( "CreateRingToneFactory", CVoIPAudioServicesTestClass::CreateRingToneFactory ),
-        ENTRY( "CreateDownlinkStream", CVoIPAudioServicesTestClass::CreateDownlinkStream ),
-        ENTRY( "CreateUplinkStream", CVoIPAudioServicesTestClass::CreateUplinkStream ),
-        ENTRY( "CreateDTMFTonePlayer", CVoIPAudioServicesTestClass::CreateDTMFTonePlayer ),
-        ENTRY( "CreateRingTonePlayer", CVoIPAudioServicesTestClass::CreateRingTonePlayer ),
-        ENTRY( "GetSupportedDownlinkFormats", CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats ),
-        ENTRY( "GetSupportedUplinkFormats", CVoIPAudioServicesTestClass::GetSupportedUplinkFormats ),
-        ENTRY( "SetDownlinkFormat", CVoIPAudioServicesTestClass::SetDownlinkFormat ),
-        ENTRY( "SetUplinkFormat", CVoIPAudioServicesTestClass::SetUplinkFormat ),
-        ENTRY( "OpenDownlink", CVoIPAudioServicesTestClass::OpenDownlink ),
-        ENTRY( "OpenUplink", CVoIPAudioServicesTestClass::OpenUplink ),
-        ENTRY( "Gain", CVoIPAudioServicesTestClass::Gain ),
-        ENTRY( "Volume", CVoIPAudioServicesTestClass::Volume ),
-        ENTRY( "SetDevice", CVoIPAudioServicesTestClass::SetDevice ),
-        ENTRY( "Close", CVoIPAudioServicesTestClass::Close ),
-        ENTRY( "Start", CVoIPAudioServicesTestClass::Start ),
-        ENTRY( "Stop", CVoIPAudioServicesTestClass::Stop ),
-        ENTRY( "InitDTMFTonePlayer", CVoIPAudioServicesTestClass::InitDTMFTonePlayer ),
-        ENTRY( "DTMFTonePlay", CVoIPAudioServicesTestClass::DTMFTonePlay ),
-        ENTRY( "CloseDTMFPlayer", CVoIPAudioServicesTestClass::CloseDTMFPlayer ),
-        ENTRY( "StopDTMFPlayer", CVoIPAudioServicesTestClass::StopDTMFTonePlayer ),
-        ENTRY( "GetDownlinkVersion", CVoIPAudioServicesTestClass::GetDownlinkVersion ),
-        ENTRY( "GetUplinkVersion", CVoIPAudioServicesTestClass::GetUplinkVersion ),
-        ENTRY( "InitRingTonePlayer", CVoIPAudioServicesTestClass::InitRingTonePlayer ),
-        ENTRY( "CloseRingTonePlayer", CVoIPAudioServicesTestClass::CloseRingTonePlayer ),
-        ENTRY( "PlayRingTone", CVoIPAudioServicesTestClass::PlayRingTone ),
-        ENTRY( "PauseRingTone", CVoIPAudioServicesTestClass::PauseRingTone ),
-        ENTRY( "ResumeRingTone", CVoIPAudioServicesTestClass::ResumeRingTone ),
-        ENTRY( "StopRingTone", CVoIPAudioServicesTestClass::StopRingTone ),
-        ENTRY( "GetSupportedBitrates", CVoIPAudioServicesTestClass::GetSupportedBitrates ),
-        ENTRY( "SetBitrate", CVoIPAudioServicesTestClass::SetBitrate ),
-        ENTRY( "GetBitrate", CVoIPAudioServicesTestClass::GetBitrate ),
-        ENTRY( "GetVAD", CVoIPAudioServicesTestClass::GetVAD ),
-        ENTRY( "ToggleVAD", CVoIPAudioServicesTestClass::ToggleVAD ),
-        ENTRY( "GetFrameMode", CVoIPAudioServicesTestClass::GetFrameMode ),
-        ENTRY( "ToggleFrameMode", CVoIPAudioServicesTestClass::ToggleFrameMode ),
-        ENTRY( "GetFrameModeRqrdForEC", CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC ),
-        ENTRY( "ConcealErrForNextBuf", CVoIPAudioServicesTestClass::ConcealErrForNextBuf ),
-        ENTRY( "GetMode", CVoIPAudioServicesTestClass::GetMode ),
-        ENTRY( "SetMode", CVoIPAudioServicesTestClass::SetMode ),
-        ENTRY( "GetCNG", CVoIPAudioServicesTestClass::GetCNG ),
-        ENTRY( "ToggleCNG", CVoIPAudioServicesTestClass::ToggleCNG ),
-        ENTRY( "GetPLC", CVoIPAudioServicesTestClass::GetPLC ),
-        ENTRY( "TogglePLC", CVoIPAudioServicesTestClass::TogglePLC ),
-        ENTRY( "BadLsfNextBuffer", CVoIPAudioServicesTestClass::BadLsfNextBuffer ),
-        ENTRY( "GetBufferType", CVoIPAudioServicesTestClass::GetBufferType ),
-
-        ENTRY( "ConfigEncAudDevice", CVoIPAudioServicesTestClass::ConfigEncAudDevice ),
-
-        ENTRY( "Example", CVoIPAudioServicesTestClass::ExampleL ),
-
-#ifdef __JITTER_BUFFER_TEST__
-        ENTRY( "ConfigureJB", CVoIPAudioServicesTestClass::ConfigureJB ),
-        ENTRY( "ResetJB", CVoIPAudioServicesTestClass::ResetJB ),
-        ENTRY( "DelayDown", CVoIPAudioServicesTestClass::DelayDown ),
-        ENTRY( "DelayUp", CVoIPAudioServicesTestClass::DelayUp ),
-#endif //__JITTER_BUFFER_TEST__
-
+        ENTRY("SetTimeout", CVoIPAudioServicesTestClass::SetTimeout),
+        ENTRY("CreateFactory", CVoIPAudioServicesTestClass::CreateVoIPUtilityFactory),
+        ENTRY("CreateRingToneFactory", CVoIPAudioServicesTestClass::CreateRingToneFactory),
+        ENTRY("CreateDownlinkStream", CVoIPAudioServicesTestClass::CreateDownlinkStream),
+        ENTRY("CreateDownlinkStreamJB", CVoIPAudioServicesTestClass::CreateDownlinkStreamJB),
+        ENTRY("CreateUplinkStream", CVoIPAudioServicesTestClass::CreateUplinkStream),
+        ENTRY("CreateDTMFTonePlayer", CVoIPAudioServicesTestClass::CreateDTMFTonePlayer),
+        ENTRY("CreateRingTonePlayer", CVoIPAudioServicesTestClass::CreateRingTonePlayer),
+        ENTRY("GetSupportedDownlinkFormats", CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats),
+        ENTRY("GetSupportedUplinkFormats", CVoIPAudioServicesTestClass::GetSupportedUplinkFormats),
+        ENTRY("SetDownlinkFormat", CVoIPAudioServicesTestClass::SetDownlinkFormat),
+        ENTRY("SetUplinkFormat", CVoIPAudioServicesTestClass::SetUplinkFormat),
+        ENTRY("OpenDownlink", CVoIPAudioServicesTestClass::OpenDownlink),
+        ENTRY("OpenUplink", CVoIPAudioServicesTestClass::OpenUplink),
+        ENTRY("Gain", CVoIPAudioServicesTestClass::Gain),
+        ENTRY("Volume", CVoIPAudioServicesTestClass::Volume),
+        ENTRY("SetDevice", CVoIPAudioServicesTestClass::SetDevice),
+        ENTRY("Close", CVoIPAudioServicesTestClass::Close),
+        ENTRY("Start", CVoIPAudioServicesTestClass::Start),
+        ENTRY("Stop", CVoIPAudioServicesTestClass::Stop),
+        ENTRY("SetLoopPlay", CVoIPAudioServicesTestClass::SetLoopPlay),
+        ENTRY("InitDTMFTonePlayer", CVoIPAudioServicesTestClass::InitDTMFTonePlayer),
+        ENTRY("DTMFTonePlay", CVoIPAudioServicesTestClass::DTMFTonePlay),
+        ENTRY("CloseDTMFPlayer", CVoIPAudioServicesTestClass::CloseDTMFPlayer),
+        ENTRY("StopDTMFPlayer", CVoIPAudioServicesTestClass::StopDTMFTonePlayer),
+        ENTRY("GetDownlinkVersion", CVoIPAudioServicesTestClass::GetDownlinkVersion),
+        ENTRY("GetUplinkVersion", CVoIPAudioServicesTestClass::GetUplinkVersion),
+        ENTRY("InitRingTonePlayer", CVoIPAudioServicesTestClass::InitRingTonePlayer),
+        ENTRY("CloseRingTonePlayer", CVoIPAudioServicesTestClass::CloseRingTonePlayer),
+        ENTRY("PlayRingTone", CVoIPAudioServicesTestClass::PlayRingTone),
+        ENTRY("PauseRingTone", CVoIPAudioServicesTestClass::PauseRingTone),
+        ENTRY("ResumeRingTone", CVoIPAudioServicesTestClass::ResumeRingTone),
+        ENTRY("StopRingTone", CVoIPAudioServicesTestClass::StopRingTone),
+        ENTRY("GetSupportedBitrates", CVoIPAudioServicesTestClass::GetSupportedBitrates),
+        ENTRY("SetBitrate", CVoIPAudioServicesTestClass::SetBitrate),
+        ENTRY("GetBitrate", CVoIPAudioServicesTestClass::GetBitrate),
+        ENTRY("GetVAD", CVoIPAudioServicesTestClass::GetVAD),
+        ENTRY("ToggleVAD", CVoIPAudioServicesTestClass::ToggleVAD),
+        ENTRY("GetFrameMode", CVoIPAudioServicesTestClass::GetFrameMode),
+        ENTRY("ToggleFrameMode", CVoIPAudioServicesTestClass::ToggleFrameMode),
+        ENTRY("GetFrameModeRqrdForEC", CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC),
+        ENTRY("ConcealErrForNextBuf", CVoIPAudioServicesTestClass::ConcealErrForNextBuf),
+        ENTRY("GetMode", CVoIPAudioServicesTestClass::GetMode),
+        ENTRY("SetMode", CVoIPAudioServicesTestClass::SetMode),
+        ENTRY("GetCNG", CVoIPAudioServicesTestClass::GetCNG),
+        ENTRY("ToggleCNG", CVoIPAudioServicesTestClass::ToggleCNG),
+        ENTRY("GetPLC", CVoIPAudioServicesTestClass::GetPLC),
+        ENTRY("TogglePLC", CVoIPAudioServicesTestClass::TogglePLC),
+        ENTRY("BadLsfNextBuffer", CVoIPAudioServicesTestClass::BadLsfNextBuffer),
+        ENTRY("GetBufferType", CVoIPAudioServicesTestClass::GetBufferType),
+        ENTRY("ConfigEncAudDevice", CVoIPAudioServicesTestClass::ConfigEncAudDevice),
+        ENTRY("ConfigureJB", CVoIPAudioServicesTestClass::ConfigureJB),
+        ENTRY("ResetJB", CVoIPAudioServicesTestClass::ResetJB),
+        ENTRY("DelayDown", CVoIPAudioServicesTestClass::DelayDown),
+        ENTRY("DelayUp", CVoIPAudioServicesTestClass::DelayUp),
+        ENTRY("TestNullObjects", CVoIPAudioServicesTestClass::TestNullObjects)
         };
 
-    const TInt count = sizeof( KFunctions ) /
-                        sizeof( TStifFunctionInfo );
-
-    return RunInternalL( KFunctions, count, aItem );
-
-}
-
+    const TInt count = sizeof(KFunctions) / sizeof(TStifFunctionInfo);
+    return RunInternalL(KFunctions, count, aItem);
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::EventName
 // Return descriptor with the notification description
 // -----------------------------------------------------------------------------
-TPtrC CVoIPAudioServicesTestClass::EventName( TInt aKey )
-{
-    static TText* const badKeyword = (TText*)L"BadKeyword";
+TPtrC CVoIPAudioServicesTestClass::EventName(TInt aKey)
+    {
+    static TText* const badKeyword = (TText*) L"BadKeyword";
     static TText* const keywords[] =
-    {
-
+        {
         (TText*)L"EOpenDownlinkComplete",
         (TText*)L"EOpenUplinkComplete",
         (TText*)L"EDownlinkClosed",
@@ -248,126 +181,128 @@
         (TText*)L"EPlaybackComplete",
         (TText*)L"EEmptyBuffer",
         (TText*)L"EFillBuffer",
-
-    };
-
-
+        (TText*)L"EDownlinkError",
+        (TText*)L"EUplinkError"
+        };
 
     if( (TUint)aKey >= (sizeof( keywords )/sizeof(TText*)) )
-    	{
+        {
         iLog->Log(_L("Keyword out of bounds"));
         TPtrC keyword( badKeyword );
         return keyword;
-    	}
+        }
     else
-    	{
+        {
         TPtrC keyword( keywords[aKey] );
         return keyword;
-    	}
-}
+        }
+    }
 
-// -----------------------------------------------------------------------------
-// CVoIPAudioServicesTestClass::AddExpectedEvent
-// Add an event to the expected events' list
-// -----------------------------------------------------------------------------
-void CVoIPAudioServicesTestClass::AddExpectedEvent(TVoIPExpectedEvent event, TInt ms)
-{
+    // -----------------------------------------------------------------------------
+    // CVoIPAudioServicesTestClass::AddExpectedEvent
+    // Add an event to the expected events' list
+    // -----------------------------------------------------------------------------
+void CVoIPAudioServicesTestClass::AddExpectedEvent(TVoIPExpectedEvent event,
+        TInt ms)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::AddExpectedEvent")));
     iExpectedEvents.Append(event);
     TPtrC eventName = EventName(event);
-    iLog->Log(_L("Adding expected event:(0x%02x)%S Total=%d"), event, &eventName, iExpectedEvents.Count() );
+    iLog->Log(_L("Adding expected event:(0x%02x)%S Total=%d"), event,
+            &eventName, iExpectedEvents.Count());
 
-    if ( iTimeoutController && !iTimeoutController->IsActive() )
-    	{
+    if (iTimeoutController && !iTimeoutController->IsActive())
+        {
         if (ms > 0)
             {
-            iTimeoutController->Start( TTimeIntervalMicroSeconds(ms * 1000) );
+            iTimeoutController->Start(TTimeIntervalMicroSeconds(ms * 1000));
             }
         else
             {
             iLog->Log(_L("Timeout with default value (1s)"));
-            iTimeoutController->Start( TTimeIntervalMicroSeconds(1000000) );
+            iTimeoutController->Start(TTimeIntervalMicroSeconds(1000000));
             }
-    	}
-}
+        }
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::RemoveExpectedEvent
 // Remove the indicated event from the expected events' list
 // -----------------------------------------------------------------------------
-TBool CVoIPAudioServicesTestClass::RemoveExpectedEvent(TVoIPExpectedEvent aEvent)
-{
+TBool CVoIPAudioServicesTestClass::RemoveExpectedEvent(
+        TVoIPExpectedEvent aEvent)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::RemoveExpectedEvent")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::RemoveExpectedEvent"));
     TBool match = EFalse;
-    for (TUint i=0; i < iExpectedEvents.Count() ; i++)
-    	{
+    for (TUint i = 0; i < iExpectedEvents.Count(); i++)
+        {
         if (iExpectedEvents[i] == aEvent)
-        	{
-        	iLog->Log(_L("Expeted events: %d"), iExpectedEvents.Count());
+            {
+            iLog->Log(_L("Expeted events: %d"), iExpectedEvents.Count());
             iExpectedEvents.Remove(i);
             match = ETrue;
             break;
-        	}
-    	}
+            }
+        }
 
     return match;
-}
-
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::RemoveAllExpectedEvents
 // Remove the indicated event from the expected events' list
 // -----------------------------------------------------------------------------
 void CVoIPAudioServicesTestClass::RemoveAllExpectedEvents()
-{
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::RemoveAllExpectedEvents")));
     iLog->Log(_L("Removing all expected events"));
 
     iExpectedEvents.Reset();
     iOcurredEvents.Reset();
-}
-
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::ProcessEvent
 // -----------------------------------------------------------------------------
-void CVoIPAudioServicesTestClass::ProcessEvent(TVoIPExpectedEvent aEvent, TInt aError)
-{
+void CVoIPAudioServicesTestClass::ProcessEvent(TVoIPExpectedEvent aEvent,
+        TInt aError)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ProcessExpectedEvent")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ProcessExpectedEvent"));
     TPtrC nameEvent = EventName(aEvent);
 
     if (aError == KErrNone)
-    	{
+        {
         if (RemoveExpectedEvent(aEvent))
-        	{
-            iLog->Log(_L("Expected Event: (0x%02x)%S has ocurred Total=%d"), aEvent, &nameEvent,iExpectedEvents.Count());
-        	}
+            {
+            iLog->Log(_L("Expected Event: (0x%02x)%S has ocurred Total=%d"),
+                    aEvent, &nameEvent, iExpectedEvents.Count());
+            }
         else
-        	{
+            {
             iLog->Log(_L("Event: (0x%02x)%S has ocurred"), aEvent, &nameEvent);
             return;
-        	}
+            }
 
-        if (iExpectedEvents.Count() == 0 )
-        	{
+        if (iExpectedEvents.Count() == 0)
+            {
             Signal();
             iTimeoutController->Cancel();
-        	}
-
-    	}
+            }
+        }
     else
-    	{
-        iLog->Log(_L("[Error] Event: (0x%02x)%S return with error code=%d"), aEvent, &nameEvent, aError);
-        if (iExpectedEvents.Count() != 0 )
-        	{
+        {
+        iLog->Log(_L("[Error] Event: (0x%02x)%S return with error code=%d"),
+                aEvent, &nameEvent, aError);
+        if (iExpectedEvents.Count() != 0)
+            {
             RemoveExpectedEvent(aEvent);
-        	}
+            }
         iTimeoutController->Cancel();
         Signal(KErrCallbackErrorCode);
-    	}
-}
+        }
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::HandleTimeout
@@ -375,29 +310,29 @@
 // -----------------------------------------------------------------------------
 
 void CVoIPAudioServicesTestClass::HandleTimeout(TInt aError)
-{
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::HandleTimeout")));
 
     if (aError != KErrNone)
-    	{
-        if (iExpectedEvents.Count() == 0 )
-        	{
+        {
+        if (iExpectedEvents.Count() == 0)
+            {
             iLog->Log(_L("Timing out but events have ocurred"));
             Signal();
-        	}
+            }
         else
-        	{
+            {
             RemoveAllExpectedEvents();
             iLog->Log(_L("Timing out and events still pending"));
             Signal(KErrEventPending);
-        	}
-    	}
+            }
+        }
     else
-    	{
+        {
         iLog->Log(_L("Timing out return a error %d"), aError);
         Signal(aError);
-    	}
-}
+        }
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::SetTimeout
@@ -406,136 +341,112 @@
 // It's used rather than the "timeout" keyword in the configuration file
 // because in this way the log continues
 // -----------------------------------------------------------------------------
-TInt CVoIPAudioServicesTestClass::SetTimeout( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetTimeout(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetTimeout")));
-    TInt timeout=0;
-    TInt error = aItem.GetNextInt(timeout) ;
-    if ( iTimeoutController )
-    	{
-        if ( timeout > 0 )
-        	{
-            iTimeoutController->Start( TTimeIntervalMicroSeconds(timeout*1000) );
-        	}
+    TInt timeout = 0;
+    TInt error = aItem.GetNextInt(timeout);
+    if (iTimeoutController)
+        {
+        if (timeout > 0)
+            {
+            iTimeoutController->Start(TTimeIntervalMicroSeconds(timeout *1000));
+            }
         else
-        	{
-            iTimeoutController->Start( TTimeIntervalMicroSeconds(1000000) );
-        	}
-    	}
+            {
+            iTimeoutController->Start(TTimeIntervalMicroSeconds(1000000));
+            }
+        }
     else
-    	{
+        {
         iLog->Log(_L("Timeout Controller doesn't exist"));
         error = KErrTimeoutController;
-    	}
-
+        }
     return error;
-}
-
+    }
 
 // -----------------------------------------------------------------------------
 // Uses the TestModuleBase API to allow a panic as exit reason for a test case
 // -----------------------------------------------------------------------------
-TInt CVoIPAudioServicesTestClass::SetAllowedPanic( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetAllowedPanic(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetAllowedPanic")));
     TInt error = KErrNone;
     TInt panicCode;
     TPtrC panicType;
-    if (  ( KErrNone == aItem.GetNextString(panicType) ) &&
-    ( KErrNone == aItem.GetNextInt(panicCode) )  )
-    	{
+    if ((KErrNone == aItem.GetNextString(panicType)) && (KErrNone
+            == aItem.GetNextInt(panicCode)))
+        {
         iLog->Log(_L("Allowing panic: %S %d"), &panicType, panicCode);
-        iTestModuleIf.SetExitReason( CTestModuleIf::EPanic, panicCode );
+        iTestModuleIf.SetExitReason(CTestModuleIf::EPanic, panicCode);
         iNormalExitReason = EFalse;
-    	}
+        }
     else
-    	{
+        {
         iLog->Log(KMsgBadTestParameters);
         error = KErrBadTestParameter;
-    	}
-
+        }
     return error;
-}
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::SetExpectedEvents()
 // -----------------------------------------------------------------------------
-TInt CVoIPAudioServicesTestClass::SetExpectedEvents( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetExpectedEvents(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetExpectedEvents")));
     TInt error = KErrNone;
-    TInt event=0;
-    while ( KErrNone == aItem.GetNextInt(event))
-    	{
-        AddExpectedEvent(static_cast<TVoIPExpectedEvent>(event), 0); // Default timeout value
-    	}
-
+    TInt event = 0;
+    while (KErrNone == aItem.GetNextInt(event))
+        {
+        // Default timeout value
+        AddExpectedEvent(static_cast<TVoIPExpectedEvent> (event), 0);
+        }
     return error;
-}
-
-
-// -----------------------------------------------------------------------------
-// CVoIPAudioServicesTestClass::ExampleL
-// Example test method function.
-// (other items were commented in a header).
-// -----------------------------------------------------------------------------
-//
-TInt CVoIPAudioServicesTestClass::ExampleL( CStifItemParser& aItem )
-{
+    }
 
-    // Print to UI
-    _LIT( KVoIPAudioServicesTestClass, "VoIPAudioServicesTestClass" );
-    _LIT( KExample, "In Example" );
-    TestModuleIf().Printf( 0, KVoIPAudioServicesTestClass, KExample );
-    // Print to log file
-    iLog->Log( KExample );
-
-    TInt i = 0;
-    TPtrC string;
-    _LIT( KParam, "Param[%i]: %S" );
-    while ( aItem.GetNextString ( string ) == KErrNone )
-        {
-        TestModuleIf().Printf( i, KVoIPAudioServicesTestClass, KParam, i, &string );
-        i++;
-        }
-
-    return KErrNone;
-}
-
-TInt CVoIPAudioServicesTestClass::CreateVoIPUtilityFactory( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::CreateVoIPUtilityFactory(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateFactory")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateFactory"));
     TInt error = KErrNone;
-
     error = CVoIPUtilityFactory::CreateFactory(iFactory);
-
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::CreateRingToneFactory( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::CreateRingToneFactory(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateRingToneFactory")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateRingToneFactory"));
     TInt error = KErrNone;
-
     error = CRingToneFactory::CreateFactory(iRingToneFactory);
-
     return error;
-}
+    }
 
-TInt CVoIPAudioServicesTestClass::CreateDownlinkStream( CStifItemParser& /*aItem */)
-{
-	iLog->Log(_L("MVoIPUplinkObserver::KOpenComplete: iUpLinkStatus = %d"), iUpLinkStatus);
-    FTRACE(FPrint(_L("MVoIPUplinkObserver::KOpenComplete: iUpLinkStatus = %d"), iUpLinkStatus));
+TInt CVoIPAudioServicesTestClass::CreateDownlinkStream(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateDownlinkStream")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateDownlinkStream"));
     TInt error = KErrNone;
-
     const TVersion ver(1, 0, 0);
 
-#ifdef __JITTER_BUFFER_TEST__
+    // Create DNL without JB interface
+    error = iFactory->CreateDownlinkStream(ver,
+            CVoIPUtilityFactory::EVoIPCall, iVoIPDnlink);
+    return error;
+    }
+
+TInt CVoIPAudioServicesTestClass::CreateDownlinkStreamJB(
+        CStifItemParser& /*aItem */)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateDownlinkStreamJB")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::CreateDownlinkStreamJB"));
+    TInt error = KErrNone;
+    const TVersion ver(1, 0, 0);
+
     // Create DNL with JB interface
     error = iFactory->CreateDownlinkStream(ver, iJBIntfc, iVoIPDnlink);
 
@@ -543,95 +454,89 @@
         {
         iJBIntfc->SetObserver(*this);
         }
-#else  //__JITTER_BUFFER_TEST__
-    // Create DNL without JB interface
-    error = iFactory->CreateDownlinkStream(ver,
-                                           CVoIPUtilityFactory::EVoIPCall,
-                                           iVoIPDnlink);
-#endif //__JITTER_BUFFER_TEST__
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::GetDownlinkVersion( CStifItemParser& /*aItem */)
-{
-	FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetDownlinkVersion")));
+TInt CVoIPAudioServicesTestClass::GetDownlinkVersion(
+        CStifItemParser& /*aItem */)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetDownlinkVersion")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetDownlinkVersion"));
     TInt error = KErrNone;
-
-    TVersion ver(0,0,0);
+    TVersion ver(0, 0, 0);
     error = iVoIPDnlink->GetVersion(ver);
-
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::CreateUplinkStream( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::CreateUplinkStream(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateUplinkStream")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateUplinkStream"));
     TInt error = KErrNone;
-
     const TVersion ver(1, 0, 0);
-    error = iFactory->CreateUplinkStream(ver,
-                                       CVoIPUtilityFactory::EVoIPCall,
-                                       iVoIPUplink);
+    error = iFactory->CreateUplinkStream(ver, CVoIPUtilityFactory::EVoIPCall,
+            iVoIPUplink);
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::GetUplinkVersion( CStifItemParser& /*aItem */)
-{
-	FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetUplinkVersion")));
+TInt CVoIPAudioServicesTestClass::GetUplinkVersion(
+        CStifItemParser& /*aItem */)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetUplinkVersion")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetUplinkVersion"));
     TInt error = KErrNone;
-
-    TVersion ver(0,0,0);
+    TVersion ver(0, 0, 0);
     error = iVoIPUplink->GetVersion(ver);
-
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::CreateDTMFTonePlayer( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::CreateDTMFTonePlayer(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateDTMFTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateDTMFTonePlayer"));
     TInt error = KErrNone;
-
-    if (iVoIPDnlink)
-    	{
-        error = iFactory->CreateDTMFTonePlayer(iDTMFTonePlayerDn);
-    	}
+    TPtrC startType;
+    error = aItem.GetNextString(startType);
 
-    if (iVoIPUplink)
-    	{
-    	error = iFactory->CreateDTMFTonePlayer(iDTMFTonePlayerUp);
-    	}
-
+    if (error == KErrNone)
+        {
+        if (startType == KTagUplink)
+            {
+            error = iFactory->CreateDTMFTonePlayer(iDTMFTonePlayerUp);
+            }
+        else if (startType == KTagDnlink)
+            {
+            error = iFactory->CreateDTMFTonePlayer(iDTMFTonePlayerDn);
+            }
+        else
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
+            }
+        }
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::CreateRingTonePlayer( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::CreateRingTonePlayer(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateRingTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CreateRingTonePlayer"));
     TInt error = KErrNone;
 
     if (iRingToneFactory)
-    	{
+        {
         error = iRingToneFactory->CreateRingTonePlayer(iRingTonePlayer);
-    	}
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetSupportedDownlinkFormats"));
     TInt error = KErrNone;
@@ -659,10 +564,11 @@
     formats.Close();
 
     return error;
-}
+    }
 
-TInt CVoIPAudioServicesTestClass::GetSupportedUplinkFormats( CStifItemParser& /*aItem */)
-{
+TInt CVoIPAudioServicesTestClass::GetSupportedUplinkFormats(
+        CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetSupportedUplinkFormats")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetSupportedUplinkFormats"));
     TInt error = KErrNone;
@@ -690,14 +596,10 @@
     formats.Close();
 
     return error;
-}
-
-
+    }
 
-
-
-TInt CVoIPAudioServicesTestClass::SetDownlinkFormat( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetDownlinkFormat(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetDownlinkFormat")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::SetDownlinkFormat"));
     TInt error = KErrNone;
@@ -705,185 +607,205 @@
     TPtrC decoderType;
     error = aItem.GetNextString(decoderType);
     if (error == KErrNone)
-    	{
+        {
         CVoIPFormatIntfc* formatIntfc = NULL;
 
-        // NOTE: We can now set either 10ms or 20ms G.711 frame;
-        //	 	 call GetSupportedDownlinkFormats() to see if it
-        //		 returns EG711 or EG711_10MS and set codec accordingly.
         if (decoderType == KTagG711)
-        	{
-        	error = iVoIPDnlink->SetFormat(EG711, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPDnlink->SetFormat(EG711, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iG711DecFormatIntfc)
-                	{
-                	delete iG711DecFormatIntfc;
-                	iG711DecFormatIntfc = NULL;
-                	}
+                    {
+                    delete iG711DecFormatIntfc;
+                    iG711DecFormatIntfc = NULL;
+                    }
 
-		            iG711DecFormatIntfc = (CVoIPG711DecoderIntfc*)formatIntfc;
-		            error = iG711DecFormatIntfc->SetObserver(*this);
-		            iDnLinkCodec = EG711;
-
-		            iLog->Log(_L("G.711 DNL Codec Set: error = %d"), error);
-        		}
-        	else
+                iG711DecFormatIntfc = (CVoIPG711DecoderIntfc*) formatIntfc;
+                error = iG711DecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EG711;
+                iLog->Log(_L("G.711 DNL Codec Set: error = %d"), error);
+                }
+            else
                 {
                 iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
+        else if (decoderType == KTagG711_10MS)
+            {
+            error = iVoIPDnlink->SetFormat(EG711_10MS, formatIntfc);
+            if (error == KErrNone)
+                {
+                if (iG711DecFormatIntfc)
+                    {
+                    delete iG711DecFormatIntfc;
+                    iG711DecFormatIntfc = NULL;
+                    }
+
+                iG711DecFormatIntfc = (CVoIPG711DecoderIntfc*) formatIntfc;
+                error = iG711DecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EG711_10MS;
+                iLog->Log(_L("G.711 10ms DNL Codec Set: error = %d"), error);
+                }
+            else
+                {
+                iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
+                }
+            }
         else if (decoderType == KTagG729)
-        	{
-        	error = iVoIPDnlink->SetFormat(EG729, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPDnlink->SetFormat(EG729, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iG729DecFormatIntfc)
-                	{
-		            delete iG729DecFormatIntfc;
-		            iG729DecFormatIntfc = NULL;
-		            }
+                    {
+                    delete iG729DecFormatIntfc;
+                    iG729DecFormatIntfc = NULL;
+                    }
 
-	            iG729DecFormatIntfc = (CVoIPG729DecoderIntfc*)formatIntfc;
-	            error = iG729DecFormatIntfc->SetObserver(*this);
-	            iDnLinkCodec = EG729;
+                iG729DecFormatIntfc = (CVoIPG729DecoderIntfc*) formatIntfc;
+                error = iG729DecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EG729;
 
-	            iLog->Log(_L("G.729 DNL Codec Set: error = %d"), error);
-        		}
-        	else
+                iLog->Log(_L("G.729 DNL Codec Set: error = %d"), error);
+                }
+            else
                 {
                 iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
         else if (decoderType == KTagILBC)
-        	{
-        	error = iVoIPDnlink->SetFormat(EILBC, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPDnlink->SetFormat(EILBC, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iILBCDecFormatIntfc)
-		            {
-		            delete iILBCDecFormatIntfc;
-		            iILBCDecFormatIntfc = NULL;
-		            }
+                    {
+                    delete iILBCDecFormatIntfc;
+                    iILBCDecFormatIntfc = NULL;
+                    }
+
+                iILBCDecFormatIntfc = (CVoIPILBCDecoderIntfc*) formatIntfc;
+                error = iILBCDecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EILBC;
 
-		            iILBCDecFormatIntfc = (CVoIPILBCDecoderIntfc*)formatIntfc;
-		            error = iILBCDecFormatIntfc->SetObserver(*this);
-		            iDnLinkCodec = EILBC;
+                iLog->Log(_L("iLBC DNL Codec Set: error = %d"), error);
+                }
+            else
+                {
+                iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
+                }
+            }
+        else if (decoderType == KTagAMRNB)
+            {
+            error = iVoIPDnlink->SetFormat(EAMR_NB, formatIntfc);
+            if (error == KErrNone)
+                {
+                if (iAMRNBDecFormatIntfc)
+                    {
+                    delete iAMRNBDecFormatIntfc;
+                    iAMRNBDecFormatIntfc = NULL;
+                    }
 
-		            iLog->Log(_L("iLBC DNL Codec Set: error = %d"), error);
-        		}
-        	else
+                iAMRNBDecFormatIntfc = formatIntfc;
+                error = iAMRNBDecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EAMR_NB;
+
+                iLog->Log(_L("AMR-NB DNL Codec Set: error = %d"), error);
+                }
+            else
                 {
                 iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
                 }
-        	}
-        else if (decoderType == KTagAMRNB)
-        	{
-        	error = iVoIPDnlink->SetFormat(EAMR_NB, formatIntfc);
-        	if (error == KErrNone)
-        		{
-                if (iAMRNBDecFormatIntfc)
-		            {
-		            delete iAMRNBDecFormatIntfc;
-		            iAMRNBDecFormatIntfc = NULL;
-		            }
+            }
+        else if (decoderType == KTagPCM16)
+            {
+            error = iVoIPDnlink->SetFormat(EPCM16, formatIntfc);
+            if (error == KErrNone)
+                {
+                if (iPCM16DecFormatIntfc)
+                    {
+                    delete iPCM16DecFormatIntfc;
+                    iPCM16DecFormatIntfc = NULL;
+                    }
 
-		            iAMRNBDecFormatIntfc = formatIntfc;
-		            error = iAMRNBDecFormatIntfc->SetObserver(*this);
-		            iDnLinkCodec = EAMR_NB;
+                iPCM16DecFormatIntfc = formatIntfc;
+                error = iPCM16DecFormatIntfc->SetObserver(*this);
+                iDnLinkCodec = EPCM16;
 
-		            iLog->Log(_L("AMR-NB DNL Codec Set: error = %d"), error);
-        		}
-        	else
+                iLog->Log(_L("PCM16 DNL Codec Set: error = %d"), error);
+                }
+            else
                 {
                 iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
                 }
-        	}
-        else if (decoderType == KTagPCM16)
-        	{
-        	error = iVoIPDnlink->SetFormat(EPCM16, formatIntfc);
-        	if (error == KErrNone)
-        		{
-                if (iPCM16DecFormatIntfc)
-		            {
-		            delete iPCM16DecFormatIntfc;
-		            iPCM16DecFormatIntfc = NULL;
-		            }
-
-		            iPCM16DecFormatIntfc = formatIntfc;
-		            error = iPCM16DecFormatIntfc->SetObserver(*this);
-		            iDnLinkCodec = EPCM16;
-
-		            iLog->Log(_L("PCM16 DNL Codec Set: error = %d"), error);
-        		}
-        	else
-                {
-                iLog->Log(_L("DNL Codec Setting Failed: error = %d"), error);
-                }
-        	}
+            }
+        else if (decoderType == KTagNULL)
+            {
+            error = iVoIPDnlink->SetFormat(ENULL, formatIntfc);
+            iLog->Log(_L("NULL DNL Codec Set: error = %d"), error);
+            }
         else
-        	{
+            {
             iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
             return error;
-        	}
-    	}
+            }
+        }
+
+    return error;
+    }
 
+TInt CVoIPAudioServicesTestClass::OpenDownlink(CStifItemParser& aItem)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::OpenDownlink")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::OpenDownlink"));
+    TInt error = KErrNone;
+
+    TPtrC bufType;
+    error = aItem.GetNextString(bufType);
     if (error == KErrNone)
         {
         delete iPlayBuf;
         iPlayBuf = NULL;
+        iPlayJBuf = NULL;
 
-#ifdef __JITTER_BUFFER_TEST__
-        iPlayJBuf = NULL;
-        if (iDnLinkCodec != EPCM16)
+        if (bufType == KTagJbBuf)
+            {
+            error = iFactory->CreateBuffer(iPlayBuf,
+                    CVoIPDataBuffer::EJitterBuffer, iDnLinkCodec);
+            iPlayJBuf = static_cast<CVoIPJBDataBuffer*> (iPlayBuf);
+            }
+        else
             {
-            iFactory->CreateBuffer(iPlayBuf,
-                                   CVoIPDataBuffer::EJitterBuffer,
-                                   iDnLinkCodec);
-            iPlayJBuf = static_cast<CVoIPJBDataBuffer*>(iPlayBuf);
+            error = iFactory->CreateBuffer(iPlayBuf,
+                    CVoIPDataBuffer::EStandard, iDnLinkCodec);
             }
-#else  //__JITTER_BUFFER_TEST__
-        iFactory->CreateBuffer(iPlayBuf,
-                               CVoIPDataBuffer::EStandard,
-                               iDnLinkCodec);
-#endif //__JITTER_BUFFER_TEST__
+        }
+
+    if (iDnLinkStatus == ENotReady && error == KErrNone)
+        {
+        error = iVoIPDnlink->Open(*this);
+        if (error == KErrNone)
+            {
+            iDnLinkStatus = EReady;
+            AddExpectedEvent(EOpenDownlinkComplete, KShortTimeout);
+            }
+        else
+            {
+            iLog->Log(_L("DNL open error: error = %d"), error);
+            }
+        }
+    else
+        {
+        iLog->Log(_L("DNL open error = %d"), error);
         }
 
     return error;
-}
-
-
-TInt CVoIPAudioServicesTestClass::OpenDownlink(CStifItemParser& /*aItem */ )
-{
-    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::OpenDownlink")));
-    iLog->Log(_L("CVoIPAudioServicesTestClass::OpenDownlink"));
-    TInt error = KErrNone;
+    }
 
-    if (iDnLinkStatus == ENotReady)
-    	{
-    	error = iVoIPDnlink->Open(*this);
-    	if (error != KErrNone)
-    		{
-            iLog->Log(_L("DNL open error: error = %d"), error);
-    		}
-    	else
-    		{
-      		iDnLinkStatus = EReady;
-            AddExpectedEvent(EOpenDownlinkComplete, KMediumTimeout);
-    		}
-    	}
-    else
-    	{
-    	iLog->Log(_L("DNL already open: error = %d"), KErrInUse);
-    	}
-
-  return error;
-}
-
-
-TInt CVoIPAudioServicesTestClass::SetUplinkFormat( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetUplinkFormat(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetUplinkFormat")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::SetUplinkFormat"));
     TInt error = KErrNone;
@@ -891,164 +813,182 @@
     TPtrC encoderType;
     error = aItem.GetNextString(encoderType);
     if (error == KErrNone)
-    	{
+        {
         CVoIPFormatIntfc* formatIntfc = NULL;
         if (encoderType == KTagG711)
-        	{
-		    // NOTE: We can now set either 10ms or 20ms G.711 frame;
-		    //	 	 call GetSupportedDownlinkFormats() to see if it
-		    //		 returns EG711 or EG711_10MS and set codec accordingly.
-        	error = iVoIPUplink->SetFormat(EG711, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPUplink->SetFormat(EG711, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iG711EncFormatIntfc)
-		            {
-		            delete iG711EncFormatIntfc;
-		            iG711EncFormatIntfc = NULL;
-		            }
+                    {
+                    delete iG711EncFormatIntfc;
+                    iG711EncFormatIntfc = NULL;
+                    }
 
-                iG711EncFormatIntfc = (CVoIPG711EncoderIntfc*)formatIntfc;
+                iG711EncFormatIntfc = (CVoIPG711EncoderIntfc*) formatIntfc;
                 error = iG711EncFormatIntfc->SetObserver(*this);
                 iUpLinkCodec = EG711;
 
                 iLog->Log(_L("G.711 UPL Codec Set: error = %d"), error);
-        		}
-        	else
+                }
+            else
                 {
                 iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
+        else if (encoderType == KTagG711_10MS)
+            {
+            error = iVoIPUplink->SetFormat(EG711_10MS, formatIntfc);
+            if (error == KErrNone)
+                {
+                if (iG711EncFormatIntfc)
+                    {
+                    delete iG711EncFormatIntfc;
+                    iG711EncFormatIntfc = NULL;
+                    }
+
+                iG711EncFormatIntfc = (CVoIPG711EncoderIntfc*) formatIntfc;
+                error = iG711EncFormatIntfc->SetObserver(*this);
+                iUpLinkCodec = EG711_10MS;
+                iLog->Log(_L("G.711 10ms UPL Codec Set: error = %d"), error);
+                }
+            else
+                {
+                iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
+                }
+            }
         else if (encoderType == KTagG729)
-        	{
-        	error = iVoIPUplink->SetFormat(EG729, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPUplink->SetFormat(EG729, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iG729EncFormatIntfc)
-		            {
-		            delete iG729EncFormatIntfc;
-		            iG729EncFormatIntfc = NULL;
-		            }
+                    {
+                    delete iG729EncFormatIntfc;
+                    iG729EncFormatIntfc = NULL;
+                    }
 
                 iG729EncFormatIntfc = formatIntfc;
                 error = iG729EncFormatIntfc->SetObserver(*this);
                 iUpLinkCodec = EG729;
 
                 iLog->Log(_L("G.729 UPL Codec Set: error = %d"), error);
-        		}
-        	else
+                }
+            else
                 {
                 iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
         else if (encoderType == KTagILBC)
-        	{
-        	error = iVoIPUplink->SetFormat(EILBC, formatIntfc);
-        	if (error == KErrNone)
-        		{
-        		if (iILBCEncFormatIntfc)
-		            {
-		            delete iILBCEncFormatIntfc;
-		            iILBCEncFormatIntfc = NULL;
-		            }
+            {
+            error = iVoIPUplink->SetFormat(EILBC, formatIntfc);
+            if (error == KErrNone)
+                {
+                if (iILBCEncFormatIntfc)
+                    {
+                    delete iILBCEncFormatIntfc;
+                    iILBCEncFormatIntfc = NULL;
+                    }
 
-        		iILBCEncFormatIntfc = (CVoIPILBCEncoderIntfc*)formatIntfc;
-        		error = iILBCEncFormatIntfc->SetObserver(*this);
-        		iUpLinkCodec = EILBC;
+                iILBCEncFormatIntfc = (CVoIPILBCEncoderIntfc*) formatIntfc;
+                error = iILBCEncFormatIntfc->SetObserver(*this);
+                iUpLinkCodec = EILBC;
 
-        		iLog->Log(_L("iLBC UPL Codec Set: error = %d"), error);
-        		}
-        	else
+                iLog->Log(_L("iLBC UPL Codec Set: error = %d"), error);
+                }
+            else
                 {
                 iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
         else if (encoderType == KTagAMRNB)
-        	{
-        	error = iVoIPUplink->SetFormat(EAMR_NB, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPUplink->SetFormat(EAMR_NB, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iAMRNBEncFormatIntfc)
-		            {
-		            delete iAMRNBEncFormatIntfc;
-		            iAMRNBEncFormatIntfc = NULL;
-		            }
+                    {
+                    delete iAMRNBEncFormatIntfc;
+                    iAMRNBEncFormatIntfc = NULL;
+                    }
 
                 iAMRNBEncFormatIntfc = formatIntfc;
                 error = iAMRNBEncFormatIntfc->SetObserver(*this);
                 iUpLinkCodec = EAMR_NB;
 
                 iLog->Log(_L("AMR-NB UPL Codec Set: error = %d"), error);
-        		}
-        	else
+                }
+            else
                 {
                 iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
         else if (encoderType == KTagPCM16)
-        	{
-        	error = iVoIPUplink->SetFormat(EPCM16, formatIntfc);
-        	if (error == KErrNone)
-        		{
+            {
+            error = iVoIPUplink->SetFormat(EPCM16, formatIntfc);
+            if (error == KErrNone)
+                {
                 if (iPCM16EncFormatIntfc)
-		            {
-		            delete iPCM16EncFormatIntfc;
-		            iPCM16EncFormatIntfc = NULL;
-		            }
+                    {
+                    delete iPCM16EncFormatIntfc;
+                    iPCM16EncFormatIntfc = NULL;
+                    }
 
                 iPCM16EncFormatIntfc = formatIntfc;
                 error = iPCM16EncFormatIntfc->SetObserver(*this);
                 iUpLinkCodec = EPCM16;
 
                 iLog->Log(_L("PCM16 UPL Codec Set: error = %d"), error);
-        		}
-        	else
+                }
+            else
                 {
                 iLog->Log(_L("UPL Codec Setting Failed: error = %d"), error);
                 }
-        	}
+            }
+        else if (encoderType == KTagNULL)
+            {
+            error = iVoIPUplink->SetFormat(ENULL, formatIntfc);
+            iLog->Log(_L("NULL UPL Codec Set: error = %d"), error);
+            }
         else
-        	{
+            {
             iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
             return error;
-        	}
-    	}
+            }
+        }
 
-        iFactory->CreateBuffer(iRecBuf,
-        											 CVoIPDataBuffer::EStandard,
-                               iUpLinkCodec);
-                               
+    iFactory->CreateBuffer(iRecBuf, CVoIPDataBuffer::EStandard, iUpLinkCodec);
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::OpenUplink(CStifItemParser& /*aItem */ )
-{
+TInt CVoIPAudioServicesTestClass::OpenUplink(CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::OpenUplink")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::OpenUplink"));
     TInt error = KErrNone;
 
     if (iUpLinkStatus == ENotReady)
-    	{
-    	error = iVoIPUplink->Open(*this);
-    	if (error != KErrNone)
-    		{
+        {
+        error = iVoIPUplink->Open(*this);
+        if (error != KErrNone)
+            {
             iLog->Log(_L("UPL open error: error = %d"), error);
-    		}
-    	else
-    		{
-            AddExpectedEvent(EOpenUplinkComplete, KMediumTimeout);
+            }
+        else
+            {
+            AddExpectedEvent(EOpenUplinkComplete, KShortTimeout);
             iUpLinkStatus = EReady;
-    		}
-    	}
+            }
+        }
     else
-    	{
-    	iLog->Log(_L("UPL already open: error = %d"), KErrInUse);
-    	}
+        {
+        iLog->Log(_L("UPL already open: error = %d"), KErrInUse);
+        }
 
     return error;
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::DisplayFormat
@@ -1056,7 +996,7 @@
 // ----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::DisplayFormat(TVoIPCodecFormat aFormat)
-{
+    {
     if (aFormat == EAMR_NB)
         {
         iLog->Log(_L("AMR-NB"));
@@ -1077,52 +1017,50 @@
         {
         iLog->Log(_L("PCM-16"));
         }
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::Close(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::Close(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Close")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::Close"));
     TInt error = KErrNone;
-
+    iLoopPlay = EFalse;
     TPtrC closeType;
     error = aItem.GetNextString(closeType);
     if (error == KErrNone)
-    	{
+        {
         if (closeType == KTagUplink)
-        	{
-	    	iRecBufPtr.Set(NULL, 0, 0);
-	        iRecBufReady = EFalse;
-	        iUpLinkCodec = ENULL;
-	        iVoIPUplink->Close();
-	        iUpLinkStatus = ENotReady;
-	        iLog->Log(_L("Close Uplink"));
-	        AddExpectedEvent(EUplinkClosed, KMediumTimeout);
-        	}
-	    else if (closeType == KTagDnlink)
-	    	{
-	    	iPlayBufPtr.Set(NULL, 0, 0);
-	        iVoIPDnlink->Close();
-	        iDnLinkStatus = ENotReady;
-	        iPlayBufReady = EFalse;
-	        iDnLinkCodec = ENULL;
-	        iLog->Log(_L("Close Dnlink"));
-	        AddExpectedEvent(EDownlinkClosed, KMediumTimeout);
-		    }
-		else
-		    {
-		    iLog->Log(KMsgBadTestParameters);
-		    error = KErrBadTestParameter;
-		    }
-    	}
+            {
+            iRecBufPtr.Set(NULL, 0, 0);
+            iRecBufReady = EFalse;
+            iUpLinkCodec = ENULL;
+            iVoIPUplink->Close();
+            iUpLinkStatus = ENotReady;
+            iLog->Log(_L("Close Uplink"));
+            AddExpectedEvent(EUplinkClosed, KShortTimeout);
+            }
+        else if (closeType == KTagDnlink)
+            {
+            iPlayBufPtr.Set(NULL, 0, 0);
+            iVoIPDnlink->Close();
+            iDnLinkStatus = ENotReady;
+            iPlayBufReady = EFalse;
+            iDnLinkCodec = ENULL;
+            iLog->Log(_L("Close Dnlink"));
+            AddExpectedEvent(EDownlinkClosed, KShortTimeout);
+            }
+        else
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
+            }
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::Start(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::Start(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Start")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::Start"));
     TInt error = KErrNone;
@@ -1130,52 +1068,49 @@
     TPtrC startType;
     error = aItem.GetNextString(startType);
     if (error == KErrNone)
-    	{
+        {
         if (startType == KTagUplink)
-        	{
-        	if (iUpLinkStatus == EReady)
-        		{
-	            iVoIPUplink->Start();
-	            iUpLinkStatus = EStreaming;
-	            iLog->Log(_L("Start Uplink"));
-	            AddExpectedEvent(EEmptyBuffer, KMediumTimeout);
-        		}
-
-        	else
-        		{
-	            iLog->Log(_L("UPL not ready"));
-	            error = KErrNotReady;
-        		}
-        	}
+            {
+            if (iUpLinkStatus == EReady)
+                {
+                iVoIPUplink->Start();
+                iUpLinkStatus = EStreaming;
+                iRecCounter = 0;
+                iLog->Log(_L("Start Uplink"));
+                }
+            else
+                {
+                iLog->Log(_L("UPL not ready"));
+                error = KErrNotReady;
+                }
+            }
         else if (startType == KTagDnlink)
-        	{
-        	if (iDnLinkStatus == EReady)
-        		{
-	            iVoIPDnlink->Start();
-	            iDnLinkStatus = EStreaming;
-	            iLog->Log(_L("Start Dnlink"));
-	            AddExpectedEvent(EFillBuffer, KMediumTimeout);
-        		}
-
-        	else
-        		{
-	            iLog->Log(_L("DNL not ready"));
-	            error = KErrNotReady;
-        		}
-        	}
+            {
+            if (iDnLinkStatus == EReady)
+                {
+                iVoIPDnlink->Start();
+                iDnLinkStatus = EStreaming;
+                iPlayCounter = 0;
+                iLog->Log(_L("Start Dnlink"));
+                }
+            else
+                {
+                iLog->Log(_L("DNL not ready"));
+                error = KErrNotReady;
+                }
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
+            {
+            iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
-        	}
-    	}
+            }
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::Stop(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::Stop(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Stop")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::Stop"));
     TInt error = KErrNone;
@@ -1183,48 +1118,47 @@
     TPtrC stopType;
     error = aItem.GetNextString(stopType);
     if (error == KErrNone)
-    	{
+        {
         if (stopType == KTagUplink)
-        	{
-        	if (iUpLinkStatus == EStreaming)
-        		{
-	            iVoIPUplink->Stop();
-	            iUpLinkStatus = EReady;
-	            iLog->Log(_L("Stop Uplink"));
-        		}
-        	else
-        		{
-	            iLog->Log(_L("UPL not started"));
-	            error = KErrNotReady;
-        		}
-        	}
+            {
+            if (iUpLinkStatus == EStreaming)
+                {
+                iVoIPUplink->Stop();
+                iUpLinkStatus = EReady;
+                iLog->Log(_L("Stop Uplink"));
+                }
+            else
+                {
+                iLog->Log(_L("UPL not started"));
+                error = KErrNotReady;
+                }
+            }
         else if (stopType == KTagDnlink)
-        	{
-        	if (iDnLinkStatus == EStreaming)
-        		{
-	            iVoIPDnlink->Stop();
-	            iDnLinkStatus = EReady;
-	            iLog->Log(_L("Stop Dnlink"));
-        		}
-        	else
-        		{
-        		iLog->Log(_L("DNL not started"));
-        		error = KErrNotReady;
-        		}
-        	}
+            {
+            if (iDnLinkStatus == EStreaming)
+                {
+                iVoIPDnlink->Stop();
+                iDnLinkStatus = EReady;
+                iLog->Log(_L("Stop Dnlink"));
+                }
+            else
+                {
+                iLog->Log(_L("DNL not started"));
+                error = KErrNotReady;
+                }
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
+            {
+            iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
-        	}
-    	}
+            }
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::Gain(CStifItemParser& /*aItem */ )
-{
+TInt CVoIPAudioServicesTestClass::Gain(CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Gain")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::Gain"));
     TInt error = KErrNone;
@@ -1234,27 +1168,28 @@
     iLog->Log(_L("SetMaxGain: %d"), iMaxGain);
     iVoIPUplink->GetGain(iGain);
     if (iGain != iMaxGain)
-    	{
-        iLog->Log(_L("GetGain doesn't return expected MaxGain!!! returned Gain = %d"), iGain);
+        {
+        iLog->Log(_L("GetGain doesn't return expected MaxGain!!! returned Gain = %d"),
+                iGain);
         return KErrUnexpectedValue;
-    	}
+        }
 
     iVoIPUplink->SetGain(0);
     iLog->Log(_L("MuteMic"));
     iVoIPUplink->GetGain(iGain);
 
     if (iGain != 0)
-    	{
-        iLog->Log(_L("GetGain does not return expected Mute value!!! returned Gain = %d"), iGain);
+        {
+        iLog->Log(_L("GetGain does not return expected Mute value!!! returned Gain = %d"),
+                iGain);
         return KErrUnexpectedValue;
-    	}
+        }
 
-  return error;
-}
+    return error;
+    }
 
-
-TInt CVoIPAudioServicesTestClass::Volume(CStifItemParser& /*aItem */ )
-{
+TInt CVoIPAudioServicesTestClass::Volume(CStifItemParser& /*aItem */)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::Volume")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::Volume"));
     TInt error = KErrNone;
@@ -1264,28 +1199,28 @@
     iLog->Log(_L("SetMaxVolume: %d"), iMaxVolume);
     iVoIPDnlink->GetVolume(iVolume);
     if (iVolume != iMaxVolume)
-    	{
-        iLog->Log(_L("GetVolume doesn't return expected MaxVolume!!! returned Volume = %d"), iVolume);
+        {
+        iLog->Log(_L("GetVolume doesn't return expected MaxVolume!!! returned Volume = %d"),
+                iVolume);
         return KErrUnexpectedValue;
-    	}
+        }
 
     iVoIPDnlink->SetVolume(0);
     iLog->Log(_L("Mute Volume"));
     iVoIPDnlink->GetVolume(iVolume);
 
     if (iVolume != 0)
-    	{
-        iLog->Log(_L("GetVolume does not return expected Mute value!!! returned Volume = %d"), iVolume);
+        {
+        iLog->Log(_L("GetVolume does not return expected Mute value!!! returned Volume = %d"),
+                iVolume);
         return KErrUnexpectedValue;
-    	}
+        }
 
-  return error;
-}
-
+    return error;
+    }
 
-
-TInt CVoIPAudioServicesTestClass::SetDevice(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::SetDevice(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetDevice")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::SetDevice"));
     TInt error = KErrNone;
@@ -1293,44 +1228,46 @@
     TPtrC deviceType;
     error = aItem.GetNextString(deviceType);
     if (error == KErrNone)
-    	{
+        {
         if (deviceType == KTagHandset)
-        	{
-        	iVoIPDnlink->SetAudioDevice(CVoIPAudioDownlinkStream::EHandset);
-        	}
+            {
+            iVoIPDnlink->SetAudioDevice(CVoIPAudioDownlinkStream::EHandset);
+            }
         else if (deviceType == KTagLoudSpeaker)
-        	{
-        	iVoIPDnlink->SetAudioDevice(CVoIPAudioDownlinkStream::ELoudSpeaker);
-        	}
+            {
+            iVoIPDnlink->SetAudioDevice(
+                    CVoIPAudioDownlinkStream::ELoudSpeaker);
+            }
         else
-        	{
+            {
             iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
             return error;
-        	}
-    	}
+            }
+        }
 
     CVoIPAudioDownlinkStream::TVoIPOutputDevice device;
     iVoIPDnlink->GetAudioDevice(device);
-    if ((device == CVoIPAudioDownlinkStream::EHandset) && (deviceType == KTagHandset))
-    	{
+    if ((device == CVoIPAudioDownlinkStream::EHandset) &&
+            (deviceType == KTagHandset))
+        {
         iLog->Log(_L("Routing to Private Spkr"));
-    	}
-    else if((device == CVoIPAudioDownlinkStream::ELoudSpeaker) && (deviceType == KTagLoudSpeaker))
-    	{
+        }
+    else if ((device == CVoIPAudioDownlinkStream::ELoudSpeaker)
+            && (deviceType == KTagLoudSpeaker))
+        {
         iLog->Log(_L("Routing to Loudspeaker"));
-    	}
+        }
     else
-    	{
-    	iLog->Log(_L("SetDevice failed"));
-    	}
+        {
+        iLog->Log(_L("SetDevice failed"));
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::InitDTMFTonePlayer(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::InitDTMFTonePlayer(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::InitDTMFTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::InitDTMFTonePlayer"));
     TInt error = KErrNone;
@@ -1338,74 +1275,79 @@
     TPtrC initLink;
     error = aItem.GetNextString(initLink);
     if (error == KErrNone)
-    	{
+        {
         if (initLink == KTagDnlink)
-        	{
-        	if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady || iDnLinkStatus == EStreaming))
-        		{
-        		error = iDTMFTonePlayerDn->AddVoIPAudioDownlinkStream(*iVoIPDnlink);
+            {
+            if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady
+                    || iDnLinkStatus == EStreaming))
+                {
+                error = iDTMFTonePlayerDn->AddVoIPAudioDownlinkStream(
+                        *iVoIPDnlink);
 
-        		if (error == KErrNone)
-        			{
-        			error = iDTMFTonePlayerDn->Open(*this); //sync call
-        			if (error == KErrNone)
-        				{
-        				iLog->Log(_L("DTMF DNL Initialized: error = %d"), error);
-        				AddExpectedEvent(EOpenCompleteDNL, KMediumTimeout);
-        				}
-        			}
+                if (error == KErrNone)
+                    {
+                    error = iDTMFTonePlayerDn->Open(*this); //sync call
+                    if (error == KErrNone)
+                        {
+                        iLog->Log(_L("DTMF DNL Initialized: error=%d"), error);
+                        AddExpectedEvent(EOpenCompleteDNL, KShortTimeout);
+                        }
+                    }
 
-        		if (error != KErrNone)
-        			{
-        			iLog->Log(_L("DTMF DNL-PLR Error"), error);
-        			}
-        		}
-        	else
-        		{
-        		iLog->Log(_L("Open DNL first"), KErrNotFound);
-        		}
-        	}
+                if (error != KErrNone)
+                    {
+                    iLog->Log(_L("DTMF DNL-PLR Error"), error);
+                    }
+                }
+            else
+                {
+                error = iDTMFTonePlayerDn->AddVoIPAudioDownlinkStream(
+                        *iVoIPDnlink);
+                iLog->Log(_L("Open NULL DNL"), error);
+                }
+            }
         else if (initLink == KTagUplink)
-        	{
-        	if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady || iUpLinkStatus == EStreaming))
-        		{
-        		error = iDTMFTonePlayerUp->AddVoIPAudioUplinkStream(*iVoIPUplink);
+            {
+            if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady
+                    || iUpLinkStatus == EStreaming))
+                {
+                error = iDTMFTonePlayerUp->AddVoIPAudioUplinkStream(
+                        *iVoIPUplink);
 
-        		if (error == KErrNone)
-        			{
-        			error = iDTMFTonePlayerUp->Open(*this); //sync call
-        			if (error == KErrNone)
-        				{
-		                iLog->Log(_L("DTMF UPL Initialized: error = %d"), error);
-		                AddExpectedEvent(EOpenCompleteUPL, KMediumTimeout);
-		                }
-        			}
+                if (error == KErrNone)
+                    {
+                    error = iDTMFTonePlayerUp->Open(*this); //sync call
+                    if (error == KErrNone)
+                        {
+                        iLog->Log(_L("DTMF UPL Initialized: error=%d"), error);
+                        AddExpectedEvent(EOpenCompleteUPL, KShortTimeout);
+                        }
+                    }
 
-        		if (error != KErrNone)
-        			{
-        			iLog->Log(_L("DTMF UPL-PLR Error"), error);
-        			}
-        		}
-        	else
-        		{
-        		iLog->Log(_L("Open UPL first"), KErrNotFound);
-        		}
-        	}
+                if (error != KErrNone)
+                    {
+                    iLog->Log(_L("DTMF UPL-PLR Error"), error);
+                    }
+                }
+            else
+                {
+                error = iDTMFTonePlayerUp->AddVoIPAudioUplinkStream(
+                        *iVoIPUplink);
+                iLog->Log(_L("Open NULL UPL"), error);
+                }
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
-        	error = KErrBadTestParameter;
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
             }
+        }
+
+    return error;
     }
 
-    return error;
-}
-
-
-
-
-TInt CVoIPAudioServicesTestClass::DTMFTonePlay(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::DTMFTonePlay(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::DTMFTonePlay")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::DTMFTonePlay"));
     TInt error = KErrNone;
@@ -1413,61 +1355,62 @@
     TPtrC initLink;
     error = aItem.GetNextString(initLink);
     if (error == KErrNone)
-    	{
+        {
         if (initLink == KTagDnlink)
-        	{
-        	if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady || iDnLinkStatus == EStreaming))
-        		{
-	            TChar tone1 = '0';
-	            TChar tone2 = '1';
-	            TChar tone3 = '2';
-	            TBufC<KTonesBufSize> tones;
-	            TPtr ptr = tones.Des();
-	            ptr.Append(tone1);
-	            ptr.Append(tone2);
-	            ptr.Append(tone3);
-	            iDTMFTonePlayerDn->Play(ptr);
-	            iLog->Log(_L("Start to play DTMF"));
-        		}
+            {
+            if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady
+                    || iDnLinkStatus == EStreaming))
+                {
+                TChar tone1 = '0';
+                TChar tone2 = '1';
+                TChar tone3 = '2';
+                TBufC<KTonesBufSize> tones;
+                TPtr ptr = tones.Des();
+                ptr.Append(tone1);
+                ptr.Append(tone2);
+                ptr.Append(tone3);
+                iDTMFTonePlayerDn->Play(ptr);
+                iLog->Log(_L("Start to play DTMF"));
+                }
             else
-            	{
-            	iLog->Log(_L("Open DNL first"), KErrNotFound);
-            	}
-        	}
+                {
+                iLog->Log(_L("Open DNL first"), KErrNotFound);
+                }
+            }
         else if (initLink == KTagUplink)
-        	{
-        	if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady || iUpLinkStatus == EStreaming))
-        		{
-	            TChar tone1 = '9';
-	            TChar tone2 = '8';
-	            TChar tone3 = '7';
-	            TBufC<KTonesBufSize> tones;
-	            TPtr ptr = tones.Des();
-	            ptr.Append(tone1);
-	            ptr.Append(tone2);
-	            ptr.Append(tone3);
+            {
+            if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady
+                    || iUpLinkStatus == EStreaming))
+                {
+                TChar tone1 = '9';
+                TChar tone2 = '8';
+                TChar tone3 = '7';
+                TBufC<KTonesBufSize> tones;
+                TPtr ptr = tones.Des();
+                ptr.Append(tone1);
+                ptr.Append(tone2);
+                ptr.Append(tone3);
 
-	            iDTMFTonePlayerUp->Play(ptr);
-	            iLog->Log(_L("Start to play DTMF"));
-        		}
+                iDTMFTonePlayerUp->Play(ptr);
+                iLog->Log(_L("Start to play DTMF"));
+                }
             else
-	            {
-	            iLog->Log(_L("Open UPL first"), KErrNotFound);
-	            }
-        	}
+                {
+                iLog->Log(_L("Open UPL first"), KErrNotFound);
+                }
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
-        	error = KErrBadTestParameter;
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
             }
+        }
+
+    return error;
     }
 
-    return error;
-}
-
-
-TInt CVoIPAudioServicesTestClass::CloseDTMFPlayer(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::CloseDTMFPlayer(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CloseDTMFPlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CloseDTMFPlayer"));
     TInt error = KErrNone;
@@ -1475,47 +1418,50 @@
     TPtrC closedLink;
     error = aItem.GetNextString(closedLink);
     if (error == KErrNone)
-    	{
+        {
         if (closedLink == KTagDnlink)
-        	{
-            if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady || iDnLinkStatus == EStreaming))
-            	{
+            {
+            if (iDTMFTonePlayerDn && (iDnLinkStatus == EReady ||
+                    iDnLinkStatus == EStreaming))
+                {
                 iDTMFTonePlayerDn->Close();
-                error = iDTMFTonePlayerDn->RemoveVoIPAudioDownlinkStream(*iVoIPDnlink);
+                error = iDTMFTonePlayerDn->RemoveVoIPAudioDownlinkStream(
+                        *iVoIPDnlink);
                 iLog->Log(_L("DTMF DNL Closed: error = %d"), error);
-            	}
+                }
             else
-            	{
-            	iLog->Log(_L("DTMF DNL-PLR not open"), KErrNotFound);
-            	}
-        	}
+                {
+                iLog->Log(_L("DTMF DNL-PLR not open"), KErrNotFound);
+                }
+            }
         else if (closedLink == KTagUplink)
-        	{
-            if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady || iUpLinkStatus == EStreaming))
-            	{
+            {
+            if (iDTMFTonePlayerUp && (iUpLinkStatus == EReady
+                    || iUpLinkStatus == EStreaming))
+                {
                 iDTMFTonePlayerUp->Close();
-                error = iDTMFTonePlayerUp->RemoveVoIPAudioUplinkStream(*iVoIPUplink);
+                error = iDTMFTonePlayerUp->RemoveVoIPAudioUplinkStream(
+                        *iVoIPUplink);
                 iLog->Log(_L("DTMF UPL Closed: error = %d"), error);
-            	}
+                }
             else
-            	{
-            	iLog->Log(_L("DTMF UPL-PLR not open"), KErrNotFound);
-            	}
-        	}
+                {
+                iLog->Log(_L("DTMF UPL-PLR not open"), KErrNotFound);
+                }
+            }
         else
-        	{
+            {
             iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
-        	}
-    }
+            }
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::StopDTMFTonePlayer( CStifItemParser& aItem )
-{
-	FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::StopDTMFTonePlayer")));
+TInt CVoIPAudioServicesTestClass::StopDTMFTonePlayer(CStifItemParser& aItem)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::StopDTMFTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::StopDTMFTonePlay"));
     TInt error = KErrNone;
 
@@ -1524,28 +1470,27 @@
     if (error == KErrNone)
         {
         if (stopLink == KTagDnlink)
-        	{
-        	iDTMFTonePlayerDn->Stop();
-        	iLog->Log(_L("DTMF DNL Stoped"));
-        	}
+            {
+            iDTMFTonePlayerDn->Stop();
+            iLog->Log(_L("DTMF DNL Stoped"));
+            }
         else if (stopLink == KTagUplink)
-        	{
-        	iDTMFTonePlayerUp->Stop();
-        	iLog->Log(_L("DTMF UPL Stoped"));
-        	}
+            {
+            iDTMFTonePlayerUp->Stop();
+            iLog->Log(_L("DTMF UPL Stoped"));
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
-        	error = KErrBadTestParameter;
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
             }
         }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::InitRingTonePlayer(CStifItemParser& aItem  )
-{
+TInt CVoIPAudioServicesTestClass::InitRingTonePlayer(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::InitRingTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::InitRingTonePlayer"));
     TInt error = KErrNone;
@@ -1554,229 +1499,207 @@
     TPtrC fileType;
     error = aItem.GetNextString(fileType);
     if (error == KErrNone && iRingTonePlayer)
-    	{
+        {
         if (fileType == KTagFile)
-        	{
-        	iLog->Log(_L("InitRingTonePlayerFromFile"));
-        	error = aItem.GetNextString(file);
-        	if (error == KErrNone)
-        		{
-        		if (file == KTagFile1)
-        			{
-        			TBufC<KMaxFileName> file(KTestFile1);
-        			error = iRingTonePlayer->Open(*this, file.Des());
-        			AddExpectedEvent(EOpenComplete, KMediumTimeout);
-        			}
-        		else if (file == KTagFile2)
-        			{
-        			TBufC<KMaxFileName> file(KTestFile2);
-        			error = iRingTonePlayer->Open(*this, file.Des());
-        			AddExpectedEvent(EOpenComplete, KMediumTimeout);
-        			}
-        		}
-        	else
-        		{
-        		iLog->Log(KMsgBadTestParameters);
-        		error = KErrBadTestParameter;
-        		}
-        	}
+            {
+            iLog->Log(_L("InitRingTonePlayerFromFile"));
+            error = aItem.GetNextString(file);
+            if (error == KErrNone)
+                {
+                if (file == KTagFile1)
+                    {
+                    TBufC<KMaxFileName> file(KTestFile1);
+                    error = iRingTonePlayer->Open(*this, file.Des());
+                    AddExpectedEvent(EOpenComplete, KShortTimeout);
+                    }
+                }
+            else
+                {
+                iLog->Log(KMsgBadTestParameters);
+                error = KErrBadTestParameter;
+                }
+            }
 
         else if (fileType == KTagRFile)
-        	{
-        	iLog->Log(_L("InitRingTonePlayerFromRFile"));
-        	error = iFs.Connect();
+            {
+            iLog->Log(_L("InitRingTonePlayerFromRFile"));
+            error = iFs.Connect();
 
-        	if (error == KErrNone)
-	        	{
-	            error = iFs.ShareProtected();
-	        	}
+            if (error == KErrNone)
+                {
+                error = iFs.ShareProtected();
+                }
 
-	        if (error == KErrNone)
-	        	{
-	        	error = aItem.GetNextString(file);
-	        	if (error == KErrNone)
-	        		{
-	        		if (file == KTagFile1)
-	        			{
-	        			error = iRTFile.Open(iFs, KTestFile1, EFileRead);
-	        			}
-	        		else if (file == KTagFile2)
-	        			{
-	        			error = iRTFile.Open(iFs, KTestFile2, EFileRead);
-	        			}
-	        		}
-	        	else
-	        		{
-	        		iLog->Log(KMsgBadTestParameters);
-	        		error = KErrBadTestParameter;
-	        		}
+            if (error == KErrNone)
+                {
+                error = aItem.GetNextString(file);
+                if (error == KErrNone)
+                    {
+                    if (file == KTagFile1)
+                        {
+                        error = iRTFile.Open(iFs, KTestFile1, EFileRead);
+                        }
+                    }
+                else
+                    {
+                    iLog->Log(KMsgBadTestParameters);
+                    error = KErrBadTestParameter;
+                    }
 
-	        	if (error == KErrNone)
-	        		{
-	                error = iRingTonePlayer->Open(*this, iRTFile);
-	                AddExpectedEvent(EOpenComplete, KMediumTimeout);
-	        		}
-	        	}
-        	}
+                if (error == KErrNone)
+                    {
+                    error = iRingTonePlayer->Open(*this, iRTFile);
+                    AddExpectedEvent(EOpenComplete, KShortTimeout);
+                    }
+                }
+            }
 
-	    else if (fileType == KTagProfile)
-	    	{
-	    	iLog->Log(_L("InitRingTonePlayerFromProfile"));
-	    	error = iRingTonePlayer->Open(*this);
-	    	AddExpectedEvent(EOpenComplete, KMediumTimeout);
-	    	}
+        else if (fileType == KTagProfile)
+            {
+            iLog->Log(_L("InitRingTonePlayerFromProfile"));
+            error = iRingTonePlayer->Open(*this);
+            AddExpectedEvent(EOpenComplete, KShortTimeout);
+            }
 
-	    else if (fileType == KTagDesL)
-	    	{
-	    	iLog->Log(_L("InitRingTonePlayerFromDesL"));
-	        TBufC8<KMimeStringSize> mimeType;
-	        TPtr8 pMime = mimeType.Des();
-	        pMime.Copy(KMimetypeWAV);
-	        error = iFs.Connect();
+        else if (fileType == KTagDesL)
+            {
+            iLog->Log(_L("InitRingTonePlayerFromDesL"));
+            TBufC8<KMimeStringSize> mimeType;
+            TPtr8 pMime = mimeType.Des();
+            pMime.Copy(KMimetypeWAV);
+            error = iFs.Connect();
 
-	        if (error == KErrNone)
-	        	{
-	            error = iRTFile.Open(iFs, KTestFile3, EFileRead);
-	            if (error == KErrNone)
-	                {
-	                TInt size;
-	                iRTFile.Size(size);
-	                HBufC8* tone = HBufC8::NewLC(size);
-	                TPtr8 pTone = tone->Des();
-	                iRTFile.Read(pTone);
-	                iRTFile.Close();
-	                error = iRingTonePlayer->Open(*this, pTone, pMime);
-	                CleanupStack::PopAndDestroy(tone);
-	                AddExpectedEvent(EOpenComplete, KMediumTimeout);
-	                }
-	            else
-	            	{
-	            	iLog->Log(_L("RT Open from DesL failed"));
-	            	}
-	            iFs.Close();
-	        	}
-
-	        else
-	        	{
-	        	iLog->Log(_L("RT Connect failed"));
-	        	}
-
-	    	}
-
-	    else
-	        {
-	        iLog->Log(KMsgBadTestParameters);
-	        error = KErrBadTestParameter;
-	        }
-    	}
-
+            if (error == KErrNone)
+                {
+                error = iRTFile.Open(iFs, KTestFile1, EFileRead);
+                if (error == KErrNone)
+                    {
+                    TInt size;
+                    iRTFile.Size(size);
+                    HBufC8* tone = HBufC8::NewLC(size / 5);
+                    TPtr8 pTone = tone->Des();
+                    iRTFile.Read(pTone, size / 5);
+                    error = iRingTonePlayer->Open(*this, pTone, pMime);
+                    CleanupStack::PopAndDestroy(tone);
+                    AddExpectedEvent(EOpenComplete, KShortTimeout);
+                    }
+                else
+                    {
+                    iLog->Log(_L("RT Open from DesL failed"));
+                    }
+                iRTFile.Close();
+                }
+            else
+                {
+                iLog->Log(_L("RT Connect failed"));
+                }
+            iFs.Close();
+            }
+        else
+            {
+            iLog->Log(KMsgBadTestParameters);
+            error = KErrBadTestParameter;
+            }
+        }
     else
-    	{
+        {
         if (!iRingTonePlayer)
-        	{
+            {
             iLog->Log(_L("RT PLR Open failed"));
-        	}
-    	}
+            }
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::CloseRingTonePlayer(CStifItemParser& /*aItem*/  )
-{
+TInt CVoIPAudioServicesTestClass::CloseRingTonePlayer(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CloseRingTonePlayer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::CloseRingTonePlayer"));
     TInt error = KErrNone;
 
-  if (iRingTonePlayer)
-	  {
-      iRTFile.Close();
-      iFs.Close();
-      iRingTonePlayer->Close();
+    if (iRingTonePlayer)
+        {
+        iRTFile.Close();
+        iFs.Close();
+        iRingTonePlayer->Close();
+        iLog->Log(_L("RT Player Closed"));
+        }
+    else
+        {
+        iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
+        }
 
-      iLog->Log(_L("RT Player Closed"));
-	  }
-  else
-	  {
-      iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
-	  }
+    return error;
+    }
 
-  return error;
-}
-
-
-
-TInt CVoIPAudioServicesTestClass::PlayRingTone( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::PlayRingTone(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::PlayRingTone")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::PlayRingTone"));
     TInt error = KErrNone;
 
     if (iRingTonePlayer)
-    	{
+        {
         iRingTonePlayer->Play();
-        AddExpectedEvent(EPlaybackComplete, KLongTimeout);  // Played ringing tone file has to be shorter than KLongTimeout
-    	}
-  else
-	  {
-      iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
-      error = KErrNotFound;
-	  }
+        AddExpectedEvent(EPlaybackComplete, KLongTimeout);
+        // Played ringing tone file has to be shorter than KLongTimeout
+        }
+    else
+        {
+        iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
+        error = KErrNotFound;
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::PauseRingTone( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::PauseRingTone(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::PauseRingTone")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::PauseRingTone"));
     TInt error = KErrNone;
 
     if (iRingTonePlayer)
-    	{
+        {
         iRingTonePlayer->Pause();
-    	}
+        }
     else
-	  {
-      iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
-      error = KErrNotFound;
-	  }
+        {
+        iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
+        error = KErrNotFound;
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::ResumeRingTone( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ResumeRingTone(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ResumeRingTone")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ResumeRingTone"));
     TInt error = KErrNone;
 
     if (iRingTonePlayer)
-    	{
+        {
         iRingTonePlayer->Resume();
-    	}
+        }
     else
-    	{
-    	iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
-    	error = KErrNotFound;
-    	}
+        {
+        iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
+        error = KErrNotFound;
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetSupportedBitrates( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetSupportedBitrates(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetSupportedBitrates")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetSupportedBitrates"));
     TInt error = KErrNone;
 
     iBitratesArray.Reset();
-    GetSupportedBitrates(iBitratesArray);
+    error = GetSupportedBitrates(iBitratesArray);
 
     TInt numOfItems = iBitratesArray.Count();
 
@@ -1786,42 +1709,42 @@
         }
 
     return error;
-}
-
-
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPTestEngine::GetSupportedBitrates
 //
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::GetSupportedBitrates(RArray<TUint>& aBrArr)
-{
+TInt CVoIPAudioServicesTestClass::GetSupportedBitrates(RArray<TUint>& aBrArr)
+    {
+    TInt error = KErrNone;
+
     switch (iUpLinkCodec)
         {
         case EG711:
-            iG711EncFormatIntfc->GetSupportedBitRates(aBrArr);
+            error = iG711EncFormatIntfc->GetSupportedBitRates(aBrArr);
             break;
         case EG729:
-            iG729EncFormatIntfc->GetSupportedBitRates(aBrArr);
+            error = iG729EncFormatIntfc->GetSupportedBitRates(aBrArr);
             break;
         case EILBC:
-            iILBCEncFormatIntfc->GetSupportedBitRates(aBrArr);
+            error = iILBCEncFormatIntfc->GetSupportedBitRates(aBrArr);
             break;
         case EAMR_NB:
-            iAMRNBEncFormatIntfc->GetSupportedBitRates(aBrArr);
+            error = iAMRNBEncFormatIntfc->GetSupportedBitRates(aBrArr);
             break;
-        case EPCM16:
-            iPCM16EncFormatIntfc->GetSupportedBitRates(aBrArr);
+        case EPCM16: //Not supported
+            error = iPCM16EncFormatIntfc->GetSupportedBitRates(aBrArr);
             break;
         default:
             break;
         }
-}
-
+    return error;
+    }
 
-TInt CVoIPAudioServicesTestClass::SetBitrate( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetBitrate(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetBitrate")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::SetBitrate"));
     TInt error = KErrNone;
@@ -1829,125 +1752,131 @@
     TPtrC bitRate;
     error = aItem.GetNextString(bitRate);
     if (error == KErrNone)
-    	{
+        {
         if (bitRate == KTagMin)
-        	{
-        	if (iBitratesArray.Count() > 0)
-        		{
-	            iBitrate = iBitratesArray[0];
-	            SetBitrate(iBitrate);
-	            iLog->Log(_L("BR set %d"), iBitrate);
-        		}
-        	}
+            {
+            if (iBitratesArray.Count() > 0)
+                {
+                iBitrate = iBitratesArray[0];
+                error = SetBitrate(iBitrate);
+                iLog->Log(_L("BR set %d"), iBitrate);
+                }
+            }
         else if (bitRate == KTagMax)
-        	{
-        	TInt numOfItems = iBitratesArray.Count();
+            {
+            TInt numOfItems = iBitratesArray.Count();
             if (numOfItems > 0)
-            	{
-	            iBitrate = iBitratesArray[numOfItems-1];
-	            SetBitrate(iBitrate);
-	            iLog->Log(_L("BR set %d"), iBitrate);
-            	}
-        	}
-        else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
-        	error = KErrBadTestParameter;
-        	}
-    	}
+                {
+                iBitrate = iBitratesArray[numOfItems - 1];
+                error = SetBitrate(iBitrate);
+                iLog->Log(_L("BR set %d"), iBitrate);
+                }
+            }
+        }
+    else if (error == KErrNotFound) //No parameter
+
+        {
+        // Fail case - setting random bitrate
+        error = SetBitrate(1234);
+        iLog->Log(_L("Random BR set"));
+        }
 
     return error;
-}
-
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::SetBitrate
 //
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::SetBitrate(TUint aBitrate)
-{
+TInt CVoIPAudioServicesTestClass::SetBitrate(TUint aBitrate)
+    {
+    TInt error = KErrNone;
+
     switch (iUpLinkCodec)
         {
         case EG711:
-            iG711EncFormatIntfc->SetBitRate(aBitrate);
+            error = iG711EncFormatIntfc->SetBitRate(aBitrate);
             break;
         case EG729:
-            iG729EncFormatIntfc->SetBitRate(aBitrate);
+            error = iG729EncFormatIntfc->SetBitRate(aBitrate);
             break;
         case EILBC:
-            iILBCEncFormatIntfc->SetBitRate(aBitrate);
+            error = iILBCEncFormatIntfc->SetBitRate(aBitrate);
             break;
         case EAMR_NB:
-            iAMRNBEncFormatIntfc->SetBitRate(aBitrate);
+            error = iAMRNBEncFormatIntfc->SetBitRate(aBitrate);
             break;
-        case EPCM16:
-            iPCM16EncFormatIntfc->SetBitRate(aBitrate);
+        case EPCM16: //Fail case
+            error = iPCM16EncFormatIntfc->SetBitRate(aBitrate);
+            AddExpectedEvent(EUplinkError, KShortTimeout);
             break;
         default:
             break;
         }
 
     iLog->Log(_L("Set Uplink BR: %d "), iBitrate);
-}
-
-
+    return error;
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetBitrate( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetBitrate(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetBitrate")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetBitrate"));
     TInt error = KErrNone;
 
     TUint currentBitrate;
-    GetBitrate(currentBitrate);
-    iLog->Log(_L("Current BR: %d"), currentBitrate);
-    if (iBitrate != currentBitrate)
-    	{
-        iLog->Log(_L("returned bitRate doesn't match set bitRate: Failed"));
-        error = KErrUnexpectedValue;
-    	}
+    error = GetBitrate(currentBitrate);
+    if (error == KErrNone)
+        {
+        iLog->Log(_L("Current BR: %d"), currentBitrate);
+        if (iBitrate != currentBitrate)
+            {
+            iLog->Log(
+                    _L("returned bitRate doesn't match set bitRate: Failed"));
+            error = KErrUnexpectedValue;
+            }
+        }
 
     return error;
-}
-
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::GetBitrate
 //
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::GetBitrate(TUint& aBitrate)
-{
+TInt CVoIPAudioServicesTestClass::GetBitrate(TUint& aBitrate)
+    {
+    TInt error = KErrNotSupported;
+
     switch (iUpLinkCodec)
         {
         case EG711:
-            iG711EncFormatIntfc->GetBitRate(aBitrate);
+            error = iG711EncFormatIntfc->GetBitRate(aBitrate);
             break;
         case EG729:
-            iG729EncFormatIntfc->GetBitRate(aBitrate);
+            error = iG729EncFormatIntfc->GetBitRate(aBitrate);
             break;
         case EILBC:
-            iILBCEncFormatIntfc->GetBitRate(aBitrate);
+            error = iILBCEncFormatIntfc->GetBitRate(aBitrate);
             break;
         case EAMR_NB:
-            iAMRNBEncFormatIntfc->GetBitRate(aBitrate);
+            error = iAMRNBEncFormatIntfc->GetBitRate(aBitrate);
             break;
-        case EPCM16:
-            iPCM16EncFormatIntfc->GetBitRate(aBitrate);
+        case EPCM16: //Not supported
+            error = iPCM16EncFormatIntfc->GetBitRate(aBitrate);
             break;
         default:
             break;
         }
 
     iLog->Log(_L("Get Uplink BR: %d "), aBitrate);
-}
-
+    return error;
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetVAD( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetVAD(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetVAD")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetVAD"));
     TInt error = KErrNone;
@@ -1955,7 +1884,7 @@
     TBool aVad;
 
     switch (iUpLinkCodec)
-    	{
+        {
         case EG711:
             error = iG711EncFormatIntfc->GetVAD(aVad);
             break;
@@ -1968,36 +1897,34 @@
         case EAMR_NB:
             error = iAMRNBEncFormatIntfc->GetVAD(aVad);
             break;
-        case EPCM16:
+        case EPCM16: //Not supported
             error = iPCM16EncFormatIntfc->GetVAD(aVad);
             break;
         default:
             break;
-    	}
+        }
 
-     iLog->Log(_L("get VAD: %d"), aVad);
+    iLog->Log(_L("get VAD: %d"), aVad);
 
-     if (aVad != iVad)
+    if (aVad != iVad)
         {
         iLog->Log(_L("returned VAD doesn't match set VAD: Failed"));
         error = KErrUnexpectedValue;
         }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::ToggleVAD( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ToggleVAD(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ToggleVAD")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ToggleVAD"));
     TInt error = KErrNone;
 
-    iVad = (iVad)? EFalse : ETrue;
+    iVad = (iVad) ? EFalse : ETrue;
 
     switch (iUpLinkCodec)
-    	{
+        {
         case EG711:
             error = iG711EncFormatIntfc->SetVAD(iVad);
             break;
@@ -2010,68 +1937,71 @@
         case EAMR_NB:
             error = iAMRNBEncFormatIntfc->SetVAD(iVad);
             break;
-        case EPCM16:
+        case EPCM16: //Fail case
             error = iPCM16EncFormatIntfc->SetVAD(iVad);
+            AddExpectedEvent(EUplinkError, KShortTimeout);
             break;
         default:
             break;
-    	}
+        }
 
     iLog->Log(_L("VAD set: %d"), iVad);
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetFrameMode( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetFrameMode(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetFrameMode")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetFrameMode"));
     TInt error = KErrNone;
 
-    TBool aFrameMode = EFalse;
+    TBool frameMode = EFalse;
     switch (iDnLinkCodec)
         {
         case EG711:
-            error = iG711DecFormatIntfc->GetFrameMode(aFrameMode);
-            iLog->Log(_L("FrameMode: %d"), aFrameMode);
+            error = iG711DecFormatIntfc->GetFrameMode(frameMode);
+            iLog->Log(_L("FrameMode: %d"), frameMode);
             break;
         case EG729:
-            error = iG729DecFormatIntfc->GetFrameMode(aFrameMode);
-            iLog->Log(_L("FrameMode: %d"), aFrameMode);
+            error = iG729DecFormatIntfc->GetFrameMode(frameMode);
+            iLog->Log(_L("FrameMode: %d"), frameMode);
             break;
         case EILBC:
-            error = iILBCDecFormatIntfc->GetFrameMode(iFrameMode);
-            iLog->Log(_L("FrameMode: %d"), aFrameMode);
+            error = iILBCDecFormatIntfc->GetFrameMode(frameMode);
+            iLog->Log(_L("FrameMode: %d"), frameMode);
             break;
         case EAMR_NB:
-            error = iAMRNBDecFormatIntfc->GetFrameMode(iFrameMode);
-            iLog->Log(_L("FrameMode: %d"), aFrameMode);
+            error = iAMRNBDecFormatIntfc->GetFrameMode(frameMode);
+            iLog->Log(_L("FrameMode: %d"), frameMode);
             break;
         case EPCM16:
+            error = iPCM16DecFormatIntfc->GetFrameMode(frameMode);
+            break;
         default:
             break;
         }
 
-      if (aFrameMode != iFrameMode)
-    	  {
-    	  iLog->Log(_L("returned FrameMode doesn't match set FrameMode: Failed"));
-    	  error = KErrUnexpectedValue;
-    	  }
+    if (error == KErrNone)
+        {
+        if (frameMode != iFrameMode)
+            {
+            iLog->Log(
+                    _L("returned FrameMode doesn't match set FrameMode: Failed"));
+            error = KErrUnexpectedValue;
+            }
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::ToggleFrameMode( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ToggleFrameMode(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ToggleFrameMode")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ToggleFrameMode"));
     TInt error = KErrNone;
 
-    iFrameMode = (iFrameMode)? EFalse : ETrue;
+    iFrameMode = (iFrameMode) ? EFalse : ETrue;
 
     switch (iDnLinkCodec)
         {
@@ -2091,18 +2021,19 @@
             error = iAMRNBDecFormatIntfc->SetFrameMode(iFrameMode);
             iLog->Log(_L("FrameMode Set: %d"), iFrameMode);
             break;
-        case EPCM16:
+        case EPCM16: //Fail case
+            AddExpectedEvent(EDownlinkError, KShortTimeout);
+            error = iPCM16DecFormatIntfc->SetFrameMode(iFrameMode);
+            break;
         default:
             break;
         }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetFrameModeRqrdForEC"));
     TInt error = KErrNone;
@@ -2110,37 +2041,43 @@
     switch (iDnLinkCodec)
         {
         case EG711:
-            error = iG711DecFormatIntfc->FrameModeRequiredForErrorConcealment(
-                                 iFrameModeReqEC);
+            error
+                    = iG711DecFormatIntfc->FrameModeRequiredForErrorConcealment(
+                            iFrameModeReqEC);
             iLog->Log(_L("FrmModeRqdForEC: %d"), iFrameModeReqEC);
             break;
         case EG729:
-            error = iG729DecFormatIntfc->FrameModeRequiredForErrorConcealment(
-                                 iFrameModeReqEC);
+            error
+                    = iG729DecFormatIntfc->FrameModeRequiredForErrorConcealment(
+                            iFrameModeReqEC);
             iLog->Log(_L("FrmModeRqdForEC: %d"), iFrameModeReqEC);
             break;
         case EILBC:
-            error = iILBCDecFormatIntfc->FrameModeRequiredForErrorConcealment(
-                                 iFrameModeReqEC);
+            error
+                    = iILBCDecFormatIntfc->FrameModeRequiredForErrorConcealment(
+                            iFrameModeReqEC);
             iLog->Log(_L("FrmModeRqdForEC: %d"), iFrameModeReqEC);
             break;
         case EAMR_NB:
-            error = iAMRNBDecFormatIntfc->FrameModeRequiredForErrorConcealment(
-                                  iFrameModeReqEC);
+            error
+                    = iAMRNBDecFormatIntfc->FrameModeRequiredForErrorConcealment(
+                            iFrameModeReqEC);
             iLog->Log(_L("FrmModeRqdForEC: %d"), iFrameModeReqEC);
             break;
-        case EPCM16:
+        case EPCM16: //Not supported
+            error
+                    = iPCM16DecFormatIntfc->FrameModeRequiredForErrorConcealment(
+                            iFrameModeReqEC);
+            break;
         default:
             break;
         }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::ConcealErrForNextBuf( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ConcealErrForNextBuf(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ConcealErrForNextBuf")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ConcealErrForNextBuf"));
     TInt error = KErrNone;
@@ -2163,18 +2100,19 @@
             error = iAMRNBDecFormatIntfc->ConcealErrorForNextBuffer();
             iLog->Log(_L("Conceal Error for next buf"));
             break;
-        case EPCM16:
+        case EPCM16: //Fail case
+            AddExpectedEvent(EDownlinkError, KShortTimeout);
+            error = iPCM16DecFormatIntfc->ConcealErrorForNextBuffer();
+            break;
         default:
             break;
         }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetMode( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::GetMode(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetMode")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetMode"));
     TInt error = KErrNone;
@@ -2182,91 +2120,88 @@
     TPtrC linkType;
     error = aItem.GetNextString(linkType);
     if (error == KErrNone)
-    	{
-        if ((linkType == KTagUplink)&&(iUpLinkCodec == EG711))
-        	{
-        	CVoIPFormatIntfc::TG711CodecMode aMode;
-        	iG711EncFormatIntfc->GetMode(aMode);
-        	if (aMode == CVoIPFormatIntfc::EG711ALaw)
-        		{
-        		iLog->Log(_L("UPL Mode: aLaw"));
-        		}
+        {
+        if ((linkType == KTagUplink) && (iUpLinkCodec == EG711))
+            {
+            CVoIPFormatIntfc::TG711CodecMode aMode;
+            iG711EncFormatIntfc->GetMode(aMode);
+            if (aMode == CVoIPFormatIntfc::EG711ALaw)
+                {
+                iLog->Log(_L("UPL Mode: aLaw"));
+                }
             else if (aMode == CVoIPFormatIntfc::EG711uLaw)
-            	{
-            	iLog->Log(_L("UPL Mode: uLaw"));
-            	}
+                {
+                iLog->Log(_L("UPL Mode: uLaw"));
+                }
             else
-            	{
+                {
                 iLog->Log(_L("UPL Mode: unknown"));
-            	}
-        	}
-        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC) )
-        	{
-        	CVoIPFormatIntfc::TILBCCodecMode aMode;
+                }
+            }
+        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC))
+            {
+            CVoIPFormatIntfc::TILBCCodecMode aMode;
             iILBCEncFormatIntfc->GetMode(aMode);
             if (aMode == CVoIPFormatIntfc::EiLBC20mSecFrame)
-            	{
+                {
                 iLog->Log(_L("UPL Mode: 20ms frame"));
-            	}
+                }
             else if (aMode == CVoIPFormatIntfc::EiLBC30mSecFrame)
-            	{
+                {
                 iLog->Log(_L("UPL Mode: 30ms frame"));
-            	}
+                }
             else
-            	{
+                {
                 iLog->Log(_L("UPL Mode: unknown"));
-            	}
-        	}
-        else if ((linkType == KTagDnlink)&&(iDnLinkCodec == EG711))
-        	{
-        	CVoIPFormatIntfc::TG711CodecMode aMode;
-        	iG711DecFormatIntfc->GetMode(aMode);
-        	if (aMode == CVoIPFormatIntfc::EG711ALaw)
-	            {
-	            iLog->Log(_L("DNL Mode: aLaw"));
-	            }
+                }
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EG711))
+            {
+            CVoIPFormatIntfc::TG711CodecMode aMode;
+            iG711DecFormatIntfc->GetMode(aMode);
+            if (aMode == CVoIPFormatIntfc::EG711ALaw)
+                {
+                iLog->Log(_L("DNL Mode: aLaw"));
+                }
             else if (aMode == CVoIPFormatIntfc::EG711uLaw)
-	            {
-	            iLog->Log(_L("DNL Mode: uLaw"));
-	            }
+                {
+                iLog->Log(_L("DNL Mode: uLaw"));
+                }
             else
-            	{
+                {
                 iLog->Log(_L("DNL Mode: unknown"));
-            	}
-        	}
-        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC) )
-        	{
-        	CVoIPFormatIntfc::TILBCCodecMode aMode;
+                }
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC))
+            {
+            CVoIPFormatIntfc::TILBCCodecMode aMode;
             iILBCDecFormatIntfc->GetMode(aMode);
             if (aMode == CVoIPFormatIntfc::EiLBC20mSecFrame)
-            	{
+                {
                 iLog->Log(_L("DNL Mode: 20ms frame"));
-            	}
+                }
             else if (aMode == CVoIPFormatIntfc::EiLBC30mSecFrame)
-            	{
+                {
                 iLog->Log(_L("DNL Mode: 30ms frame"));
-            	}
+                }
             else
-            	{
+                {
                 iLog->Log(_L("DNL Mode: unknown"));
-            	}
-        	}
+                }
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
+            {
+            iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
-        	}
+            }
 
-    	}
+        }
 
     return error;
-}
-
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::SetMode( CStifItemParser& aItem )
-{
+TInt CVoIPAudioServicesTestClass::SetMode(CStifItemParser& aItem)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::SetMode")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::SetMode"));
     TInt error = KErrNone;
@@ -2274,68 +2209,74 @@
     TPtrC linkType;
     error = aItem.GetNextString(linkType);
     if (error != KErrNone)
-    	{
+        {
         return error;
-    	}
+        }
 
     TPtrC mode;
     error = aItem.GetNextString(mode);
     if (error == KErrNone)
-    	{
-        if ((linkType == KTagUplink) && (iUpLinkCodec == EG711) && (mode == KTagALaw))
-        	{
-	        iG711EncFormatIntfc->SetMode(CVoIPFormatIntfc::EG711ALaw);
-	        iLog->Log(_L("UPL Mode Set: aLaw"));
-        	}
-        else if ((linkType == KTagUplink) && (iUpLinkCodec == EG711) && (mode == KTagULaw))
-        	{
-        	iG711EncFormatIntfc->SetMode(CVoIPFormatIntfc::EG711uLaw);
-        	iLog->Log(_L("UPL Mode Set: uLaw"));
-        	}
-        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC)&& (mode == KTag20ms ))
-        	{
-        	iILBCEncFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC20mSecFrame);
-        	iLog->Log(_L("UPL Mode Set: 20ms frame"));
-        	}
-        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC)&& (mode == KTag30ms ))
-        	{
-        	iILBCEncFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC30mSecFrame);
-        	iLog->Log(_L("UPL Mode Set: 30ms frame"));
-        	}
-        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EG711) && (mode == KTagALaw) )
-        	{
-        	iG711DecFormatIntfc->SetMode(CVoIPFormatIntfc::EG711ALaw);
-        	iLog->Log(_L("DNL Mode Set: aLaw"));
-        	}
-        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EG711) && (mode == KTagULaw) )
-        	{
-        	iG711DecFormatIntfc->SetMode(CVoIPFormatIntfc::EG711uLaw);
-	        iLog->Log(_L("DNL Mode Set: uLaw"));
-        	}
-        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC) && (mode == KTag20ms) )
-        	{
-        	iILBCDecFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC20mSecFrame);
-        	iLog->Log(_L("DNL Mode Set: 20ms frame"));
-        	}
-        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC) && (mode == KTag30ms) )
-        	{
-        	iILBCDecFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC30mSecFrame);
-        	iLog->Log(_L("DNL Mode Set: 30ms frame"));
-        	}
+        {
+        if ((linkType == KTagUplink) && (iUpLinkCodec == EG711) && (mode
+                == KTagALaw))
+            {
+            iG711EncFormatIntfc->SetMode(CVoIPFormatIntfc::EG711ALaw);
+            iLog->Log(_L("UPL Mode Set: aLaw"));
+            }
+        else if ((linkType == KTagUplink) && (iUpLinkCodec == EG711) && (mode
+                == KTagULaw))
+            {
+            iG711EncFormatIntfc->SetMode(CVoIPFormatIntfc::EG711uLaw);
+            iLog->Log(_L("UPL Mode Set: uLaw"));
+            }
+        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC) && (mode
+                == KTag20ms))
+            {
+            iILBCEncFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC20mSecFrame);
+            iLog->Log(_L("UPL Mode Set: 20ms frame"));
+            }
+        else if ((linkType == KTagUplink) && (iUpLinkCodec == EILBC) && (mode
+                == KTag30ms))
+            {
+            iILBCEncFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC30mSecFrame);
+            iLog->Log(_L("UPL Mode Set: 30ms frame"));
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EG711) && (mode
+                == KTagALaw))
+            {
+            iG711DecFormatIntfc->SetMode(CVoIPFormatIntfc::EG711ALaw);
+            iLog->Log(_L("DNL Mode Set: aLaw"));
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EG711) && (mode
+                == KTagULaw))
+            {
+            iG711DecFormatIntfc->SetMode(CVoIPFormatIntfc::EG711uLaw);
+            iLog->Log(_L("DNL Mode Set: uLaw"));
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC) && (mode
+                == KTag20ms))
+            {
+            iILBCDecFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC20mSecFrame);
+            iLog->Log(_L("DNL Mode Set: 20ms frame"));
+            }
+        else if ((linkType == KTagDnlink) && (iDnLinkCodec == EILBC) && (mode
+                == KTag30ms))
+            {
+            iILBCDecFormatIntfc->SetMode(CVoIPFormatIntfc::EiLBC30mSecFrame);
+            iLog->Log(_L("DNL Mode Set: 30ms frame"));
+            }
         else
-        	{
-        	iLog->Log(KMsgBadTestParameters);
+            {
+            iLog->Log(KMsgBadTestParameters);
             error = KErrBadTestParameter;
-        	}
-    	}
+            }
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetCNG( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetCNG(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetCNG")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetCNG"));
     TInt error = KErrNone;
@@ -2355,24 +2296,22 @@
             break;
         }
 
-      if (aCng != iCng)
-    	  {
-    	  iLog->Log(_L("returned Cng doesn't match set Cng: Failed"));
-    	  error = KErrUnexpectedValue;
-    	  }
+    if (aCng != iCng)
+        {
+        iLog->Log(_L("returned Cng doesn't match set Cng: Failed"));
+        error = KErrUnexpectedValue;
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::ToggleCNG( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ToggleCNG(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ToggleCNG")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ToggleCNG"));
     TInt error = KErrNone;
 
-    iCng = (iCng)? EFalse : ETrue;
+    iCng = (iCng) ? EFalse : ETrue;
 
     switch (iDnLinkCodec)
         {
@@ -2389,35 +2328,31 @@
         }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::GetPLC( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetPLC(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetPLC")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetPLC"));
     TInt error = KErrNone;
 
     TBool aPlc = EFalse;
     if (iDnLinkCodec == EG711)
-    	{
+        {
         iG711DecFormatIntfc->GetPLC(aPlc);
         iLog->Log(_L("PLC: %d"), aPlc);
-    	}
+        }
 
     return error;
-}
-
+    }
 
-
-TInt CVoIPAudioServicesTestClass::TogglePLC( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::TogglePLC(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::TogglePLC")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::TogglePLC"));
     TInt error = KErrNone;
 
-    iPlc = (iPlc)? EFalse : ETrue;
+    iPlc = (iPlc) ? EFalse : ETrue;
 
     if (iDnLinkCodec == EG711)
         {
@@ -2426,79 +2361,85 @@
         }
 
     return error;
-}
-
+    }
 
+TInt CVoIPAudioServicesTestClass::BadLsfNextBuffer(CStifItemParser& /*aItem*/)
+    {
+    return BadLsfNextBuffer();
+    }
 
-TInt CVoIPAudioServicesTestClass::BadLsfNextBuffer( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::BadLsfNextBuffer()
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::BadLsfNextBuffer")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::BadLsfNextBuffer"));
     TInt error = KErrNone;
-
-    if (iDnLinkCodec == EG729)
+    if (iG729DecFormatIntfc)
         {
         error = iG729DecFormatIntfc->BadLsfNextBuffer();
+        if (iDnLinkStatus != EStreaming)
+            {
+            AddExpectedEvent(EDownlinkError, KShortTimeout);
+            }
         iLog->Log(_L("BadLsf for next buf"));
         }
-
     return error;
-}
+    }
 
-
-
-TInt CVoIPAudioServicesTestClass::StopRingTone( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::StopRingTone(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::StopRingTone")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::StopRingTone"));
     TInt error = KErrNone;
 
     if (iRingTonePlayer)
-    	{
+        {
         iRingTonePlayer->Stop();
         RemoveExpectedEvent(EPlaybackComplete);
-    	}
+        }
     else
-	  {
-      iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
-      error = KErrNotFound;
-	  }
+        {
+        iLog->Log(_L("RT PLR Not Ready: error = %d"), KErrNotFound);
+        error = KErrNotFound;
+        }
 
     return error;
-}
-
+    }
 
-TInt CVoIPAudioServicesTestClass::GetBufferType( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::GetBufferType(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::GetBufferType")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::GetBufferType"));
-    TInt error = KErrNone;
+    TInt error = KErrNotFound;
 
     CVoIPDataBuffer::TVoIPBufferType BufType;
-    iPlayBuf->GetBufferType(BufType);
+    if (iPlayBuf)
+        {
+        iPlayBuf->GetBufferType(BufType);
+        error = KErrNone;
 
-    if (BufType != CVoIPDataBuffer::EStandard && BufType != CVoIPDataBuffer::EJitterBuffer)
-    	{
-    	error = KErrUnknown;
-    	FTRACE(FPrint(_L("Buffer Type Unknown")));
-        iLog->Log(_L("Buffer Type Unknown"));
-    	}
+        if (BufType != CVoIPDataBuffer::EStandard && BufType
+                != CVoIPDataBuffer::EJitterBuffer)
+            {
+            error = KErrUnknown;
+            FTRACE(FPrint(_L("Buffer Type Unknown")));
+            iLog->Log(_L("Buffer Type Unknown"));
+            }
+        }
+    return error;
+    }
 
-    return error;
-}
-
-
-#ifdef __JITTER_BUFFER_TEST__
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::ConfigureJB
 //
 // ----------------------------------------------------------------------------
 //
-TInt CVoIPAudioServicesTestClass::ConfigureJB()
-{
+TInt CVoIPAudioServicesTestClass::ConfigureJB(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ConfigureJB")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::ConfigureJB"));
     TInt err = KErrNotSupported;
 
-    if (iJBIntfc && iDnLinkCodec != EPCM16)
+    if (iJBIntfc /*&& iDnLinkCodec != EPCM16*/)
         {
         TVoIPJBConfig jBConfig;
 
@@ -2526,116 +2467,80 @@
         jBConfig.iJBInactivityTimeOut = 30;
 
         // Configure reset buffer tone playback params
-//      jBConfig.iJitterBufPlayToneDuration = ?;
-//      jBConfig.iJitterBufPlayToneFrequency = ?;
-//      jBConfig.iJitterBufPlayToneTimeout = ?;
+        //      jBConfig.iJitterBufPlayToneDuration = ?;
+        //      jBConfig.iJitterBufPlayToneFrequency = ?;
+        //      jBConfig.iJitterBufPlayToneTimeout = ?;
 
         err = iJBIntfc->ConfigureJitterBuffer(jBConfig);
+        iLog->Log(_L("JB Configure and start requested"));
+        AddExpectedEvent(EFillBuffer, KShortTimeout);
         }
-
-//    	DisplayText(_L("JB Initialized"));
-
     return err;
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::ResetJB
 //
 // ----------------------------------------------------------------------------
 //
-TInt CVoIPAudioServicesTestClass::ResetJB()
-{
+TInt CVoIPAudioServicesTestClass::ResetJB(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ResetJB")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::ResetJB"));
     TInt err = KErrNotSupported;
 
     if (iJBIntfc && iDnLinkCodec != EPCM16)
         {
         err = iJBIntfc->ResetJitterBuffer(ETrue);
         }
-
     return err;
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::DelayDown
 //
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::DelayDown()
-{
+TInt CVoIPAudioServicesTestClass::DelayDown(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::DelayDown")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::DelayDown"));
+    TInt err = KErrNotSupported;
     if (iJBIntfc && iDnLinkCodec != EPCM16)
         {
-        iJBIntfc->DelayDown();
+        err = iJBIntfc->DelayDown();
         }
-}
+    return err;
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::DelayUp
 //
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::DelayUp()
-{
+TInt CVoIPAudioServicesTestClass::DelayUp(CStifItemParser& /*aItem*/)
+    {
+    FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::DelayUp")));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::DelayUp"));
+    TInt err = KErrNotSupported;
     if (iJBIntfc && iDnLinkCodec != EPCM16)
         {
-        iJBIntfc->DelayUp();
+        err = iJBIntfc->DelayUp();
         }
-}
-#endif //__JITTER_BUFFER_TEST__
-
+    return err;
+    }
 
 // ----------------------------------------------------------------------------
-// CVoIPTestEngine::DoLoopback
+// CVoIPTestEngine::SetLoopPlay
 //
 // ----------------------------------------------------------------------------
 //
-/*void CVoIPAudioServicesTestClass::DoLoopback()
+TInt CVoIPAudioServicesTestClass::SetLoopPlay(CStifItemParser& /*aItem*/)
     {
-   	iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback"));
- 		if (iPlayBufReady && iRecBufReady)
-        {
-        iPlayBufPtr.Copy(iRecBufPtr);
-
-
-#ifdef __JITTER_BUFFER_TEST__
-        if (iDnLinkCodec != EPCM16)
-            {
-            // We need to generate sequence number for each frame.
-            // Real client should get sequence number from the RTP header.
-            // Max possible sequence number of RTP packet with standard
-            // RTP header is 0xFFFF (16-bit value)
-            if (iSeqNum < (KMaxSeqNumber - iSeqNumIncrement))
-            	{
-                iSeqNum += iSeqNumIncrement;
-            	}
-            else
-            	{
-                iSeqNum = iSeqNumIncrement; //wrap-around
-            	}
-
-            iPlayJBuf->SetPayloadPtr(iPlayBufPtr);
-            iPlayJBuf->SetBufferSequence(iSeqNum);
-            iVoIPDnlink->BufferFilled(iPlayJBuf);
-            iPlayBufReady = ETrue; // no FillBuffer events in JB mode
-            iRecBufReady = EFalse; // consumed, ready for EmptyBuffer
-            }
-        else
-        	{
-        	; // PCM not supported in Jitter Buffer mode
-        	}
-#else  //__JITTER_BUFFER_TEST__
-
-        iPlayBuf->SetPayloadPtr(iPlayBufPtr);
-        iVoIPDnlink->BufferFilled(iPlayBuf);
-        iLog->Log(_L("CVoIPAudioServicesTestClass::played"));
-        iPlayBufReady = EFalse;
-        iRecBufReady = EFalse;
-#endif //__JITTER_BUFFER_TEST__
-        }
-    iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback END"));
+    iLog->Log(_L("CVoIPAudioServicesTestClass::SetLoopPlay"));
+    iLoopPlay = ETrue;
+    return 0;
     }
-*/
-
-
 
 // ----------------------------------------------------------------------------
 // CVoIPTestEngine::DoLoopback
@@ -2643,101 +2548,110 @@
 // ----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::DoLoopback()
-{
-    
-  
-	iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback"));
-	iLog->Log(_L("loopbackCount = %d"), loopbackCount);
-  if ((0<loopbackCount) && (loopbackCount<= 20))
-  {
-    if (iPlayBufReady && iRecBufReady)
+    {
+    iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback"));
+
+    if (!iLoopPlay)
         {
-        iPlayBufPtr.Copy(iRecBufPtr);
-
-
-#ifdef __JITTER_BUFFER_TEST__
-        if (iDnLinkCodec != EPCM16)
+        if (iPlayBufReady)
+            {
+            // Just keep D/S NULL playback going
+            iPlayBufReady = EFalse;
+            iPlayBufPtr.Copy(_L("0000"));
+            iPlayBuf->SetPayloadPtr(iPlayBufPtr);
+            iVoIPDnlink->BufferFilled(iPlayBuf);
+            }
+        else if (iRecBufReady)
+            {
+            // Keep recording ongoing
+            iRecBufReady = EFalse;
+            iRecBuf->SetPayloadPtr(iRecBufPtr);
+            iVoIPUplink->BufferEmptied(iRecBuf);
+            }
+        }
+    else
+        {
+        if (iPlayBufReady && iRecBufReady)
             {
-            // We need to generate sequence number for each frame.
-            // Real client should get sequence number from the RTP header.
-            // Max possible sequence number of RTP packet with standard
-            // RTP header is 0xFFFF (16-bit value)
-            if (iSeqNum < (KMaxSeqNumber - iSeqNumIncrement))
-            	{
-                iSeqNum += iSeqNumIncrement;
-            	}
-            else
-            	{
-                iSeqNum = iSeqNumIncrement; //wrap-around
-            	}
+            iPlayBufReady = EFalse;
+            iRecBufReady = EFalse;
+            iPlayBufPtr.Copy(iRecBufPtr);
+            iRecBuf->SetPayloadPtr(iRecBufPtr);
+            iVoIPUplink->BufferEmptied(iRecBuf);
+            iPlayBuf->SetPayloadPtr(iPlayBufPtr);
+            iVoIPDnlink->BufferFilled(iPlayBuf);
+            }
+        }
+    }
 
-            iPlayJBuf->SetPayloadPtr(iPlayBufPtr);
-            iPlayJBuf->SetBufferSequence(iSeqNum);
-            iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback, loopbackCount == %d"), loopbackCount);
-            //sue add
-            if (loopbackCount == 10)
-            {
-            	ResetJB();
-            }
-            if (loopbackCount == 12)
+// ----------------------------------------------------------------------------
+// CVoIPTestEngine::DoJBLoopback
+//
+// ----------------------------------------------------------------------------
+//
+void CVoIPAudioServicesTestClass::DoJBLoopback()
+    {
+
+    iLog->Log(_L("CVoIPAudioServicesTestClass::DoJBLoopback"));
+
+    if (iPlayBufReady && iRecBufReady && iDnLinkCodec != EPCM16)
+        {
+        // We need to generate sequence number for each frame.
+        // Real client should get sequence number from the RTP header.
+        // Max possible sequence number of RTP packet with standard
+        // RTP header is 0xFFFF (16-bit value)
+        if (iSeqNum < (KMaxSeqNumber - iSeqNumIncrement))
             {
-            	DelayDown();
-            }
-            if (loopbackCount == 14)
-            {
-            	DelayUp();
-            }
-            // end sue
-            iRecBuf->SetPayloadPtr(iRecBufPtr); //sue add
-            iVoIPDnlink->BufferFilled(iPlayJBuf);
-            iVoIPUplink->BufferEmptied(iRecBuf); 
-            iPlayBufReady = ETrue; // no FillBuffer events in JB mode
-            iRecBufReady = EFalse; // consumed, ready for EmptyBuffer
-            loopbackCount++;	
+            iSeqNum += iSeqNumIncrement;
             }
         else
-        	{
-        	; // PCM not supported in Jitter Buffer mode
-        	}
-#else  //__JITTER_BUFFER_TEST__
+            {
+            iSeqNum = iSeqNumIncrement; //wrap-around
+            }
 
-        iPlayBuf->SetPayloadPtr(iPlayBufPtr);
-        iRecBuf->SetPayloadPtr(iRecBufPtr); 
-        iVoIPDnlink->BufferFilled(iPlayBuf);
-        iVoIPUplink->BufferEmptied(iRecBuf); 
         iPlayBufReady = EFalse;
         iRecBufReady = EFalse;
-        loopbackCount++;	
-        
-        
-
-#endif //__JITTER_BUFFER_TEST__
+        iPlayBufPtr.Copy(iRecBufPtr);
+        iRecBuf->SetPayloadPtr(iRecBufPtr);
+        iVoIPUplink->BufferEmptied(iRecBuf);
+        iPlayJBuf->SetPayloadPtr(iPlayBufPtr);
+        iPlayJBuf->SetBufferSequence(iSeqNum);
+        iVoIPDnlink->BufferFilled(iPlayJBuf);
         }
-	}
-  else
-  {
-    loopbackCount = 0;
-    iLog->Log(_L("CVoIPAudioServicesTestClass::DoLoopback test end"));
-  }
- }
+    }
 
-
-
-TInt CVoIPAudioServicesTestClass::ConfigEncAudDevice( CStifItemParser& /*aItem*/ )
-{
+TInt CVoIPAudioServicesTestClass::ConfigEncAudDevice(CStifItemParser& /*aItem*/)
+    {
     FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::ConfigEncAudDevice")));
     iLog->Log(_L("CVoIPAudioServicesTestClass::ConfigEncAudDevice"));
     TInt error = KErrNone;
     if (iUpLinkStatus == EReady)
-    	{
-    // Now we can configure encoder and audio device
-    	iVoIPUplink->GetMaxGain(iMaxGain);
-    	iVoIPUplink->SetGain(iMaxGain);
-    	}
+        {
+        // Now we can configure encoder and audio device
+        iVoIPUplink->GetMaxGain(iMaxGain);
+        iVoIPUplink->SetGain(iMaxGain);
+        }
 
     return error;
-}
+    }
+
+//class CVoIPAudioDownlinkStream2 : public CVoIPAudioDownlinkStream {};
+
+TInt CVoIPAudioServicesTestClass::TestNullObjects(CStifItemParser& /*aItem*/)
+    {
+    //FTRACE(FPrint(_L("CVoIPAudioServicesTestClass::CreateFactory")));
+    //iLog->Log(_L("CVoIPAudioServicesTestClass::CreateFactory"));
 
+    TInt error = KErrNone;
+   // CVoIPAudioDownlinkStream2* dnl = new CVoIPAudioDownlinkStream2();
 
+//    error = CVoIPUtilityFactory::CreateFactory(iFactory);
+//    iFactory->CreateDownlinkStream(TVersion(0,0,0),
+//            CVoIPUtilityFactory::EVoIPCall, iVoIPDnlink);
+    //TInt vol;
+ //   dnl->GetVolume(vol);
+    //delete dnl;
+    return error;
+    }
 
 //  End of File
--- a/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocksCallbacks.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/VoIPAudioServicesTestClass/src/VoIPAudioServicesTestClassBlocksCallbacks.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,31 +1,25 @@
 /*
-* Copyright (c) 2002-2008 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: voip audio service -
-*
-*/
-
-
+ * Copyright (c) 2002-2008 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: voip audio service -
+ *
+ */
 
 // INCLUDE FILES
 #include "VoIPAudioServicesTestClass.h"
 #include "debug.h"
 
-
-
-
-
-/************************************************************************************************************/
+const TUint KLoopCount = 200;
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::FillBuffer
@@ -33,26 +27,38 @@
 // Callback from MVoIPDownlinkObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::FillBuffer(const CVoIPAudioDownlinkStream& /*aSrc*/,
-                                  CVoIPDataBuffer* aBuffer)
-{
+void CVoIPAudioServicesTestClass::FillBuffer(
+        const CVoIPAudioDownlinkStream& /*aSrc*/, CVoIPDataBuffer* aBuffer)
+    {
+    iLog->Log(_L("CVoIPAudioServicesTestClass::FillBuffer"));
 
-    iLog->Log(_L("CVoIPAudioServicesTestClass::FillBuffer"));
-    ProcessEvent(EFillBuffer, KErrNone);
+    if (!iJBIntfc)
+        {
+        if (iPlayCounter++ < KLoopCount)
+            {
+            aBuffer->GetPayloadPtr(iPlayBufPtr);
+            iPlayBufReady = ETrue; // always ready in JB mode
 
-    // In JB mode we will only receive FillBuffer callback once after
-    // ConfigureJB. We will simply reuse same buffer to send data to VAS.
-    aBuffer->GetPayloadPtr(iPlayBufPtr);
-    iPlayBufReady = ETrue; // always ready in JB mode
-
-#ifndef __JITTER_BUFFER_TEST__
-    // In JB mode, DoLoopback is only called when from EmptyBuffer
-    if (iDnLinkStatus == EStreaming)
+            if (iDnLinkStatus == EStreaming)
+                {
+                if (iDnLinkCodec == EG729 && ((iPlayCounter == KLoopCount / 2)
+                        || (iPlayCounter == KLoopCount / 5)))
+                    {
+                    BadLsfNextBuffer();
+                    }
+                DoLoopback();
+                }
+            }
+        }
+    else //JB case
         {
-        DoLoopback();
+        // In JB mode we will only receive FillBuffer callback once after
+        // ConfigureJB. We will simply reuse same buffer to send data to VAS.
+        // The loopback play is controlled by the recorder side.
+        aBuffer->GetPayloadPtr(iPlayBufPtr);
+        iPlayBufReady = ETrue; // always ready in JB mode
         }
-#endif  //__JITTER_BUFFER_TEST__
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
@@ -60,10 +66,10 @@
 // Callback from MVoIPDownlinkObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::Event(const CVoIPAudioDownlinkStream& /*aSrc*/,
-                            TInt aEventType,
-                            TInt aError)
-{
+void CVoIPAudioServicesTestClass::Event(
+        const CVoIPAudioDownlinkStream& /*aSrc*/, TInt aEventType,
+        TInt aError)
+    {
     switch (aEventType)
         {
         case MVoIPDownlinkObserver::KOpenComplete:
@@ -74,26 +80,19 @@
                 iVoIPDnlink->GetMaxVolume(iMaxVolume);
                 iVoIPDnlink->SetVolume(iMaxVolume / 2);
                 //  ConfigureDecoder();
-
-#ifdef __JITTER_BUFFER_TEST__
-                if (iDnLinkCodec != EPCM16)
-                    {
-                    ConfigureJB(); // will trigger FillBuffer callback
-                    }
-#endif //__JITTER_BUFFER_TEST__
-
                 iDnLinkStatus = EReady;
-                iLog->Log(_L("MVoIPDownlinkObserver::KOpenComplete: aError = %d"), aError);
+                iLog->Log(_L("MVoIPDownlinkObserver::KOpenComplete: aError = %d"),
+                        aError);
                 ProcessEvent(EOpenDownlinkComplete, aError);
                 }
-
             iLog->Log(_L("DNL Initialized: aError = %d"), aError);
             break;
             }
         case MVoIPDownlinkObserver::KDownlinkClosed:
             {
             iDnLinkStatus = ENotReady;
-            iLog->Log(_L("MVoIPDownlinkObserver::KDownlinkClosed: aError = %d"), aError);
+            iLog->Log(_L("MVoIPDownlinkObserver::KDownlinkClosed: aError = %d"),
+                    aError);
             ProcessEvent(EDownlinkClosed, aError);
             break;
             }
@@ -101,29 +100,13 @@
             {
             iDnLinkStatus = EReady;
             iLog->Log(_L("DNL Error: aError = %d"), aError);
+            ProcessEvent(EDownlinkError, aError);
             break;
             }
-/*        case KVoIPOpenDTMFComplete:
-            {
-            DisplayText(_L("DTMF (DNL) Open"), aError);
-            break;
-            }*/
-/*
-        case KVoIP_TEMP1:
-            {
-            DisplayText(_L("DTMF PLR Ready"), aError);
-            break;
-            }
-        case KVoIP_TEMP2:
-            {
-            DisplayText(_L("DTMF PLR Ready"), aError);
-            break;
-            }
-*/
         default:
             break;
         }
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::EmptyBuffer
@@ -131,22 +114,29 @@
 // Callback from MVoIPUplinkObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::EmptyBuffer(const CVoIPAudioUplinkStream& /*aSrc*/,
-                                  CVoIPDataBuffer* aBuffer)
-{
+void CVoIPAudioServicesTestClass::EmptyBuffer(
+        const CVoIPAudioUplinkStream& /*aSrc*/, CVoIPDataBuffer* aBuffer)
+    {
     iLog->Log(_L("CVoIPAudioServicesTestClass::EmptyBuffer"));
-    ProcessEvent(EEmptyBuffer, KErrNone);
+
+    if (iRecCounter++ < KLoopCount)
+        {
+        aBuffer->GetPayloadPtr(iRecBufPtr);
+        iRecBufReady = ETrue;
 
-    aBuffer->GetPayloadPtr(iRecBufPtr);
-    iRecBufReady = ETrue;
-
-    if (iUpLinkStatus == EStreaming)
-        {
-        DoLoopback();
-      //  iVoIPUplink->BufferEmptied(aBuffer);
-      //  iUpLinkStatus = EReady;
+        if (iUpLinkStatus == EStreaming)
+            {
+            if (iJBIntfc)
+                {
+                DoJBLoopback();
+                }
+            else
+                {
+                DoLoopback();
+                }
+            }
         }
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
@@ -154,10 +144,9 @@
 // Callback from MVoIPUplinkObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::Event(const CVoIPAudioUplinkStream& /*aSrc*/,
-                            TInt aEventType,
-                            TInt aError)
-{
+void CVoIPAudioServicesTestClass::Event(
+        const CVoIPAudioUplinkStream& /*aSrc*/, TInt aEventType, TInt aError)
+    {
     switch (aEventType)
         {
         case MVoIPUplinkObserver::KOpenComplete:
@@ -167,19 +156,19 @@
                 // Now we can configure encoder and audio device
                 iVoIPUplink->GetMaxGain(iMaxGain);
                 iVoIPUplink->SetGain(iMaxGain);
-
                 iUpLinkStatus = EReady;
-                iLog->Log(_L("MVoIPUplinkObserver::KOpenComplete: aError = %d"), aError);
+                iLog->Log(_L("MVoIPUplinkObserver::KOpenComplete: aError = %d"),
+                        aError);
                 ProcessEvent(EOpenUplinkComplete, aError);
                 }
-
             iLog->Log(_L("UPL Initialized: aError = %d"), aError);
             break;
             }
         case MVoIPUplinkObserver::KUplinkClosed:
             {
             iUpLinkStatus = ENotReady;
-            iLog->Log(_L("MVoIPUplinkObserver::KUplinkClosed: aError = %d"), aError);
+            iLog->Log(_L("MVoIPUplinkObserver::KUplinkClosed: aError = %d"),
+                    aError);
             ProcessEvent(EUplinkClosed, aError);
             break;
             }
@@ -187,25 +176,13 @@
             {
             iUpLinkStatus = EReady;
             iLog->Log(_L("UPL Error: aError = %d"), aError);
+            ProcessEvent(EUplinkError, aError);
             break;
             }
-
-// TODO: Move to MDTMFToneObserver::Event handler
-/*        case KVoIP_TEMP1:
-            {
-            DisplayText(_L("DTMF PLR Ready"), aError);
-            break;
-            }
-        case KVoIP_TEMP2:
-            {
-            DisplayText(_L("DTMF PLR Ready"), aError);
-            break;
-            }
-*/
         default:
             break;
         }
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
@@ -213,8 +190,9 @@
 // Callback from MVoIPFormatObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::Event(const CVoIPFormatIntfc& /*aSrc*/, TInt aEventType)
-{
+void CVoIPAudioServicesTestClass::Event(const CVoIPFormatIntfc& /*aSrc*/,
+        TInt aEventType)
+    {
     switch (aEventType)
         {
         case MVoIPFormatObserver::KSilenceBegin:
@@ -224,7 +202,7 @@
         default:
             break;
         }
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
@@ -233,23 +211,26 @@
 // ----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::Event(const CDTMFTonePlayer& /*aSrc*/,
-                            TInt aEventType,
-                            TInt aError)
-{
+        TInt aEventType, TInt aError)
+    {
     switch (aEventType)
         {
         case MDTMFToneObserver::KOpenCompleteDNL:
-            iLog->Log(_L("MDTMFToneObserver:KOpenCompleteDNL:DTMF DNL-PLR Ready: aError = %d"), aError);
+            iLog->Log(
+                    _L("MDTMFToneObserver:KOpenCompleteDNL:DTMF DNL-PLR Ready: aError = %d"),
+                    aError);
             ProcessEvent(EOpenCompleteDNL, aError);
             break;
         case MDTMFToneObserver::KOpenCompleteUPL:
-            iLog->Log(_L("MDTMFToneObserver:KOpenCompleteUPL:DTMF UPL-PLR Ready: aError = %d"), aError);
+            iLog->Log(
+                    _L("MDTMFToneObserver:KOpenCompleteUPL:DTMF UPL-PLR Ready: aError = %d"),
+                    aError);
             ProcessEvent(EOpenCompleteUPL, aError);
             break;
         default:
             break;
         }
-}
+    }
 
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
@@ -258,9 +239,8 @@
 // ----------------------------------------------------------------------------
 //
 void CVoIPAudioServicesTestClass::Event(const CRingTonePlayer& /*aSrc*/,
-                            TInt aEventType,
-                            TInt aError)
-{
+        TInt aEventType, TInt aError)
+    {
     switch (aEventType)
         {
         case MRingToneObserver::KOpenComplete:
@@ -274,27 +254,23 @@
         default:
             break;
         }
-}
+    }
 
-#ifdef __JITTER_BUFFER_TEST__
 // ----------------------------------------------------------------------------
 // CVoIPAudioServicesTestClass::Event
 //
 // Callback from MVoIPJitterBufferObserver
 // ----------------------------------------------------------------------------
 //
-void CVoIPAudioServicesTestClass::Event(const CVoIPJitterBufferIntfc& /*aSrc*/,
-                            			TInt aEventType)
-{
+void CVoIPAudioServicesTestClass::Event(
+        const CVoIPJitterBufferIntfc& /*aSrc*/, TInt aEventType)
+    {
     switch (aEventType)
         {
         // Reserved for future use
-		case MVoIPJitterBufferObserver::KJBReserved1:
-		case MVoIPJitterBufferObserver::KJBReserved2:
-		default:
+        case MVoIPJitterBufferObserver::KJBReserved1:
+        case MVoIPJitterBufferObserver::KJBReserved2:
+        default:
             break;
         }
-}
-
-#endif //__JITTER_BUFFER_TEST__
-
+    }
Binary file mmmw_plat/voip_audio_services_api/tsrc/data/NokiaTest.aac has changed
Binary file mmmw_plat/voip_audio_services_api/tsrc/data/mmc/alarm.aac has changed
Binary file mmmw_plat/voip_audio_services_api/tsrc/data/mmc/test_8khz.wav has changed
--- a/mmmw_plat/voip_audio_services_api/tsrc/init/TestFramework.ini	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmmw_plat/voip_audio_services_api/tsrc/init/TestFramework.ini	Mon Oct 04 00:51:56 2010 +0300
@@ -91,10 +91,9 @@
 [New_Module]
 ModuleName= TestScripter
 IniFile= c:\TestFramework\VoIPAudioServicesTestClass.ini
-TestCaseFile= c:\testframework\VoIPAudioServicesTestClass.cfg
+TestCaseFile= c:\TestFramework\VoIPAudioServicesTestClass.cfg
 [End_Module]
 
-
 # Load testmoduleXXX, optionally with initialization file and/or test case files
 #[New_Module]
 #ModuleName= testmodulexxx
@@ -191,7 +190,7 @@
 #WithEventRanking= YES        # Possible values: YES or NO
 
 #FileUnicode= YES             # Possible values: YES or NO
-
+#AddTestCaseTitle= YES        # Possible values: YES or NO
 [End_Logger_Defaults]
 # -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/metadatautility/3GPExtParserLib/BWINS/3GPExtParserU.DEF	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,7 @@
+EXPORTS
+	??1C3GPExtParser@@UAE@XZ @ 1 NONAME ; C3GPExtParser::~C3GPExtParser(void)
+	?GetilstBoxesL@C3GPExtParser@@QAEXABVTDesC8@@W4TMetaDataFieldId@@PAPAVHBufC16@@@Z @ 2 NONAME ; void C3GPExtParser::GetilstBoxesL(class TDesC8 const &, enum TMetaDataFieldId, class HBufC16 * *)
+	?Is3GPExtMetadataL@C3GPExtParser@@QAEHXZ @ 3 NONAME ; int C3GPExtParser::Is3GPExtMetadataL(void)
+	?NewL@C3GPExtParser@@SAPAV1@AAPAJ@Z @ 4 NONAME ; class C3GPExtParser * C3GPExtParser::NewL(long * &)
+	?GetilstBoxesL@C3GPExtParser@@QAEXABVTDesC8@@W4TMetaDataFieldId@@PAPAVHBufC8@@@Z @ 5 NONAME ; void C3GPExtParser::GetilstBoxesL(class TDesC8 const &, enum TMetaDataFieldId, class HBufC8 * *)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/metadatautility/3GPExtParserLib/EABI/3GPExtParserU.DEF	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,11 @@
+EXPORTS
+	_ZN13C3GPExtParser13GetilstBoxesLERK6TDesC816TMetaDataFieldIdPP7HBufC16 @ 1 NONAME
+	_ZN13C3GPExtParser17Is3GPExtMetadataLEv @ 2 NONAME
+	_ZN13C3GPExtParser4NewLERPl @ 3 NONAME
+	_ZTI13C3GPExtParser @ 4 NONAME ; #<TI>#
+	_ZTV13C3GPExtParser @ 5 NONAME ; #<VT>#
+	_ZN13C3GPExtParser13GetilstBoxesLERK6TDesC816TMetaDataFieldIdPP6HBufC8 @ 6 NONAME
+	_ZN13C3GPExtParserD0Ev @ 7 NONAME
+	_ZN13C3GPExtParserD1Ev @ 8 NONAME
+	_ZN13C3GPExtParserD2Ev @ 9 NONAME
+
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser.dso has changed
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser.lib has changed
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser{000a0000}.dso has changed
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/LIB/3GPExtParser{000a0000}.lib has changed
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/udeb/3GPExtParser.dll has changed
Binary file mmserv/metadatautility/3GPExtParserLib/armv5/urel/3GPExtParser.dll has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/metadatautility/3GPExtParserLib/group/3GPExtParser.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,51 @@
+/*
+* ==============================================================================
+*  Name        : 3GPExtParser
+*  Part of     : 3GPExtParser- MetaDataUtility
+*  Description : Project file for 3GPExtParser
+*  Version     : 1
+* Copyright (c) 2008 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:  MMP File
+* ==============================================================================
+*/
+
+
+#include <platform_paths.hrh>
+
+
+TARGET      3GPExtParser.dll
+TARGETTYPE  DLL
+UID         0x1000008D 0x10207B25
+VENDORID    VID_DEFAULT
+
+CAPABILITY ALL -Tcb
+
+VERSION 10.0
+
+SOURCEPATH		../Src 
+SOURCE			3GPExtParser.cpp
+
+//Need to add a path to  "/MetadataUtility/src/MetaDataId3v1Genre.h"
+USERINCLUDE     	../../Src
+
+MW_LAYER_SYSTEMINCLUDE
+SYSTEMINCLUDE		/epoc32/include/libc
+
+LIBRARY         euser.lib
+LIBRARY         efsrv.lib	// File handling
+LIBRARY         charconv.lib
+LIBRARY         3gpmp4lib.lib
+LIBRARY         caf.lib
+LIBRARY         estlib.lib
+
--- a/mmserv/metadatautility/3GPExtParserLib/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/metadatautility/3GPExtParserLib/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -18,26 +18,7 @@
 PRJ_PLATFORMS
 DEFAULT
 
-PRJ_EXPORTS
-
-#ifdef  __3GP_EXTENTION
-
-// Exporting 3GPExtParser Binaries
-../armv5/LIB/3GPExtParser.lib                   /epoc32/release/armv5/LIB/3GPExtParser.lib
-../armv5/LIB/3GPExtParser.dso                   /epoc32/release/armv5/LIB/3GPExtParser.dso
-../armv5/LIB/3GPExtParser{000a0000}.lib         /epoc32/release/armv5/LIB/3GPExtParser{000a0000}.lib
-../armv5/LIB/3GPExtParser{000a0000}.dso         /epoc32/release/armv5/LIB/3GPExtParser{000a0000}.dso
-
-../armv5/udeb/3GPExtParser.dll 			/epoc32/release/armv5/udeb/3GPExtParser.dll
-../armv5/urel/3GPExtParser.dll 			/epoc32/release/armv5/urel/3GPExtParser.dll
-
-../winscw/udeb/3GPExtParser.lib 		/epoc32/release/winscw/udeb/3GPExtParser.lib
-../winscw/udeb/3GPExtParser.dll 		/epoc32/release/winscw/udeb/3GPExtParser.dll
-../winscw/urel/3GPExtParser.dll 		/epoc32/release/winscw/urel/3GPExtParser.dll
-
-#endif
-
 PRJ_MMPFILES
-
+3GPExtParser.mmp
 
 //  End of File  
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/metadatautility/3GPExtParserLib/src/3GPExtParser.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,1061 @@
+/* ==============================================================================
+*  Name        : 3GPExtParser.cpp
+*  Part of     : MetaDataUtility
+*  Description : This class implements an 3GPExt metadata parser
+*  Version     : 9
+*
+* Copyright (c) 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"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+* ==============================================================================
+*/
+
+
+// INCLUDE FILES
+#include "3GPExtParser.h"
+#include "MetaDataID3v1Genre.h"
+#ifdef _DEBUG
+#include	<e32svr.h>
+#endif
+
+// CONSTANTS
+
+const TUint32 K3gpMetaMeta	= 0x6d657461;	// 'meta'
+const TInt K3gpMetaLength = 1;
+
+
+// ============================ MEMBER FUNCTIONS ===============================
+
+// -----------------------------------------------------------------------------
+// C3GPExtParser::C3GPExtParser
+// C++ default constructor can NOT contain any code, that
+// might leave.
+// -----------------------------------------------------------------------------
+//
+C3GPExtParser::C3GPExtParser(MP4Handle& aMP4Handle): iMP4Handle(aMP4Handle), ilst(NULL, 0)
+	{
+    }
+
+// -----------------------------------------------------------------------------
+// C3GPExtParser::ConstructL
+// Symbian 2nd phase constructor can leave.
+// -----------------------------------------------------------------------------
+//
+void C3GPExtParser::ConstructL()
+    {
+    K3GPExtMetaTitle.Format(K3GPExtMetaTitleFormat, 0xA9);
+    K3GPExtMetaArtist.Format(K3GPExtMetaArtistFormat, 0xA9);
+	K3GPExtMetaComposer.Format(K3GPExtMetaComposerFormat, 0xA9);
+	K3GPExtMetaAlbum.Format(K3GPExtMetaAlbumFormat, 0xA9);
+	K3GPExtMetaComment.Format(K3GPExtMetaCommentFormat, 0xA9);
+	K3GPExtMetaCustomGenre.Format(K3GPExtMetaCustomGenreFormat, 0xA9);
+	K3GPExtMetaYear.Format(K3GPExtMetaYearFormat, 0xA9);
+    }
+
+// -----------------------------------------------------------------------------
+// C3GPExtParser::NewL
+// Two-phased constructor.
+// -----------------------------------------------------------------------------
+//
+EXPORT_C C3GPExtParser* C3GPExtParser::NewL(MP4Handle& aMP4Handle)
+    {
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::NewL"));
+#endif
+	C3GPExtParser* self = new( ELeave ) C3GPExtParser (aMP4Handle);
+    CleanupStack::PushL( self );
+    self->ConstructL();
+    CleanupStack::Pop();
+    return self;
+    }
+
+// Destructor
+EXPORT_C C3GPExtParser::~C3GPExtParser()
+	{
+	if(iChunkStatus)
+		{
+		iChunk.Close();
+		}
+	}
+
+// -----------------------------------------------------------------------------
+// 3GPExtParser::GetilstBoxesL
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void C3GPExtParser::GetilstBoxesL(const TDesC8 &/*aBox*/, TMetaDataFieldId aFieldId, HBufC** aBuf)
+{
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::GetilstBoxesL"));
+#endif
+	TUint32 offset = 0;
+	TUint32 size = 0;
+	switch(aFieldId)
+		{
+			case EMetaDataSongTitle:
+				offset = iTitleOffset;
+				size = iTitleSize;
+				break;
+			case EMetaDataArtist:
+				offset = iArtistOffset;
+				size = iArtistSize;
+				break;
+			case EMetaDataAlbum:
+				offset = iAlbumOffset;
+				size = iAlbumSize;
+				break;
+			case EMetaDataComposer:
+				offset = iComposerOffset;
+				size = iComposerSize;
+				break;
+			case EMetaDataComment:
+				offset = iCommentOffset;
+				size = iCommentSize;
+				break;
+			case EMetaDataRating:
+				offset = iCustomGenreOffset;
+				size = iCustomGenreSize;
+				break;
+			case EMetaDataYear:
+				offset = iYearOffset;
+				size = iYearSize;
+				break;
+			case EMetaDataGenre:
+				offset = iGenreOffset;
+				size = iGenreSize;
+				break;
+			case EMetaDataAlbumTrack:
+				offset = iTrackNumberOffset;
+				size = iTrackNumberSize;
+				break;
+			case EMetaDataJpeg:
+				offset = iCoverOffset;
+				size = iCoverSize;
+				break;
+			default:
+				break;
+		
+		}
+		
+	if(size <= 0 || size >= (KMaxTInt/2))
+		{
+		User::Leave(KErrNotFound); // no data
+		}
+		
+	TInt length = ilst.Length();
+	if (length < 0 || length < (offset + size))
+	    {
+		User::Leave(KErrNotFound); // no data
+	    }
+		
+	// actual data ptr
+	TPtrC8 data = ilst.Mid(offset, size);
+	if(aFieldId != EMetaDataGenre && aFieldId != EMetaDataAlbumTrack && aFieldId != EMetaDataJpeg)
+		{ // string meta data
+		*aBuf = HBufC::NewL(size);
+		TPtr data16Ptr( (*aBuf)->Des() );
+		data16Ptr.Copy(data);
+		}
+	else if(aFieldId == EMetaDataGenre)
+		{ // 0x XXXX ID3v1 Genre + 1
+		TInt16 num = 0;
+		for(TInt i = 0 ; i <= 1; i++)
+			{	
+			num <<= 8;
+			num |= data[i];
+			}
+		num -= 1; // getting it to ID3
+		if((num >= 0 && num <= 125) || num == 199)
+			{
+			*aBuf = HBufC::NewL(KMaxGenreSize);
+			TPtr genrePtr = (*aBuf)->Des();
+			MapID3GenreToString(num, genrePtr);
+			}
+		}
+	else if(aFieldId == EMetaDataAlbumTrack)
+		{
+		*aBuf = HBufC::NewL(6);
+		TUint num = 0;
+		for(TInt i = 0 ; i <= 1; i++)
+			{	
+			num <<= 8;
+			num |= data[i+2];
+			}
+		TBuf<6> data16;
+		data16.NumUC(num);
+		(**aBuf) = data16;
+		}
+	else if(aFieldId == EMetaDataJpeg)
+		{
+		TPtrC8 imageMime1 = data.Mid(6, 4);
+		TPtrC8 imageMime2 = data.Mid(1, 3);
+		_LIT8(KJFIF, "JFIF");
+		_LIT8(KPNG, "PNG");
+		if(imageMime1.Compare(KJFIF) != 0 && imageMime2.Compare(KPNG) != 0)
+			{
+			// only JPEG and PNG supported
+			User::Leave(KErrNotFound); // no data
+			}
+		if(imageMime1.Compare(KJFIF) == 0)
+			{
+			TPtrC8 pic = data.Mid(0, size);
+			TInt length = pic.Length();
+			if ( length )
+				{
+				*aBuf = HBufC::NewL( length );
+				TPtr unicode( (*aBuf)->Des() );
+				unicode.Copy( pic );
+				}
+			}
+		else if(imageMime2.Compare(KPNG) == 0)
+			{
+			TPtrC8 pic = data.Mid(0, size);
+			TInt length = pic.Length();
+			if ( length )
+				{
+				*aBuf = HBufC::NewL( length );
+				TPtr unicode( (*aBuf)->Des() );
+				unicode.Copy( pic );
+				}	
+			}
+		}
+}
+// -----------------------------------------------------------------------------
+// 3GPExtParser::GetilstBoxesL for 8-bit descriptor fields 
+// -----------------------------------------------------------------------------
+//
+EXPORT_C void C3GPExtParser::GetilstBoxesL(const TDesC8 &/*aBox*/, TMetaDataFieldId aFieldId, HBufC8** aBuf)
+{
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::GetilstBoxesL 8 bit version"));
+#endif
+	TUint32 offset = 0;
+	TUint32 size = 0;
+	switch(aFieldId)
+		{
+			case EMetaDataSongTitle:
+				offset = iTitleOffset;
+				size = iTitleSize;
+				break;
+			case EMetaDataArtist:
+				offset = iArtistOffset;
+				size = iArtistSize;
+				break;
+			case EMetaDataAlbum:
+				offset = iAlbumOffset;
+				size = iAlbumSize;
+				break;
+			case EMetaDataComposer:
+				offset = iComposerOffset;
+				size = iComposerSize;
+				break;
+			case EMetaDataComment:
+				offset = iCommentOffset;
+				size = iCommentSize;
+				break;
+			case EMetaDataRating:
+				offset = iCustomGenreOffset;
+				size = iCustomGenreSize;
+				break;
+			case EMetaDataYear:
+				offset = iYearOffset;
+				size = iYearSize;
+				break;
+			case EMetaDataGenre:
+				offset = iGenreOffset;
+				size = iGenreSize;
+				break;
+			case EMetaDataAlbumTrack:
+				offset = iTrackNumberOffset;
+				size = iTrackNumberSize;
+				break;
+			case EMetaDataJpeg:
+				offset = iCoverOffset;
+				size = iCoverSize;
+				break;
+			default:
+				break;
+		
+		}
+		
+	if(size <= 0 || size >= (KMaxTInt/2))
+		{
+		User::Leave(KErrNotFound); // no data
+		}
+		
+	TInt length = ilst.Length();
+	if (length < 0 || length < (offset + size))
+	    {
+		User::Leave(KErrNotFound); // no data
+	    }
+		
+	// actual data ptr
+	TPtrC8 data = ilst.Mid(offset, size);
+	if(aFieldId != EMetaDataGenre && aFieldId != EMetaDataAlbumTrack && aFieldId != EMetaDataJpeg)
+		{ // string meta data
+		*aBuf = HBufC8::NewL(size);
+		TPtr8 unicode( (*aBuf)->Des() );
+		unicode.Copy(data);
+		}
+	if(aFieldId == EMetaDataJpeg)
+		{
+		TPtrC8 imageMime1 = data.Mid(6, 4);
+		TPtrC8 imageMime2 = data.Mid(1, 3);
+		_LIT8(KJFIF, "JFIF");
+		_LIT8(KPNG, "PNG");
+		if(imageMime1.Compare(KJFIF) != 0 && imageMime2.Compare(KPNG) != 0)
+			{
+			// only JPEG and PNG supported
+			User::Leave(KErrNotFound); // no data
+			}
+		if(imageMime1.Compare(KJFIF) == 0)
+			{
+			TPtrC8 pic = data.Mid(0, size);
+			TInt length = pic.Length();
+			if ( length )
+				{
+				*aBuf = HBufC8::NewL( length );
+				TPtr8 unicode( (*aBuf)->Des() );
+				unicode.Copy( pic );
+				}
+			}
+		else if(imageMime2.Compare(KPNG) == 0)
+			{
+			TPtrC8 pic = data.Mid(0, size);
+			TInt length = pic.Length();
+			if ( length )
+				{
+				*aBuf = HBufC8::NewL( length );
+				TPtr8 unicode( (*aBuf)->Des() );
+				unicode.Copy( pic );
+				}	
+			}
+		}
+}
+
+// -----------------------------------------------------------------------------
+// C3GPExtParser::Is3GPExtMetadataL
+// -----------------------------------------------------------------------------
+//
+EXPORT_C TBool C3GPExtParser::Is3GPExtMetadataL()
+	{
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::3GPExtMetadataL"));
+#endif
+	HBufC8* frame = HBufC8::NewLC( K3gpMetaLength );
+	TUint8* buffer = CONST_CAST(TUint8*, frame->Ptr());
+
+	MP4Err err;
+	mp4_u8 udtaLocation = MP4_UDTA_MOOV;
+	mp4_u32 bufferSize = K3gpMetaLength;
+	mp4_u32 atomIndex = 0;
+
+	err = MP4ParseGetUserDataAtom(iMP4Handle, udtaLocation, K3gpMetaMeta, buffer,
+			bufferSize, atomIndex);
+	if (bufferSize > (KMaxTInt / 2))
+	    {
+		User::Leave(KErrNotFound); // no data	    
+	    }
+	    
+	if ( err == MP4_UDTA_NOT_FOUND )
+		{
+		if ( udtaLocation == MP4_UDTA_NONE || udtaLocation == MP4_UDTA_MOOV )
+			{
+#ifdef _DEBUG
+	RDebug::Print(_L("3GPExtParser::Parse3GPExtL - NotFound"));
+#endif
+			CleanupStack::PopAndDestroy();  // frame
+			return EFalse;
+			}
+		else
+			{
+			if ( udtaLocation & MP4_UDTA_AUDIOTRAK )
+				{
+				udtaLocation = MP4_UDTA_AUDIOTRAK;
+				}
+			else 	// MP4_UDTA_VIDEOTRAK
+				{
+				udtaLocation = MP4_UDTA_VIDEOTRAK;
+				}
+			}
+#ifdef _DEBUG
+	RDebug::Print(_L("3GPExtParser::Parse3GPExtL - New Location [%d]"), udtaLocation);
+#endif
+		err = MP4ParseGetUserDataAtom(iMP4Handle, udtaLocation, K3gpMetaMeta, buffer,
+			bufferSize, atomIndex);
+		}
+
+	if ( err != MP4_OK )
+		{
+		if ( err == MP4_OUTPUT_BUFFER_TOO_SMALL )
+			{
+			iChunk.Close();
+	
+			User::LeaveIfError(iChunk.CreateLocal(bufferSize, bufferSize, EOwnerProcess));
+			iChunkStatus = ETrue;
+			buffer = iChunk.Base();
+			err = MP4ParseGetUserDataAtom(iMP4Handle, udtaLocation, K3gpMetaMeta, buffer, bufferSize, atomIndex);
+			if(err != MP4_OK)
+				{
+				CleanupStack::PopAndDestroy();  // frame
+				return EFalse;
+				}
+			}
+		else
+			{
+			CleanupStack::PopAndDestroy();  // frame
+			return EFalse;
+			//User::Leave( TranslateMP4Err(err) );
+			}
+		}
+
+	TPtr8 des(buffer, bufferSize, bufferSize);
+	
+	// HDLR BOX
+	_LIT8(KHdlr, "hdlr");
+	TInt hdlrOffset = 16; // header box at constant offset
+	TPtrC8 hdlrCheck = des.MidTPtr(hdlrOffset, 4);
+	if(hdlrCheck !=  KHdlr)
+	{ 
+		CleanupStack::PopAndDestroy();  // frame
+		return EFalse; // not 3GPExt
+	}
+	hdlrOffset -= 4; // hdlr box begins at size, 4 bytes back
+	
+	// get hdlr size
+	TPtrC8 sizeHdlrDesc = des.Mid(hdlrOffset, 4);
+	TInt32 sizeHdlr = 0;
+	for(TInt i = 0 ; i <= 3; i++)
+		{	
+		sizeHdlr <<= 8;
+		sizeHdlr |= sizeHdlrDesc[i];
+		}
+	if(sizeHdlr <= 0)
+	    {
+		CleanupStack::PopAndDestroy();  // frame
+		return EFalse; // not 3GPExt
+	    }
+	
+	// hdlr ptr
+	if (des.Length() < (hdlrOffset + sizeHdlr))
+	    {
+	    CleanupStack::PopAndDestroy();  // frame
+	    return EFalse;  // data corrupted
+	    }	        
+	TPtrC8 hdlr = des.Mid(hdlrOffset, sizeHdlr);
+	
+	// match mdirappl
+	/**** Comment out the following lines - no need to test for "mdirappl" string	
+	TPtrC8 text = hdlr.Mid(16, 8); // at 16 bytes from hdlr box
+	_LIT8(KMdirappl, "mdirappl");
+	if(text.Compare(KMdirappl) != 0)
+	{
+		CleanupStack::PopAndDestroy();  	// frame
+		return EFalse; 						// not 3GPExt
+	}
+	*****/   // End comment out "mdirappl" 	
+
+	// iLST BOX
+	_LIT8(KIlst, "ilst");
+	TInt ilstOffset = hdlrOffset + sizeHdlr + 4;
+	if (ilstOffset > bufferSize)
+	    {
+		CleanupStack::PopAndDestroy();  // frame
+		return EFalse; // not 3GPExt	    
+	    }
+	    
+	TPtrC8 ilstCheck = des.MidTPtr(ilstOffset, 4);
+	if(ilstCheck !=  KIlst)
+	    {
+	    ilstOffset = des.Find(KIlst);
+	    if(ilstOffset == KErrNotFound)
+	        {
+	        CleanupStack::PopAndDestroy();  // frame
+	        return EFalse; // no list box
+	        }
+	    }
+	ilstOffset -=4; // ilst box begins at size, 4 bytes back
+	
+	// get ilst size
+	TPtrC8 sizeIlstDesc = des.Mid(ilstOffset, 4);
+	TUint32 sizeIlst = 0;
+	for(TInt i = 0 ; i <= 3; i++)
+		{	
+		sizeIlst <<= 8;
+		sizeIlst |= sizeIlstDesc[i];
+		}
+	if(sizeIlst <= 0 || sizeIlst > bufferSize - ilstOffset)
+	{
+		CleanupStack::PopAndDestroy();  // frame
+		return EFalse; // no list box
+	}
+	
+	// ilst 
+	TPtrC8 tmp = des.Mid(ilstOffset, sizeIlst);
+	const TUint8* tmpPtr = tmp.Ptr();
+	ilst.Set(tmpPtr, sizeIlst);
+	iExists = ETrue;
+	
+	ParseIlstBoxesL();
+	CleanupStack::PopAndDestroy();  // frame	
+	return ETrue;
+	}
+
+// -----------------------------------------------------------------------------
+// 3GPExtParser::MapID3v1GenreToString()
+// -----------------------------------------------------------------------------
+//
+void C3GPExtParser::ParseIlstBoxesL()
+{
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::ParseIlstBoxesL"));
+#endif
+
+	TUint32 sizeIlst = ilst.Length();
+	TUint32 offset = 8; // first tag
+	while (offset < sizeIlst)	
+		{
+		TUint32 tagSize = 0;
+		TPtrC8 tagSizeDes = ilst.Mid(offset, 4);
+		for(TInt i = 0 ; i <= 3; i++)
+			{	
+			tagSize <<= 8;
+			tagSize |= tagSizeDes[i];
+			}
+		TPtrC8 tagName = ilst.Mid(offset + 4, 4);
+		TUint32 dataSize = 0;
+		TPtrC8 dataSizeDesc = ilst.Mid(offset + 8, 4);
+		for(TInt i = 0 ; i <= 3; i++)
+			{	
+			dataSize <<= 8;
+			dataSize |= dataSizeDesc[i];
+			}
+		if(dataSize > 16)
+			{
+			if(!tagName.Compare(K3GPExtMetaTitle))
+				{ 
+				iTitleOffset = offset + 8 + 16;
+				iTitleSize = dataSize - 16;
+				}
+			else if(!tagName.Compare(K3GPExtMetaArtist))
+				{
+				iArtistOffset = offset + 8 + 16;
+				iArtistSize = dataSize - 16;
+				}
+			else if(!tagName.Compare(K3GPExtMetaComposer))
+				{
+				iComposerOffset = offset + 8 + 16;
+				iComposerSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaAlbum))
+				{
+				iAlbumOffset = offset + 8 + 16;
+				iAlbumSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaComment))
+				{
+				iCommentOffset = offset + 8 + 16;
+				iCommentSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaYear))
+				{
+				iYearOffset = offset + 8 + 16;
+				iYearSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaCustomGenre))
+				{
+				iCustomGenreOffset = offset + 8 + 16;
+				iCustomGenreSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaGenre))
+				{
+				iGenreOffset = offset + 8 + 16;
+				iGenreSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaTrack))
+				{
+				iTrackNumberOffset = offset + 8 + 16;
+				iTrackNumberSize = dataSize - 16;
+				}	
+			else if(!tagName.Compare(K3GPExtMetaJpeg))
+				{
+				iCoverOffset = offset + 8 + 16;
+				iCoverSize = dataSize - 16;
+				}	
+			else // default
+				{
+				// unwanted tag, ignore
+				}
+			}
+		if (tagSize <= 0)
+		    {
+		    #ifdef _DEBUG
+	            RDebug::Print(_L("C3GPExtParser::ParseIlstBoxesL - break"));
+            #endif
+
+		    break;
+		    }
+		else
+		    {
+			offset += tagSize;
+		    }
+		}
+}
+
+// -----------------------------------------------------------------------------
+// 3GPExtParser::MapID3v1GenreToString()
+// -----------------------------------------------------------------------------
+//
+void C3GPExtParser::MapID3GenreToString(TInt aNum, TDes& aGenrePtr)
+{
+#ifdef _DEBUG
+	RDebug::Print(_L("C3GPExtParser::MapID3GenreToString"));
+#endif
+
+	switch(aNum)
+			{
+				case 0:
+					aGenrePtr.Append(KGenreBlues);
+					break;
+				case 1:
+					aGenrePtr.Append(KGenreClassicRock);
+					break;
+				case 2:
+					aGenrePtr.Append(KGenreCountry);
+					break;
+				case 3:
+					aGenrePtr.Append(KGenreDance);
+					break;
+				case 4:
+					aGenrePtr.Append(KGenreDisco);
+					break;
+				case 5:
+					aGenrePtr.Append(KGenreFunk);
+					break;
+				case 6:
+					aGenrePtr.Append(KGenreGrunge);
+					break;
+				case 7:
+					aGenrePtr.Append(KGenreHipHop);
+					break;
+				case 8:
+					aGenrePtr.Append(KGenreJazz);
+					break;
+				case 9:
+					aGenrePtr.Append(KGenreMetal);
+					break;
+				case 10:
+					aGenrePtr.Append(KGenreNewAge);
+					break;
+				case 11:
+					aGenrePtr.Append(KGenreOldies);
+					break;
+				case 12:
+					aGenrePtr.Append(KGenreOther);
+					break;
+				case 13:
+					aGenrePtr.Append(KGenrePop);
+					break;
+				case 14:
+					aGenrePtr.Append(KGenreRB);
+					break;
+				case 15:
+					aGenrePtr.Append(KGenreRap);
+					break;
+				case 16:
+					aGenrePtr.Append(KGenreReggae);
+					break;
+				case 17:
+					aGenrePtr.Append(KGenreRock);
+					break;
+				case 18:
+					aGenrePtr.Append(KGenreTechno);
+					break;
+				case 19:
+					aGenrePtr.Append(KGenreIndustrial);
+					break;
+				case 20:
+					aGenrePtr.Append(KGenreAlternative);
+					break;
+				case 21:
+					aGenrePtr.Append(KGenreSka);
+					break;
+				case 22:
+					aGenrePtr.Append(KGenreDeathMetal);
+					break;
+				case 23:
+					aGenrePtr.Append(KGenrePranks);
+					break;
+				case 24:
+					aGenrePtr.Append(KGenreSoundtrack);
+					break;
+				case 25:
+					aGenrePtr.Append(KGenreEuroTechno);
+					break;
+				case 26:
+					aGenrePtr.Append(KGenreAmbient);
+					break;
+				case 27:
+					aGenrePtr.Append(KGenreTripHop);
+					break;
+				case 28:
+					aGenrePtr.Append(KGenreVocal);
+					break;
+				case 29:
+					aGenrePtr.Append(KGenreJazzFunk);
+					break;
+				case 30:
+					aGenrePtr.Append(KGenreFusion);
+					break;
+				case 31:
+					aGenrePtr.Append(KGenreTrance);
+					break;
+				case 32:
+					aGenrePtr.Append(KGenreClassical);
+					break;
+				case 33:
+					aGenrePtr.Append(KGenreInstrumental);
+					break;
+				case 34:
+					aGenrePtr.Append(KGenreAcid);
+					break;
+				case 35:
+					aGenrePtr.Append(KGenreHouse);
+					break;
+				case 36:
+					aGenrePtr.Append(KGenreGame);
+					break;
+				case 37:
+					aGenrePtr.Append(KGenreSoundClip);
+					break;
+				case 38:
+					aGenrePtr.Append(KGenreGospel);
+					break;
+				case 39:
+					aGenrePtr.Append(KGenreNoise);
+					break;
+				case 40:
+					aGenrePtr.Append(KGenreAlternRock);
+					break;
+				case 41:
+					aGenrePtr.Append(KGenreBass);
+					break;
+				case 42:
+					aGenrePtr.Append(KGenreSoul);
+					break;
+				case 43:
+					aGenrePtr.Append(KGenrePunk);
+					break;
+				case 44:
+					aGenrePtr.Append(KGenreSpace);
+					break;
+				case 45:
+					aGenrePtr.Append(KGenreMeditative);
+					break;
+				case 46:
+					aGenrePtr.Append(KGenreInstrumentalPop);
+					break;
+				case 47:
+					aGenrePtr.Append(KGenreInstrumentalRock);
+					break;
+				case 48:
+					aGenrePtr.Append(KGenreEthnic);
+					break;
+				case 49:
+					aGenrePtr.Append(KGenreGothic);
+					break;
+				case 50:
+					aGenrePtr.Append(KGenreDarkwave);
+					break;
+				case 51:
+					aGenrePtr.Append(KGenreTechnoIndustrial);
+					break;
+				case 52:
+					aGenrePtr.Append(KGenreElectronic);
+					break;
+				case 53:
+					aGenrePtr.Append(KGenrePopFolk);
+					break;
+				case 54:
+					aGenrePtr.Append(KGenreEurodance);
+					break;
+				case 55:
+					aGenrePtr.Append(KGenreDream);
+					break;
+				case 56:
+					aGenrePtr.Append(KGenreSouthernRock);
+					break;
+				case 57:
+					aGenrePtr.Append(KGenreComedy);
+					break;
+				case 58:
+					aGenrePtr.Append(KGenreCult);
+					break;
+				case 59:
+					aGenrePtr.Append(KGenreGangsta);
+					break;
+				case 60:
+					aGenrePtr.Append(KGenreTop40);
+					break;
+				case 61:
+					aGenrePtr.Append(KGenreChristianRap);
+					break;
+				case 62:
+					aGenrePtr.Append(KGenrePopFunk);
+					break;
+				case 63:
+					aGenrePtr.Append(KGenreJungle);
+					break;
+				case 64:
+					aGenrePtr.Append(KGenreNativeAmerican);
+					break;
+				case 65:
+					aGenrePtr.Append(KGenreCabaret);
+					break;
+				case 66:
+					aGenrePtr.Append(KGenreNewWave);
+					break;
+				case 67:
+					aGenrePtr.Append(KGenrePsychadelic);
+					break;
+				case 68:
+					aGenrePtr.Append(KGenreRave);
+					break;
+				case 69:
+					aGenrePtr.Append(KGenreShowtunes);
+					break;
+				case 70:
+					aGenrePtr.Append(KGenreTrailer);
+					break;
+				case 71:
+					aGenrePtr.Append(KGenreLoFi);
+					break;
+				case 72:
+					aGenrePtr.Append(KGenreTribal);
+					break;
+				case 73:
+					aGenrePtr.Append(KGenreAcidPunk);
+					break;
+				case 74:
+					aGenrePtr.Append(KGenreAcidJazz);
+					break;
+				case 75:
+					aGenrePtr.Append(KGenrePolka);
+					break;
+				case 76:
+					aGenrePtr.Append(KGenreRetro);
+					break;
+				case 77:
+					aGenrePtr.Append(KGenreMusical);
+					break;
+				case 78:
+					aGenrePtr.Append(KGenreRockRoll);
+					break;
+				case 79:
+					aGenrePtr.Append(KGenreHardRock);
+					break;
+				case 80:
+					aGenrePtr.Append(KGenreFolk);
+					break;
+				case 81:
+					aGenrePtr.Append(KGenreFolkRock);
+					break;
+				case 82:
+					aGenrePtr.Append(KGenreNationalFolk);
+					break;
+				case 83:
+					aGenrePtr.Append(KGenreSwing);
+					break;
+				case 84:
+					aGenrePtr.Append(KGenreFastFusion);
+					break;
+				case 85:
+					aGenrePtr.Append(KGenreBebob);
+					break;
+				case 86:
+					aGenrePtr.Append(KGenreLatin);
+					break;
+				case 87:
+					aGenrePtr.Append(KGenreRevival);
+					break;
+				case 88:
+					aGenrePtr.Append(KGenreCeltic);
+					break;
+				case 89:
+					aGenrePtr.Append(KGenreBluegrass);
+					break;
+				case 90:
+					aGenrePtr.Append(KGenreAvantgarde);
+					break;
+				case 91:
+					aGenrePtr.Append(KGenreGothicRock);
+					break;
+				case 92:
+					aGenrePtr.Append(KGenreProgressiveRock);
+					break;
+				case 93:
+					aGenrePtr.Append(KGenrePsychedelicRock);
+					break;
+				case 94:
+					aGenrePtr.Append(KGenreSymphonicRock);
+					break;
+				case 95:
+					aGenrePtr.Append(KGenreSlowRock);
+					break;
+				case 96:
+					aGenrePtr.Append(KGenreBigBand);
+					break;
+				case 97:
+					aGenrePtr.Append(KGenreChorus);
+					break;
+				case 98:
+					aGenrePtr.Append(KGenreEasyListening);
+					break;
+				case 99:
+					aGenrePtr.Append(KGenreAcoustic);
+					break;
+				case 100:
+					aGenrePtr.Append(KGenreHumour);
+					break;
+				case 101:
+					aGenrePtr.Append(KGenreSpeech);
+					break;
+				case 102:
+					aGenrePtr.Append(KGenreChanson);
+					break;
+				case 103:
+					aGenrePtr.Append(KGenreOpera);
+					break;
+				case 104:
+					aGenrePtr.Append(KGenreChamberMusic);
+					break;
+				case 105:
+					aGenrePtr.Append(KGenreSonata);
+					break;
+				case 106:
+					aGenrePtr.Append(KGenreSymphony);
+					break;
+				case 107:
+					aGenrePtr.Append(KGenreBootyBass);
+					break;
+				case 108:
+					aGenrePtr.Append(KGenrePrimus);
+					break;
+				case 109:
+					aGenrePtr.Append(KGenrePornGroove);
+					break;
+				case 110:
+					aGenrePtr.Append(KGenreSatire);
+					break;
+				case 111:
+					aGenrePtr.Append(KGenreSlowJam);
+					break;
+				case 112:
+					aGenrePtr.Append(KGenreClub);
+					break;
+				case 113:
+					aGenrePtr.Append(KGenreTango);
+					break;
+				case 114:
+					aGenrePtr.Append(KGenreSamba);
+					break;
+				case 115:
+					aGenrePtr.Append(KGenreFolklore);
+					break;
+				case 116:
+					aGenrePtr.Append(KGenreBallad);
+					break;
+				case 117:
+					aGenrePtr.Append(KGenrePowerBallad);
+					break;
+				case 118:
+					aGenrePtr.Append(KGenreRhythmicSoul);
+					break;
+				case 119:
+					aGenrePtr.Append(KGenreFreestyle);
+					break;
+				case 120:
+					aGenrePtr.Append(KGenreDuet);
+					break;
+				case 121:
+					aGenrePtr.Append(KGenrePunkRock);
+					break;
+				case 122:
+					aGenrePtr.Append(KGenreDrumSolo);
+					break;
+				case 123:
+					aGenrePtr.Append(KGenreAcapella);
+					break;
+				case 124:
+					aGenrePtr.Append(KGenreEuroHouse);
+					break;
+				case 125:
+					aGenrePtr.Append(KGenreDanceHall);
+					break;
+				case 199:
+					aGenrePtr.Append(KGenrePodcast);
+					break;
+				default:
+					break;
+			}
+	}
+		
+			
+// -----------------------------------------------------------------------------
+// 3GPExtParser::TranslateMP4Err
+// -----------------------------------------------------------------------------
+//
+TInt C3GPExtParser::TranslateMP4Err(MP4Err aError)
+	{
+#ifdef _DEBUG
+	RDebug::Print(_L("CMetaDataParserMP4::TranslateMP4Err [%d]"), aError);
+#endif
+	TInt err;
+	switch ( aError )
+		{
+		case MP4_OK:
+			err = KErrNone;
+			break;
+		case MP4_OUT_OF_MEMORY:
+			err = KErrNoMemory;
+			break;
+		case MP4_NOT_AVAILABLE:
+			err = KErrNotReady;
+			break;
+		case MP4_FILE_ERROR:
+			err = KErrBadHandle;
+			break;
+		case MP4_INVALID_TYPE:
+			err = KErrNotSupported;
+			break;
+		case MP4_TIMESCALE_NOT_SET:
+			err = KErrNotReady;
+			break;
+		case MP4_NOT_STREAMABLE:
+		case MP4_NO_REQUESTED_FRAME:
+		case MP4_CANT_SEEK:
+		case MP4_INVALID_INPUT_STREAM:
+		case MP4_NO_FRAME:
+			err = KErrArgument;
+			break;
+		case MP4_ERROR:
+		case MP4_FILE_MODE:
+		case MP4_BUFFER_TOO_SMALL:
+		case MP4_END_OF_VIDEO:
+		case MP4_METADATA_ERROR:
+		case MP4_NO_VIDEO:
+		case MP4_NO_AUDIO:
+			err = KErrGeneral;
+			break;
+		default:
+			err = KErrGeneral;
+			break;
+		}
+	return err;
+	}
+//  End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/metadatautility/3GPExtParserLib/src/3GPExtParser.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,177 @@
+/*
+* ==============================================================================
+*  Name        : 3GPExtParser.h
+*  Part of     : 3GPExtParser
+*  Interface   : ?Interface_category, ?Interface_name
+*  Description : This class implements an 3GPExt metadata parser 
+*  Version     : 6
+*
+* Copyright (c) 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"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+* ==============================================================================
+*/
+
+
+#ifndef C3GPEXTPARSER_H
+#define C3GPEXTPARSER_H
+
+// INCLUDES
+#include <e32base.h>
+#include <mp4lib.h>
+
+#include "MetaDataFieldContainer.h"
+#include "MetaDataField.hrh"
+
+// CONSTANTS
+
+_LIT8 (K3GPExtMetaTitleFormat, "%cnam"); 
+_LIT8 (K3GPExtMetaArtistFormat, "%cART"); 
+_LIT8 (K3GPExtMetaComposerFormat, "%cwrt"); 
+_LIT8 (K3GPExtMetaAlbumFormat, "%calb"); 
+_LIT8 (K3GPExtMetaCommentFormat, "%ccmt"); 
+_LIT8 (K3GPExtMetaCustomGenreFormat, "%cgen");  // mapped to rating
+_LIT8 (K3GPExtMetaYearFormat, "%cday"); 
+_LIT8 (K3GPExtMetaGenre, "gnre");
+_LIT8 (K3GPExtMetaTrack, "trkn"); 
+_LIT8 (K3GPExtMetaJpeg, "covr"); 
+
+
+// CLASS DECLARATION
+
+/**
+*  This class implements an 3GPExt metadata parser.
+*
+*  @lib 3GPExtParser.lib
+*  @since 3.0
+*/
+class C3GPExtParser : public CBase
+	{
+    public:  // Constructors and destructor
+
+        /**
+        * Two-phased constructor.
+        * @return A pointer to a new instance of parser; NULL if parser is not created.
+        */
+        IMPORT_C static C3GPExtParser* NewL(MP4Handle& aMP4Handle);
+
+        /**
+        * Destructor.
+        */
+        IMPORT_C virtual ~C3GPExtParser();
+        
+        /**
+		* Extract meta data boxes from ilst
+		* @since 3.0
+		* @param aBox wanted metadata box
+        * @param aFieldId metadata field in 3GPExtParser
+		* @return void
+		*/
+		IMPORT_C void GetilstBoxesL(const TDesC8& aBox, TMetaDataFieldId aFieldId, HBufC** aBuf);
+		/**
+		* Extract meta data boxes from ilst
+		* 8-bit version to support international languages in string metadata
+		* @since 3.1
+		* @param aBox wanted metadata box
+        * @param aFieldId metadata field in 3GPExtParser
+		* @return void
+		*/
+		IMPORT_C void GetilstBoxesL(const TDesC8& aBox, TMetaDataFieldId aFieldId, HBufC8** aBuf);
+				
+		/** 
+		* Checks if file has 3GPExt metadata
+		*/ 
+		IMPORT_C TBool Is3GPExtMetadataL();
+
+ 	private:
+
+        /**
+        * C++ default constructor.
+        */
+		C3GPExtParser(MP4Handle& aMP4Handle);
+
+        /**
+        * By default Symbian 2nd phase constructor is private.
+        */
+		void ConstructL();
+		
+		/**
+        * Maps ID3v1 genre integer to string
+        * @param aNum genre integer code
+        * @param aGenrePtr string genre value returned
+        * @since 3.0
+        * @return void
+        */
+		void MapID3GenreToString(TInt aNum, TDes& aGenrePtr);
+		
+		/**
+        * Translates error code from MP4 library to one of System Errors.
+        * @since 3.0
+        * @param aError error code from MP4 library
+        * @return System error
+        */
+		TInt TranslateMP4Err( MP4Err aError );
+
+		/**
+        * Parses iList Boxes
+        * @since 3.0
+        * @param none
+        * @return void 
+        */
+		void ParseIlstBoxesL();
+
+	private:
+	
+		// MP4 Handle
+		MP4Handle& iMP4Handle;
+		// ilst box
+		TPtrC8 ilst;
+		// 3GPExt metadata exists
+		TBool iExists;
+		// local chunk
+		RChunk iChunk;
+		// chuck status
+		TInt iChunkStatus;
+ 			
+		
+		TUint32 iTitleOffset;
+		TUint32 iTitleSize;
+ 		TUint32 iArtistOffset;	
+ 		TUint32 iArtistSize;
+ 		TUint32 iComposerOffset;
+ 		TUint32 iComposerSize;
+ 		TUint32 iAlbumOffset;
+ 		TUint32 iAlbumSize;
+ 		TUint32 iCommentOffset;
+ 		TUint32 iCommentSize;
+ 		TUint32 iCustomGenreOffset;
+ 		TUint32 iCustomGenreSize;
+ 		TUint32 iYearOffset;
+ 		TUint32 iYearSize;
+ 		TUint32 iGenreOffset;
+ 		TUint32 iGenreSize;
+ 		TUint32 iTrackNumberOffset;
+ 		TUint32 iTrackNumberSize;
+ 		TUint32 iCoverOffset;
+ 		TUint32 iCoverSize;
+ 		
+ 	public:
+ 				// constants
+		TBuf8<4> K3GPExtMetaTitle;
+		TBuf8<4> K3GPExtMetaArtist;
+		TBuf8<4> K3GPExtMetaComposer;
+		TBuf8<4> K3GPExtMetaAlbum;
+		TBuf8<4> K3GPExtMetaComment;
+		TBuf8<4> K3GPExtMetaCustomGenre;
+		TBuf8<4> K3GPExtMetaYear;
+    };
+
+#endif      // C3GPEXTPARSER_H
+
+// End of File
Binary file mmserv/metadatautility/3GPExtParserLib/winscw/udeb/3GPExtParser.dll has changed
Binary file mmserv/metadatautility/3GPExtParserLib/winscw/udeb/3GPExtParser.lib has changed
Binary file mmserv/metadatautility/3GPExtParserLib/winscw/urel/3GPExtParser.dll has changed
--- a/mmserv/metadatautility/Src/MetaDataParser.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/metadatautility/Src/MetaDataParser.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -22,7 +22,7 @@
 #include "MetaDataParser.h"
 #include <syslangutil.h>
 #include <languages.hrh>
-#include <TopCharacterSet.rsg>
+#include <topcharacterset.rsg>
 #include <data_caging_path_literals.hrh>
 #include <stdlib.h>
 #include <bautils.h>
--- a/mmserv/metadatautility/Src/MetaDataParserID3v1.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/metadatautility/Src/MetaDataParserID3v1.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -25,7 +25,7 @@
 #include    <barsc.h>
 #include    <barsread.h>
 #include 	<data_caging_path_literals.hrh>
-#include	<TopCharacterSet.rsg>
+#include	<topcharacterset.rsg>
 #ifdef _DEBUG
 #include	<e32svr.h>
 #endif
--- a/mmserv/metadatautility/Src/MetaDataParserID3v2.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/metadatautility/Src/MetaDataParserID3v2.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -26,7 +26,7 @@
 
 #include    <barsc.h>
 #include    <barsread.h>
-#include	<TopCharacterSet.rsg>
+#include	<topcharacterset.rsg>
 #include 	<data_caging_path_literals.hrh>
 
 // CONSTANTS
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/radioutility/radio_utility/tsrc/group/TFMRadioUtility.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,42 @@
+/*
+* Copyright (c) 2002-2004 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:
+* Project definition file for Radio Utility.
+*
+*/
+#include <platform_paths.hrh>
+
+TARGET          TR.exe
+TARGETTYPE      exe
+UID             0x1000008d 0x100058e6
+
+SOURCEPATH      ../src
+
+SOURCE          TFMRadioUtility.cpp
+
+USERINCLUDE     ../inc
+USERINCLUDE     ../../inc
+USERINCLUDE     ../../../inc
+
+MW_LAYER_SYSTEMINCLUDE
+
+LIBRARY	Radio_Utility.lib
+LIBRARY RadioSession.lib
+LIBRARY euser.lib 
+LIBRARY flogger.lib
+LIBRARY commonengine.lib
+
+
+// End of File
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/radioutility/radio_utility/tsrc/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,44 @@
+/*
+* 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:  Project build file for Radio Utility
+*
+*/
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+// specify the source file followed by its destination here
+// copy will be used to copy the source file to its destination
+// If there's no destination then the source file will be copied
+// to the same name in /epoc32/include
+
+
+
+PRJ_MMPFILES
+// specify the .mmp files required for building the important component releasables
+// note that you should specify any .mmp files for test programs further down the file.
+//
+// It's best if the .MMP files are specified in the order in which the components are
+// built, but that eventually shouldn't matter
+//
+// Use C++ style #defines to denote that a component is only built for a particular platform
+//
+// specify "tidy" if the component you need to build doesn't need to be released to
+// the rest of the company
+// specify "ignore" if the MMP file exists but should be ignored
+TFMRadioUtility.mmp
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/radioutility/radio_utility/tsrc/inc/TFMRadioUtility.h	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,271 @@
+/*
+* 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:  Header class of CTRadioUtility.
+*
+*
+*/
+
+#ifndef __CTRADIOUTILITY_H
+#define __CTRADIOUTILITY_H
+
+//#include <e32base.h>
+//#include <e32cons.h>
+//#include "RadioSession.h"
+#include <RadioUtility.h>
+#include <RadioPlayerUtility.h>
+#include <RadioFmTunerUtility.h>
+#include <RadioRdsUtility.h>
+
+
+// FORWARD DECLARATIONS
+class CTRadioUtilityConsole;
+class CRadioUtility;
+
+GLREF_C void Panic(TInt aPanic);
+
+class CTRadioUtility : public CBase,
+						MRadioPlayerObserver,
+						MRadioFmTunerObserver,
+						MRadioRdsObserver
+	{
+public:
+
+/**
+* NewL method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+	static CTRadioUtility* NewL();
+/**
+* NewLC method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+	static CTRadioUtility* NewLC();
+/**
+* Destructor
+**/
+	~CTRadioUtility();
+	
+	//
+	//Player Utility Methods to Test...
+	//
+	void Play();
+	void PlayerState();
+	void ClosePlayer();
+	void StopPlayer();
+	void Mute();
+	void IsMute();
+	void SetVolume();
+	void GetVolume();
+	void SetVolumeRamp();
+	void GetMaxVolume();
+	void SetBalance();
+	void GetBalance();
+	
+	//
+	//Tuner Utility Methods to Test...
+	//
+	void RequestTunerControl();
+	void CloseTuner();
+	void GetTunerCapabilities();
+	void EnableTunerInOfflineMode();
+	void SetFrequencyRange();
+	void CancelSetFrequencyRange();
+	void GetFrequencyRange();
+	void SetFrequency();
+	void CancelSetFrequency();
+	void GetFrequency();
+	void StationSeek();
+	void CancelStationSeek();
+	void GetSignalStrength();
+	void GetMaxSignalStrength();
+	void GetStereoMode();
+	void ForceMonoReception();
+	void GetForceMonoReception();
+	void SetSquelch();
+	void GetSquelch();
+	
+	//
+	//Rds Utility Methods to Test...
+	//
+	
+	 void Close();
+     void GetRdsCapabilities();
+     void GetRdsSignalStatus();
+     void NotifyRdsDataChange();
+     void CancelNotifyRdsDataChange();
+     void SetAutomaticSwitching();
+     void GetAutomaticSwitching();
+     void CancelAFSearch();
+     void SetAutomaticTrafficAnnouncement();
+     void GetAutomaticTrafficAnnouncement();
+     void StationSeekByPTY();
+     void StationSeekByTA();
+     void StationSeekByTP();
+     void CancelRdsStationSeek();
+     void GetFreqByPTY();
+     void CancelGetFreqByPTY();
+     void GetFreqByTA();
+     void CancelGetFreqByTA();
+     void GetPSByPTY();
+     void CancelGetPSByPTY();
+     void GetPSByTA();
+     void CancelGetPSByTA();
+     void GetProgrammeIdentification();
+     void GetProgrammeType();
+     void GetProgrammeService();
+     void GetRadioText();
+     void GetRadioTextPlus();
+     void GetClockTime();
+     void GetTrafficAnnouncementStatus();
+     void GetTrafficProgrammeStatus();
+    
+	//
+	// MRadioPlayerObserver Methods
+	//
+  
+     void MrpoStateChange( TPlayerState aState, TInt aError );
+     void MrpoVolumeChange( TInt aVolume );
+     void MrpoMuteChange( TBool aMute );
+     void MrpoBalanceChange( TInt aLeftPercentage, TInt aRightPercentage );
+     
+    //
+	// MRadioFmTunerObserver Methods
+	//
+
+    void MrftoRequestTunerControlComplete( TInt aError );
+    void MrftoSetFrequencyRangeComplete( TInt aError );
+    void MrftoSetFrequencyComplete( TInt aError ); 
+    void MrftoStationSeekComplete( TInt aError, TInt aFrequency );
+    void MrftoFmTransmitterStatusChange( TBool aActive );
+    void MrftoAntennaStatusChange( TBool aAttached );
+    void MrftoOfflineModeStatusChange( TBool aOfflineMode ); 
+    void MrftoFrequencyRangeChange( TFmRadioFrequencyRange aNewRange ); 
+    void MrftoFrequencyChange( TInt aNewFrequency ); 
+    void MrftoForcedMonoChange( TBool aForcedMono );
+    void MrftoSquelchChange( TBool aSquelch );
+	
+    //
+	// MRadioRdsTunerObserver Methods
+	//
+    void MrroStationSeekByPTYComplete( TInt aError, TInt aFrequency );
+    void MrroStationSeekByTAComplete( TInt aError, TInt aFrequency );
+    void MrroStationSeekByTPComplete( TInt aError, TInt aFrequency ); 
+    void MrroGetFreqByPTYComplete( TInt aError, RArray<TInt>& aFreqList );
+    void MrroGetFreqByTAComplete( TInt aError, RArray<TInt>& aFreqList );
+    void MrroGetPSByPTYComplete( TInt aError, RArray<TRdsPSName>& aPsList );
+    void MrroGetPSByTAComplete( TInt aError, RArray<TRdsPSName>& aPsList );
+    void MrroRdsDataPI( TInt aPi );
+    void MrroRdsDataPTY( TRdsProgrammeType aPty );
+    void MrroRdsDataPS( TRdsPSName& aPs );
+    void MrroRdsDataRT( TRdsRadioText& aRt );
+    void MrroRdsDataRTplus( TRdsRTplusClass aRtPlusClass, TRdsRadioText& aRtPlusData );
+    void MrroRdsDataCT( TDateTime& aCt );
+    void MrroRdsDataTA( TBool aTaOn );
+    void MrroRdsSearchBeginAF();
+    void MrroRdsSearchEndAF( TInt aError, TInt aFrequency );
+	void MrroRdsStationChangeTA( TInt aFrequency );
+    void MrroRdsEventAutomaticSwitchingChange( TBool aAuto );
+    void MrroRdsEventAutomaticTrafficAnnouncement( TBool aAuto );
+    void MrroRdsEventSignalChange( TBool aSignal );
+ 
+
+/**
+* Callback that is used to indicate that a new hci command has been received 
+* from the chip.
+* @param aString - The content of the hci frame that was received.
+**/
+	//void HandleRadioEngineCallBack(TFMRadioNotifyEvent aEventCode, TInt aErrorCode);
+/**
+* Start listening for client keypresses.
+**/
+	void StartTestingL();	
+	void StopTesting();
+/**
+* Simple helper method to retrieve a pointer to the console method
+* @return a pointer to the console
+**/
+	CConsoleBase* ConsoleWin();
+
+private:
+/**
+* 2nd phase constructor
+**/
+	void ConstructL();
+/**
+* c++ default constructor
+**/
+	CTRadioUtility();
+	void HandleNotifyL( const TUid aUid, const TDesC& aKey, const TDesC& aValue );
+public:
+	CConsoleBase* iConsole; //pointer to the console window
+private:
+	CRadioUtility*			iRadioUtility;
+	CTRadioUtilityConsole* 	iReadConsole; 
+	CRadioFmTunerUtility*	iFmTunerUtility;
+	CRadioPlayerUtility*	iPlayerUtility;
+	CRadioRdsUtility*		iRdsUtility;
+	TFmRadioFrequencyRange  iRange;
+	};
+
+class CTRadioUtilityConsole : public CActive
+	{
+public:
+/**
+* NewL method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+	static CTRadioUtilityConsole* NewL(CTRadioUtility* aParent);
+/**
+* NewLC method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+	static CTRadioUtilityConsole* NewLC(CTRadioUtility* aParent);
+/**
+* Destructor
+**/
+	~CTRadioUtilityConsole();
+/**
+* Display the console options, and wait for another key press.
+**/
+	void IssueRequestL();
+/**
+* This method is called whenever a key is pressed in the console window.
+**/
+	void RunL();
+/**
+* Cancel any outstanding test requests.
+**/
+	void DoCancel();
+protected:
+	CTRadioUtilityConsole(CTRadioUtility* aParent);
+private:
+/**
+* 2nd phase constructor
+**/
+	void ConstructL();
+/**
+* Outstanding request has been completed, start waiting for another request.
+**/
+	void ReadConsoleL();
+	CRadioUtility* GetRadioEngine();
+private:
+	CTRadioUtility* iParent;
+	CConsoleBase* iConsole;
+	};
+
+#endif // __CTRADIOUTILITY_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mmserv/radioutility/radio_utility/tsrc/src/TFMRadioUtility.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -0,0 +1,1581 @@
+/*
+* 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: The class provides a way to test Radio Utility's functions
+*
+*
+*/
+
+
+// INCLUDES
+#include <e32cons.h>
+#include <f32file.h>
+#include <RadioUtility.h>
+#include "RadioSession.h"
+#include "TFMRadioUtility.h"
+
+class CRadioUtility;
+
+/**
+* Cause a panic
+* @param aPanic - The panic to be raised
+**/
+GLDEF_C void Panic(TInt aPanic)
+	{
+	_LIT(KNameOfApp,"TRadioEngine");
+	User::Panic(KNameOfApp, aPanic);
+	}
+
+/**
+* Start the BTTestHarness up.
+**/
+void StartupL()
+	{
+	CActiveScheduler *pA=new(ELeave) CActiveScheduler;
+	CleanupStack::PushL(pA);
+	CActiveScheduler::Install(pA);
+	CTRadioUtility* tester = CTRadioUtility::NewLC();
+	tester->StartTestingL();
+	CActiveScheduler::Start();
+	CleanupStack::Pop(); 
+	delete tester;
+	tester = NULL;
+	CleanupStack::PopAndDestroy(1);
+	}
+
+/**
+* The main entrypoint for the application
+**/
+GLDEF_C TInt E32Main()
+	{
+
+	__UHEAP_MARK;
+	CTrapCleanup* cleanup=CTrapCleanup::New(); 
+	TRAPD(error, StartupL() );
+
+	delete cleanup; 
+	__UHEAP_MARKEND;
+	if (error == KErrNone)
+		{
+		return KErrNone;
+		}
+		else
+		{
+			return error;
+		}
+	}
+
+/**
+* NewL method for creating new instances of this class.
+**/
+CTRadioUtility* CTRadioUtility::NewL()
+	{
+	CTRadioUtility* s = CTRadioUtility::NewLC();
+	CleanupStack::Pop();
+	return s;
+	}
+
+
+/**
+* NewLC method for creating new instances of this class.
+**/
+CTRadioUtility* CTRadioUtility::NewLC()
+	{
+	RDebug::Print(_L("CTRadioUtility::NewLC"));
+	CTRadioUtility* s = new(ELeave) CTRadioUtility();
+	CleanupStack::PushL(s);
+	s->ConstructL();
+	return s;
+	}
+/**
+* MRadioPlayerObserver Callback 
+* 
+*
+**/
+void CTRadioUtility::MrpoStateChange( TPlayerState aState, TInt aError )
+	{
+		iConsole->Printf(_L("Player State Change: %x Error Code: %x\n"),aState, aError);
+	}
+
+/**
+* MRadioPlayerObserver MrpoVolumeChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrpoVolumeChange( TInt aVolume )
+	{
+		iConsole->Printf(_L("Volume Change: %x\n"),aVolume);
+	}
+
+/**
+* MRadioPlayerObserver MrpoMuteChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrpoMuteChange( TBool aMute )
+	{
+		iConsole->Printf(_L("Mute Change: %x\n"),aMute);
+	}
+
+/**
+* MRadioPlayerObserver MrpoBalanceChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrpoBalanceChange( TInt aLeftPercentage, TInt aRightPercentage )
+	{
+		iConsole->Printf(_L("Left Percentage: %x Right Percentage: %x\n"),aLeftPercentage, aRightPercentage);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoRequestTunerControlComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoRequestTunerControlComplete( TInt aError )
+	{
+		iConsole->Printf(_L("Request Tuner Control Complete: %x\n"),aError);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoSetFrequencyRangeComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoSetFrequencyRangeComplete( TInt aError )
+	{
+		iConsole->Printf(_L("Set Frequency Range Complete: %x\n"),aError);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoSetFrequencyComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoSetFrequencyComplete( TInt aError )
+	{
+		iConsole->Printf(_L("Set Frequency Complete: %x\n"),aError);
+	}
+	
+/**
+* MRadioFmTunerObserver  Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoStationSeekComplete( TInt aError, TInt aFrequency )
+	{
+		iConsole->Printf(_L("Station Seek Complete: %x Frequency: %x\n"),aError, aFrequency);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoFmTransmitterStatusChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoFmTransmitterStatusChange( TBool aActive )
+	{
+		iConsole->Printf(_L("Transmitter Status Change: %x\n"),aActive);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoAntennaStatusChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoAntennaStatusChange( TBool aAttached )
+	{
+		iConsole->Printf(_L("Antenna Status Change: %x\n"),aAttached);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoOfflineModeStatusChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoOfflineModeStatusChange( TBool aOfflineMode )
+	{
+		iConsole->Printf(_L("Offline Mode Change: %x\n"),aOfflineMode);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoFrequencyRangeChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoFrequencyRangeChange( TFmRadioFrequencyRange aNewRange )
+	{
+		iConsole->Printf(_L("Frequency Range Change: Range = %d"),aNewRange);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoFrequencyChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoFrequencyChange( TInt aNewFrequency )
+	{
+		iConsole->Printf(_L("Frequency Change: %x\n"),aNewFrequency);
+	}
+	
+/**
+* MRadioFmTunerObserver MrftoForcedMonoChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoForcedMonoChange( TBool aForcedMono )
+	{
+		iConsole->Printf(_L("Forced Mono Change: %x\n"),aForcedMono);
+	}
+	
+/**
+* MRadioFmTunerObserver  MrftoSquelchChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrftoSquelchChange( TBool aSquelch )
+	{
+		iConsole->Printf(_L("Squelch Change: %x\n"),aSquelch);
+	}
+		
+
+/**
+* MRadioRdsTunerObserver MrroStationSeekByPTYComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroStationSeekByPTYComplete( TInt /*aError*/, TInt aFrequency )
+	{
+		iConsole->Printf(_L(" Station Seek By PTY Complete: %x\n"),aFrequency);
+	}
+	
+/**
+* MRadioRdsTunerObserver MrroStationSeekByTAComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroStationSeekByTAComplete( TInt /*aError*/, TInt aFrequency )
+	{
+		iConsole->Printf(_L(" Station Seek By TA Complete: %x\n"),aFrequency);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroStationSeekByTPComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroStationSeekByTPComplete( TInt /*aError*/, TInt aFrequency ) 
+	{
+		iConsole->Printf(_L(" Statio Seek TP Complete: %x\n"),aFrequency);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroGetFreqByPTYComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroGetFreqByPTYComplete( TInt aError, RArray<TInt>& /*aFreqList*/ )
+	{
+		iConsole->Printf(_L(" Freq By PTY Complete: %x\n"),aError);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroGetFreqByTAComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroGetFreqByTAComplete( TInt aError, RArray<TInt>& /*aFreqList*/ )
+	{
+		iConsole->Printf(_L(" Freq By TA Complete: %x\n"),aError);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroGetPSByPTYComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroGetPSByPTYComplete( TInt aError, RArray<TRdsPSName>& /*aPsList*/ )
+	{
+		iConsole->Printf(_L(" PSByPTY Complete: %x\n"),aError);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroGetPSByTAComplete Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroGetPSByTAComplete( TInt aError, RArray<TRdsPSName>& /*aPsList*/ )
+	{
+		iConsole->Printf(_L(" PSByTA Complete: %x\n"),aError);
+	}
+	
+/**
+* MRadioRdsTunerObserver MrroRdsDataPI Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataPI( TInt aPi )
+	{
+		iConsole->Printf(_L(" Data PI: %x\n"),aPi);
+	}	
+
+/**
+* MRadioRdsTunerObserver MrroRdsDataPTY Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataPTY( TRdsProgrammeType aPty )
+	{
+		iConsole->Printf(_L(" Data PTY: %x\n"),aPty);
+	}	
+
+/**
+* MRadioRdsTunerObserver MrroRdsDataPS Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataPS( TRdsPSName& /*aPs*/ )
+	{
+		iConsole->Printf(_L(" Data PS:\n"));
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsDataRT Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataRT( TRdsRadioText& /*aRt*/ )
+	{
+		iConsole->Printf(_L(" Data RT: \n"));
+	}
+	
+/**
+* MRadioRdsTunerObserver MrroRdsDataRTPlus Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataRTplus( TRdsRTplusClass /*aRtPlusClass*/, TRdsRadioText& /*aRtPlusData*/ )
+	{
+		iConsole->Printf(_L(" Data RTPlusData: \n"));
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsDataCT Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataCT( TDateTime& /*aCt*/ )
+	{
+		iConsole->Printf(_L(" Data CT: \n"));
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsDataTA Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsDataTA( TBool aTaOn )
+	{
+		iConsole->Printf(_L(" Data TA: %x\n"),aTaOn);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsSearchBeginAF Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsSearchBeginAF()
+	{
+		iConsole->Printf(_L(" Search Begin AF:\n"));
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsSearchEndAF Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsSearchEndAF( TInt /*aError*/, TInt aFrequency )
+	{
+		iConsole->Printf(_L(" Search End AF: %x\n"),aFrequency);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsStationChangeTA Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsStationChangeTA( TInt aFrequency )
+	{
+		iConsole->Printf(_L("Station Change TA: %x\n"),aFrequency);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsEventAutomaticSwitchingChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsEventAutomaticSwitchingChange( TBool aAuto )
+	{
+		iConsole->Printf(_L(" Auto Switch Change: %x\n"),aAuto);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsEventAutomaticTrafficAnnouncement Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsEventAutomaticTrafficAnnouncement( TBool aAuto )
+	{
+		iConsole->Printf(_L(" Auto TA Change: %x\n"),aAuto);
+	}
+
+/**
+* MRadioRdsTunerObserver MrroRdsEventSignalChange Callback 
+* 
+*
+**/
+void CTRadioUtility::MrroRdsEventSignalChange( TBool aSignal )
+	{
+		iConsole->Printf(_L(" Signal Change: %x\n"),aSignal);
+	}
+    
+/**
+* 2nd phase constructor
+**/
+void CTRadioUtility::ConstructL()
+	{
+	RDebug::Print(_L("CTRadioUtility::ConstructL()"));
+	iConsole=Console::NewL(_L("CTestRadioUtility"), TSize(-1,-1));
+	iReadConsole = CTRadioUtilityConsole::NewL(this);
+	TBool PrimaryClient = ETrue;
+	iRadioUtility = CRadioUtility::NewL(PrimaryClient);
+	iFmTunerUtility = &iRadioUtility->RadioFmTunerUtilityL(*this);
+	iPlayerUtility  = &iRadioUtility->RadioPlayerUtilityL(*this);
+	iRdsUtility     = &iRadioUtility->RadioRdsUtilityL(*this);
+	}
+
+/**
+* c++ default constructor
+**/
+CTRadioUtility::CTRadioUtility()
+	{
+	}
+
+/**
+* destructor
+**/
+CTRadioUtility::~CTRadioUtility()
+	{
+//	iSharedDataClient.Close();
+	delete iRadioUtility;
+	delete iReadConsole;
+	delete iConsole;
+	User::After(20000000);
+	}
+
+/**
+* Simple helper method to retrieve a pointer to the console method
+* @return a pointer to the console
+**/
+CConsoleBase* CTRadioUtility::ConsoleWin()
+	{
+	return iConsole;
+	}
+	
+//	
+//
+// Tuner Utility Test Cases
+//
+//
+
+/**
+* RequestTunerControl
+* @return None
+**/
+void CTRadioUtility::RequestTunerControl()
+	{
+	iFmTunerUtility->RequestTunerControl();
+	}
+	
+/**
+* CloseTuner 
+* @return None
+**/
+void CTRadioUtility::CloseTuner()
+	{
+	//iFmTunerUtility->Close();
+	}
+	
+/**
+* GetCapabilities 
+* @return None
+**/
+void CTRadioUtility::GetTunerCapabilities()
+	{
+	TFmTunerCapabilities Caps;
+	TInt err = iFmTunerUtility->GetCapabilities(Caps);
+	iConsole->Printf(_L("TunerCapabilities: %x\n"),Caps.iTunerBands);
+	}
+	
+/**
+* EnableTunerInOfflineMode 
+* @return None
+**/
+void CTRadioUtility::EnableTunerInOfflineMode()
+	{
+	TBool Enable = EFalse;
+	TInt err = iFmTunerUtility->EnableTunerInOfflineMode(Enable);
+	}
+	
+/**
+* SetFrequencyRange 
+* @return None
+**/
+void CTRadioUtility::SetFrequencyRange()
+	{
+	iRange = EFmRangeJapan;
+	iConsole->Printf(_L("Frequency was Japanese: %x\n"),iRange);
+	TFmRadioFrequencyRange Range = EFmRangeEuroAmerica;
+	iFmTunerUtility->SetFrequencyRange(Range);
+	iRange = Range;
+	iConsole->Printf(_L("Frequency now set to America: %x\n"),iRange);
+	}
+	
+/**
+* GetFrequencyRange 
+* @return None
+**/
+void CTRadioUtility::GetFrequencyRange()
+	{
+	TFmRadioFrequencyRange Range = EFmRangeEuroAmerica;
+	TInt MinFreq;
+	TInt MaxFreq;
+	TInt err = iFmTunerUtility->GetFrequencyRange(Range, MinFreq, MaxFreq );
+	iConsole->Printf(_L("GetFrequncy Range: Min %x Max %x\n"),MinFreq, MaxFreq);
+	}
+	
+/**
+* SetFrequency 
+* @return None
+**/
+void CTRadioUtility::SetFrequency()
+	{
+	TInt Freq = 106100000;
+	
+	iFmTunerUtility->SetFrequency(Freq);
+	iConsole->Printf(_L("Set Frequency to 106100000: %d\n"),Freq);
+	}
+	
+/**
+* GetFrequency 
+* @return None
+**/
+void CTRadioUtility::GetFrequency()
+	{
+	TInt Freq;
+	TInt err = iFmTunerUtility->GetFrequency(Freq);
+	iConsole->Printf(_L("GetFrequncy: %d\n"),Freq);
+	}
+	
+/**
+* StationSee 
+* @return None
+**/
+void CTRadioUtility::StationSeek()
+	{
+	TBool Upwards = ETrue;
+	iFmTunerUtility->StationSeek(Upwards);
+	}
+	
+/**
+* GetSignalStrength 
+* @return None
+**/
+void CTRadioUtility::GetSignalStrength()
+	{
+	TInt SignalStrength;
+	TInt err = iFmTunerUtility->GetSignalStrength(SignalStrength);
+	iConsole->Printf(_L("GetSignalStrength: %d\n"),SignalStrength);
+	}
+	
+/**
+* GetMaxSignalStrength
+* @return None
+**/
+void CTRadioUtility::GetMaxSignalStrength()
+	{
+	TInt SignalStrength;
+	TInt err = iFmTunerUtility->GetMaxSignalStrength(SignalStrength);
+	iConsole->Printf(_L("GetMaxSignalStrength: %x\n"),SignalStrength);
+	}
+	
+/**
+* GetStereoMode 
+* @return None
+**/
+void CTRadioUtility::GetStereoMode()
+	{
+	TBool Stereo;
+	TInt err = iFmTunerUtility->GetStereoMode(Stereo);
+	iConsole->Printf(_L("Stereo Mode: %x\n"),Stereo);
+	} 
+
+/**
+* ForceMonoReception 
+* @return None
+**/
+void CTRadioUtility::ForceMonoReception()
+	{
+	TBool ForceMono = ETrue;
+	TInt err = iFmTunerUtility->ForceMonoReception(ForceMono);
+	iConsole->Printf(_L("Set ForceMonoReception: %x\n"),ForceMono);
+	}
+	
+/**
+* GetForceMonoReception 
+* @return None
+**/
+void CTRadioUtility::GetForceMonoReception()
+	{
+	TBool ForceMono;
+	TInt err = iFmTunerUtility->GetForcedMonoReception(ForceMono);
+	iConsole->Printf(_L("GetForceMonoReception: %x\n"),ForceMono);
+	}
+	
+/**
+* SetSquelch 
+* @return None
+**/
+void CTRadioUtility::SetSquelch()
+	{
+	TBool Squelch = ETrue;
+	TInt err = iFmTunerUtility->SetSquelch(Squelch);
+	iConsole->Printf(_L("SetSquelch: %x\n"),Squelch);
+	}
+	
+/**
+* GetSquelch 
+* @return None
+**/
+void CTRadioUtility::GetSquelch()
+	{
+	TBool Squelch;
+	TInt err = iFmTunerUtility->GetSquelch(Squelch);
+	iConsole->Printf(_L("GetSquelch: %x\n"),Squelch);
+	}
+	
+/**
+* CancelStationSeek 
+* @return None
+**/
+void CTRadioUtility::CancelStationSeek()
+	{
+	iFmTunerUtility->CancelStationSeek();
+	}
+	
+/**
+* CancelSetFrequencyRange 
+* @return None
+**/
+void CTRadioUtility::CancelSetFrequencyRange()
+	{
+	iFmTunerUtility->CancelSetFrequencyRange();
+	}
+	
+/**
+* CancelSetFrequency 
+* @return None
+**/
+void CTRadioUtility::CancelSetFrequency()
+	{
+	iFmTunerUtility->CancelSetFrequency();
+	}
+	
+	
+//
+// Player Utility Test Cases
+//
+
+/**
+* Play Radio
+* @return None
+**/
+void CTRadioUtility::Play()
+	{
+	iPlayerUtility->Play();
+	}
+	
+/**
+* PlayerState Radio
+* @return None
+**/
+void CTRadioUtility::PlayerState()
+	{ 
+		TPlayerState PState;	
+		PState = iPlayerUtility->PlayerState();
+		iConsole->Printf(_L("PlayerState: %x\n"),PState);
+	}
+	
+/**
+* Close Radio
+* @return None
+**/
+void CTRadioUtility::ClosePlayer()
+	{
+	iPlayerUtility->Close();
+	}
+	
+/**
+* Stop Radio
+* @return None
+**/
+void CTRadioUtility::StopPlayer()
+	{
+	iPlayerUtility->Stop();
+	}
+	
+/**
+* Mute Radio
+* @return None
+**/
+void CTRadioUtility::Mute()
+	{
+	TInt err = iPlayerUtility->Mute(ETrue);
+	}
+	
+/**
+* IsMute Radio
+* @return None
+**/
+void CTRadioUtility::IsMute()
+	{
+	TBool Mute = iPlayerUtility->IsMute();
+	iConsole->Printf(_L("IsMute: %x\n"),Mute);
+	}
+	
+/**
+* SetVolume Radio
+* @return None
+**/
+void CTRadioUtility::SetVolume()
+	{
+	TInt Volume = 6;
+	TInt err = iPlayerUtility->SetVolume(Volume);
+	}
+	
+/**
+* GetVolume Radio
+* @return None
+**/
+void CTRadioUtility::GetVolume()
+	{
+	TInt Volume;
+	TInt err = iPlayerUtility->GetVolume(Volume);
+	iConsole->Printf(_L("Volume: %x\n"),Volume);
+	}
+	
+/**
+* SetVolumeRamp Radio
+* @return None
+**/
+void CTRadioUtility::SetVolumeRamp()
+	{
+	TTimeIntervalMicroSeconds RampInterval = 4;
+	TInt err = iPlayerUtility->SetVolumeRamp(RampInterval);
+	iConsole->Printf(_L("RampInterval: %x\n"),RampInterval.Int64() );
+	}
+	   
+/**
+* GetMaxVolume Radio
+* @return None
+**/
+void CTRadioUtility::GetMaxVolume()
+	{
+	TInt MaxVolume;
+	TInt err = iPlayerUtility->GetMaxVolume(MaxVolume);
+	iConsole->Printf(_L("MaxVolume: %x\n"),MaxVolume);
+	}
+	
+/**
+* SetBalance Radio
+* @return None
+**/
+void CTRadioUtility::SetBalance()
+	{
+	TInt LeftPercentage = 49;
+	TInt RightPercentage = 51;
+	TInt err = iPlayerUtility->SetBalance(LeftPercentage, RightPercentage);
+	}
+	
+/**
+* GetBalance Radio
+* @return None
+**/
+void CTRadioUtility::GetBalance() 
+	{
+	TInt LeftPercentage;
+	TInt RightPercentage;
+	TInt err = iPlayerUtility->GetBalance(LeftPercentage, RightPercentage);
+	iConsole->Printf(_L("GetBalance: left %x right %x \n"),LeftPercentage,RightPercentage);
+	}
+	
+//
+// Rds Utility
+//
+
+void CTRadioUtility::Close()
+	{
+	iRdsUtility->Close();
+	}
+
+void CTRadioUtility::GetRdsCapabilities()
+	{
+	TRdsCapabilities Caps;
+	TInt err = iRdsUtility->GetCapabilities( Caps );
+	}
+
+
+void CTRadioUtility::GetRdsSignalStatus()
+	{
+	TBool RdsSignal = ETrue;
+	TInt err = iRdsUtility->GetRdsSignalStatus( RdsSignal );
+	}
+
+void CTRadioUtility::NotifyRdsDataChange()
+	{
+	TRdsData RdsData;
+	RdsData.iAdditionalFunctions1 = 0;
+	RdsData.iAdditionalFunctions2 = 0;
+	RdsData.iRdsFunctions = ERdsTrafficAnnouncement | ERdsRadioText | ERdsClockTime;
+	TInt err = iRdsUtility->NotifyRdsDataChange( RdsData );
+	}
+
+void CTRadioUtility::CancelNotifyRdsDataChange()
+	{
+	iRdsUtility->CancelNotifyRdsDataChange();
+	}
+
+void CTRadioUtility::SetAutomaticSwitching()
+	{
+	TBool Auto = ETrue;
+	TInt err = iRdsUtility->SetAutomaticSwitching( Auto );
+	}
+
+void CTRadioUtility::GetAutomaticSwitching()
+	{
+	TBool Auto = EFalse;
+	TInt err = iRdsUtility->GetAutomaticSwitching( Auto );
+	}
+
+void CTRadioUtility::CancelAFSearch()
+	{
+	iRdsUtility->CancelAFSearch();
+	}
+
+void CTRadioUtility::SetAutomaticTrafficAnnouncement()
+	{
+	TBool Auto = ETrue;
+	TInt err = iRdsUtility->SetAutomaticTrafficAnnouncement( Auto );
+	}
+
+void CTRadioUtility::GetAutomaticTrafficAnnouncement()
+	{
+	TBool Auto = EFalse;
+	TInt err = iRdsUtility->GetAutomaticTrafficAnnouncement( Auto );
+	}
+
+void CTRadioUtility::StationSeekByPTY()
+	{
+	TRdsProgrammeType Pty = KRdsPtyNone;
+	TBool SeekUp = ETrue;
+	iRdsUtility->StationSeekByPTY( Pty, SeekUp );
+	}
+
+void CTRadioUtility::StationSeekByTA()
+	{
+	TBool SeekUp = ETrue;
+	iRdsUtility->StationSeekByTA( SeekUp );
+	}
+
+void CTRadioUtility::StationSeekByTP()
+	{
+	TBool SeekUp = ETrue;
+	iRdsUtility->StationSeekByTP( SeekUp );
+	}
+
+void CTRadioUtility::CancelRdsStationSeek()
+	{
+	iRdsUtility->CancelRdsStationSeek();
+	}
+
+void CTRadioUtility::GetFreqByPTY()
+	{
+	TRdsProgrammeType Pty = KRdsPtyNone;
+	iRdsUtility->GetFreqByPTY( Pty );
+	}
+
+void CTRadioUtility::CancelGetFreqByPTY()
+	{
+	iRdsUtility->CancelGetFreqByPTY();
+	}
+
+void CTRadioUtility::GetFreqByTA()
+	{
+	iRdsUtility->GetFreqByTA();
+	}
+
+void CTRadioUtility::CancelGetFreqByTA()
+	{
+	iRdsUtility->CancelGetFreqByTA();
+	}
+
+void CTRadioUtility::GetPSByPTY()
+	{
+	TRdsProgrammeType Pty = KRdsPtyNone;
+	iRdsUtility->GetPSByPTY( Pty );
+	}
+
+void CTRadioUtility::CancelGetPSByPTY()
+	{
+	iRdsUtility->CancelGetPSByPTY();
+	}
+
+void CTRadioUtility::GetPSByTA()
+	{
+	iRdsUtility->GetPSByTA();
+	}
+
+void CTRadioUtility::CancelGetPSByTA()
+	{
+	iRdsUtility->CancelGetPSByTA();
+	}  
+
+void CTRadioUtility::GetProgrammeIdentification()
+	{
+	TInt Pi = 0;
+	TInt err = iRdsUtility->GetProgrammeIdentification( Pi );
+	}
+
+void CTRadioUtility::GetProgrammeType()
+	{
+	TRdsProgrammeType Pty = KRdsPtyNone;
+	TInt err = iRdsUtility->GetProgrammeType( Pty );
+	}
+
+void CTRadioUtility::GetProgrammeService()
+	{
+	TRdsPSName Ps = NULL;
+	TInt err = iRdsUtility->GetProgrammeService( Ps );
+	}
+
+void CTRadioUtility::GetRadioText()
+	{
+	TRdsRadioText Rt;
+	TInt err = iRdsUtility->GetRadioText( Rt );
+	}
+	
+void CTRadioUtility::GetRadioTextPlus()
+	{
+	TRdsRTplusClass RtPlusClass( ERTplusItemDummy );
+	TRdsRadioText   RtPlusData;
+	
+	TInt err = iRdsUtility->GetRadioTextPlus( RtPlusClass, RtPlusData );
+	}
+
+void CTRadioUtility::GetClockTime()
+	{
+	TDateTime Ct;
+	TInt err = iRdsUtility->GetClockTime( Ct );
+	}
+
+void CTRadioUtility::GetTrafficAnnouncementStatus()
+	{
+	TBool TaStatus = EFalse;
+	TInt err = iRdsUtility->GetTrafficAnnouncementStatus( TaStatus );
+	}
+
+void CTRadioUtility::GetTrafficProgrammeStatus()
+	{
+	TBool TpStatus = EFalse;
+	TInt err = iRdsUtility->GetTrafficProgrammeStatus( TpStatus );
+	}
+
+/**
+* Start listening for client keypresses.
+**/
+void CTRadioUtility::StartTestingL()
+	{
+	iReadConsole->IssueRequestL();
+	}
+
+/**
+* Shutdown the BTTestHarness console.
+**/
+void CTRadioUtility::StopTesting()
+	{
+	CActiveScheduler::Stop();
+	}
+
+void CTRadioUtility::HandleNotifyL(const TUid /*aUid*/, const TDesC& /*aKey*/, const TDesC& /*aValue*/)
+	{
+	}
+	
+/**
+* NewL method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+CTRadioUtilityConsole* CTRadioUtilityConsole::NewL(CTRadioUtility* aParent)
+	{
+	CTRadioUtilityConsole* s = CTRadioUtilityConsole::NewLC(aParent);
+	CleanupStack::Pop();
+	return s;
+	}
+	
+/**
+* NewLC method for creating new instances of this class.
+* @param aParent - a pointer to the BTTestHarness
+* @return - a pointer to the newly created CBTTestHarnessConsole
+**/
+CTRadioUtilityConsole* CTRadioUtilityConsole::NewLC(CTRadioUtility* aParent)
+	{
+	CTRadioUtilityConsole* s = new(ELeave) CTRadioUtilityConsole(aParent);
+	CleanupStack::PushL(s);
+	s->ConstructL();
+	return s;
+	}
+
+/**
+* Destructor
+**/
+CTRadioUtilityConsole::~CTRadioUtilityConsole()
+	{
+	Cancel();
+	}
+
+
+/**
+* This method is called whenever a key is pressed in the console window.
+* 
+* Player Utility Selections
+*
+**/
+
+void CTRadioUtilityConsole::RunL()
+	{
+	TInt key = iConsole->KeyCode();
+	switch (key)
+		{
+	case '1':
+		iParent->Play();
+		IssueRequestL();
+		break;		
+	case '2':
+		iParent->PlayerState();
+		IssueRequestL();
+		break;
+	case '3':
+		iParent->ClosePlayer();
+		IssueRequestL();
+		break;
+	case '4':
+		iParent->StopPlayer();
+		IssueRequestL();
+		break;
+	case '5':
+		iParent->Mute();
+		IssueRequestL();
+		break;
+	case '6':
+		iParent->IsMute();
+		IssueRequestL();
+		break;
+	case '7':
+		iParent->SetVolume();
+		IssueRequestL();
+		break;
+	case '8':
+		iParent->GetVolume();
+		IssueRequestL();
+		break;
+	case '9':
+		iParent->SetVolumeRamp();
+		IssueRequestL();
+		break;
+	case '0':
+		iParent->GetMaxVolume();
+		IssueRequestL();
+		break;
+	case 'a':
+		iParent->RequestTunerControl();
+		IssueRequestL();
+		break;
+	case 'd':
+		iParent->SetFrequency();
+		IssueRequestL();
+		break;
+	case 'g':
+		iParent->Play();
+		IssueRequestL();
+		break;		
+	case 'j':
+		iParent->SetVolume();
+		IssueRequestL();
+		break;	
+	case 'm':
+		iParent->StopPlayer();
+		IssueRequestL();
+		break;	
+	case 'p':
+		iParent->IsMute();
+		IssueRequestL();
+		break;	
+	case 't':
+		iParent->GetVolume();
+		IssueRequestL();
+		break;	
+		
+	case 'z':
+		IssueRequestL();
+		break;
+	case 'x':
+		iParent->StopTesting();
+		break;
+	default:
+		IssueRequestL();
+		break;
+		}
+	}
+
+/**
+* This method is called whenever a key is pressed in the console window.
+* 
+* Tuner Utility Selections
+*
+**/
+/*
+void CTRadioUtilityConsole::RunL()
+	{
+
+	TInt key = iConsole->KeyCode();
+	switch (key)
+		{
+	case '1':
+		iParent->RequestTunerControl();
+		IssueRequestL();
+		break;
+	case '2':
+		iParent->EnableTunerInOfflineMode();
+		IssueRequestL();
+		break;
+	case '3':
+		iParent->CloseTuner();
+		IssueRequestL();
+		break;
+	case '4':
+		iParent->GetCapabilities();
+		IssueRequestL();
+		break;
+	case '5':
+		iParent->SetFrequencyRange();
+		IssueRequestL();
+		break;
+	case '6':
+		iParent->GetFrequencyRange();
+		IssueRequestL();
+		break;
+	case '7':
+		iParent->SetFrequency();
+		IssueRequestL();
+		break;
+	case '8':
+		iParent->GetFrequency();
+		IssueRequestL();
+		break;
+	case '9':
+		iParent->StationSeek();
+		IssueRequestL();
+		break;
+	case '0':
+		iParent->GetSignalStrength();
+		IssueRequestL();
+		break;
+	case 'a':
+		iParent->GetMaxSignalStrength();
+		IssueRequestL();
+		break;
+	case 'b':
+		iParent->GetStereoMode();
+		IssueRequestL();
+		break;
+	case 'c':
+		iParent->ForceMonoReception();
+		IssueRequestL();
+		break;
+	case 'd':
+		iParent->GetForceMonoReception();
+		IssueRequestL();
+		break;
+	case 'e':
+		iParent->SetSquelch();
+		IssueRequestL();
+		break;
+	case 'f':
+		iParent->GetSquelch();
+		IssueRequestL();
+		break;
+	case 'g':
+		iParent->CancelStationSeek();
+		IssueRequestL();
+		break;
+	case 'h':
+		iParent->CancelSetFrequency();
+		IssueRequestL();
+		break;
+	case 'i':
+		iParent->CancelSetFrequencyRange();
+		IssueRequestL();
+		break;
+	case 'j':
+		iParent->Play();
+		IssueRequestL();
+		break;	
+
+	case 'z':
+		IssueRequestL();
+		break;
+	case 'x':
+		iParent->StopTesting();
+		break;
+	default:
+		IssueRequestL();
+		break;
+		}
+	key = 0;
+	}
+*/
+
+/**
+* This method is called whenever a key is pressed in the console window.
+* 
+* Rds Utility Selections
+*
+**/
+/*
+void CTRadioUtilityConsole::RunL()
+	{
+
+	TInt key = iConsole->KeyCode();
+	switch (key)
+		{
+	case '1':
+		iParent->RequestTunerControl();
+		IssueRequestL();
+		break;
+	case '2':
+		iParent->EnableTunerInOfflineMode();
+		IssueRequestL();
+		break;
+	case '3':
+		iParent->Close();
+		IssueRequestL();
+		break;
+	case '4':
+		iParent->GetCapabilities();
+		IssueRequestL();
+		break;
+	case '5':
+		iParent->GetRdsSignalStatus();
+		IssueRequestL();
+		break;
+	case '6':
+		iParent->NotifyRdsDataChange();
+		IssueRequestL();
+		break;
+	case '7':
+		iParent->CancelNotifyRdsDataChange();
+		IssueRequestL();
+		break;
+	case '8':
+		iParent->SetAutomaticSwitching();
+		IssueRequestL();
+		break;
+	case '9':
+		iParent->GetAutomaticSwitching();
+		IssueRequestL();
+		break;
+	case '0':
+		iParent->CancelAFSearch();
+		IssueRequestL();
+		break;
+	case 'a':
+		iParent->SetAutomaticTrafficAnnouncement();
+		IssueRequestL();
+		break;
+	case 'b':
+		iParent->GetAutomaticTrafficAnnouncement();
+		IssueRequestL();
+		break;
+	case 'c':
+		iParent->StationSeekByPTY();
+		IssueRequestL();
+		break;
+	case 'd':
+		iParent->StationSeekByTA();
+		IssueRequestL();
+		break;
+	case 'e':
+		iParent->StationSeekByTP();
+		IssueRequestL();
+		break;
+	case 'f':
+		iParent->CancelRdsStationSeek();
+		IssueRequestL();
+		break;
+	case 'g':
+		iParent->GetFreqByPTY();
+		IssueRequestL();
+		break;
+	case 'h':
+		iParent->CancelGetFreqByPTY();
+		IssueRequestL();
+		break;
+	case 'i':
+		iParent->GetFreqByTA();
+		IssueRequestL();
+		break;
+	case 'j':
+		iParent->CancelGetFreqByTA();
+		IssueRequestL();
+		break;	
+	case 'k':
+		iParent->GetPSByPTY();
+		IssueRequestL();
+		break;
+	case 'l':
+		iParent->CancelGetPSByPTY();
+		IssueRequestL();
+		break;
+	case 'm':
+		iParent->GetPSByTA();
+		IssueRequestL();
+		break;	
+	case 'n':
+		iParent->CancelGetPSByTA();
+		IssueRequestL();
+		break;
+	case 'o':
+		iParent->GetProgrammeIdentification();
+		IssueRequestL();
+		break;
+	case 'p':
+		iParent->GetProgrammeType();
+		IssueRequestL();
+		break;
+	case 'q':
+		iParent->GetProgrammeService();
+		IssueRequestL();
+		break;
+	case 'r':
+		iParent->GetRadioText();
+		IssueRequestL();
+		break;
+	case 's':
+		iParent->GetRadioTextPlus();
+		IssueRequestL();
+		break;
+	case 't':
+		iParent->GetClockTime();
+		IssueRequestL();
+		break;
+	case 'u':
+		iParent->GetTrafficAnnouncementStatus();
+		IssueRequestL();
+		break;
+	case 'v':
+		iParent->GetTrafficProgrammeStatus();
+		IssueRequestL();
+		break;
+		
+
+	case 'z':
+		IssueRequestL();
+		break;
+	case 'x':
+		iParent->StopTesting();
+		break;
+	default:
+		IssueRequestL();
+		break;
+		}
+	key = 0;
+	}
+*/
+/**
+* Cancel any outstanding test requests.
+**/
+void CTRadioUtilityConsole::DoCancel()
+	{
+	if (iConsole)
+		{
+		iConsole->ReadCancel();
+		iConsole->Printf(_L("Console read cancelled...\n"));
+		}
+	}
+
+/**
+* Constructor
+* @param aParent - a pointer to the BTTestHarness
+**/
+CTRadioUtilityConsole::CTRadioUtilityConsole(CTRadioUtility* aParent) :
+	CActive(EPriorityStandard),
+	iParent(aParent)
+	{
+	iConsole = iParent->ConsoleWin();
+	CActiveScheduler::Add(this);
+	}
+
+/**
+* 2nd phase constructor
+**/
+void CTRadioUtilityConsole::ConstructL()
+	{
+	}
+
+/**
+* Display the console options, and wait for another key press.
+*
+* Player Utility
+*
+**/
+
+void CTRadioUtilityConsole::IssueRequestL() // here is what you can choose
+	{
+	iConsole->Printf(_L("1. Play\n"));
+	iConsole->Printf(_L("2. PlayerState\n"));
+	iConsole->Printf(_L("3. Close\n"));
+	iConsole->Printf(_L("4. Stop\n"));
+	iConsole->Printf(_L("5. Mute\n"));
+	iConsole->Printf(_L("6. IsMute\n"));
+	iConsole->Printf(_L("7. SetVolume\n"));
+	iConsole->Printf(_L("8. GetVolume\n"));
+	iConsole->Printf(_L("9. SetVolumeRamp\n"));
+	iConsole->Printf(_L("0. GetMaxVolume\n"));
+	iConsole->Printf(_L("a. RequestTunerControl\n"));
+	iConsole->Printf(_L("d. SetFrequency\n"));
+	iConsole->Printf(_L("g. Play\n"));
+	iConsole->Printf(_L("j. SetVolume\n"));
+	iConsole->Printf(_L("m. Stop\n"));
+	iConsole->Printf(_L("p. IsMute\n"));
+	iConsole->Printf(_L("t. GetVolume\n"));
+
+	iConsole->Printf(_L("---------------------\n"));
+	iConsole->Printf(_L("x. Exit\n"));
+	ReadConsoleL();
+	}
+
+	
+/**
+* Display the console options, and wait for another key press.
+*
+* Tuner Utility
+*
+**/
+/*
+void CTRadioUtilityConsole::IssueRequestL() 
+	{
+	iConsole->Printf(_L("1. RequestTunerControl\n"));
+	iConsole->Printf(_L("2. EnableTunerInOfflineMode\n"));
+	iConsole->Printf(_L("3. CloseTuner\n"));
+	iConsole->Printf(_L("4. GetTunerCapabilities\n"));
+	iConsole->Printf(_L("5. SetFrequencyRange\n"));
+	iConsole->Printf(_L("6. GetFrequencyRange\n"));
+	iConsole->Printf(_L("7. SetFrequency\n"));
+	iConsole->Printf(_L("8. GetFrequency\n"));
+	iConsole->Printf(_L("9. StationSeek\n"));
+	iConsole->Printf(_L("0. GetSignalStrength\n"));
+	iConsole->Printf(_L("a. GetMaxSignalStrength\n"));
+	iConsole->Printf(_L("b. GetStereoMode\n"));
+	iConsole->Printf(_L("c. ForceMonoRecepion\n"));
+	iConsole->Printf(_L("d. GetForceMonoReception\n"));
+	iConsole->Printf(_L("e. SetSquelch\n"));
+	iConsole->Printf(_L("f. GetSquelch\n"));
+	iConsole->Printf(_L("g. CancelStationSeek\n"));
+	iConsole->Printf(_L("h. CancelSetFrequency\n"));
+	iConsole->Printf(_L("i. CancelSetFrequencyRange\n"));
+	iConsole->Printf(_L("j. Play\n"));
+
+
+	iConsole->Printf(_L("---------------------\n"));
+	iConsole->Printf(_L("x. Exit\n"));
+	ReadConsoleL();
+	}
+*/
+
+/**
+* Display the console options, and wait for another key press.
+*
+* Rds Utility
+*
+**/
+/*
+void CTRadioUtilityConsole::IssueRequestL() 
+	{
+	iConsole->Printf(_L("1. RequestTunerControl\n"));
+	iConsole->Printf(_L("2. EnableTunerInOfflineMode\n"));
+	iConsole->Printf(_L("3. CloseRds\n"));
+	iConsole->Printf(_L("4. GetRdsCapabilities\n"));
+	iConsole->Printf(_L("5. GetRdsSignalStatus\n"));
+	iConsole->Printf(_L("6. NotifyRdsDataChange\n"));
+	iConsole->Printf(_L("7. CancelNotifyRdsDataChange\n"));
+	iConsole->Printf(_L("8. SetAutomaticSwitching\n"));
+	iConsole->Printf(_L("9. GetAutomaticSwitching\n"));
+	iConsole->Printf(_L("0. CancelAFSearch\n"));
+	iConsole->Printf(_L("a. SetAutomaticTrafficAnnouncement\n"));
+	iConsole->Printf(_L("b. GetAutomaticTrafficAnnouncement\n"));
+	iConsole->Printf(_L("c. StationSeekByPTY\n"));
+	iConsole->Printf(_L("d. StationSeekByTA\n"));
+	iConsole->Printf(_L("e. StationSeekByTP\n"));
+	iConsole->Printf(_L("f. CancelRdsStationSeek\n"));
+	iConsole->Printf(_L("g. GetFreqByPTY\n"));
+	iConsole->Printf(_L("h. CancelGetFreqByPTY\n"));
+	iConsole->Printf(_L("i. GetFreqByTA\n"));
+	iConsole->Printf(_L("j. CancelGetFreqByTA\n"));
+	iConsole->Printf(_L("k. GetPSByPTY\n"));
+	iConsole->Printf(_L("l. CancelGetPSByPTY\n"));
+	iConsole->Printf(_L("m. GetPSByTA\n"));
+	iConsole->Printf(_L("n. CancelGetPSByTA\n"));
+	iConsole->Printf(_L("o. GetProgrammeIdentification\n"));
+	iConsole->Printf(_L("p. GetProgrammeType\n"));
+	iConsole->Printf(_L("q. GetProgrammeService\n"));
+	iConsole->Printf(_L("r. GetRadioText\n"));
+	iConsole->Printf(_L("s. GetRadioTextPlus\n"));
+	iConsole->Printf(_L("t. GetClockTime\n"));
+	iConsole->Printf(_L("u. GetTrafficAnnouncementStatus\n"));
+	iConsole->Printf(_L("v. GetTrafficProgrammeStatus\n"));
+
+	iConsole->Printf(_L("---------------------\n"));
+	iConsole->Printf(_L("x. Exit\n"));
+	ReadConsoleL();
+	}
+
+*/
+/**
+* Outstanding request has been completed, start waiting for another request.
+**/
+void CTRadioUtilityConsole::ReadConsoleL()
+	{
+	iConsole->Read(iStatus);
+	SetActive();
+	}
+
+	
--- a/mmserv/tms/inc/tmscallclisrv.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/inc/tmscallclisrv.h	Mon Oct 04 00:51:56 2010 +0300
@@ -54,6 +54,7 @@
     TMS_ROUTING_PREVIOUSOUTPUT_GET,
     TMS_ROUTING_AVAILABLE_OUTPUT_GET,
     TMS_GET_ACTIVE_CALL_PARAMS,
+    TMS_TERM_CALL_SRV,
 
     //For TMS Format
     TMS_FORMAT_SETCODECMODE,
--- a/mmserv/tms/inc/tmscallserver.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/inc/tmscallserver.h	Mon Oct 04 00:51:56 2010 +0300
@@ -43,6 +43,7 @@
 
     void AddSession();
     void DropSession();
+    void TerminateServer();
 
     IMPORT_C static TInt StartThread(TAny* aParams);
 
--- a/mmserv/tms/inc/tmsclientserver.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/inc/tmsclientserver.h	Mon Oct 04 00:51:56 2010 +0300
@@ -27,7 +27,7 @@
 // Used for client-server communication
 enum TMSClientServerRequest
     {
-    ETMSCallSessionHandle,
+    ETMSCallSessionHandle = 0,
     ETMSGetSupportedDecodersCount,
     ETMSGetSupportedEncodersCount,
     ETMSGetSupportedDecoders,
@@ -63,7 +63,8 @@
     ETMSStopDTMF,
     ETMSContinueDTMF,
     ETMSStartInbandTone,
-    ETMSStopInbandTone
+    ETMSStopInbandTone,
+    ETMSTermSrv
     };
 
 // Ring tone open methods
--- a/mmserv/tms/inc/tmsproxy.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/inc/tmsproxy.h	Mon Oct 04 00:51:56 2010 +0300
@@ -114,6 +114,8 @@
     IMPORT_C gint RemoveMsgQueueNotifier(TMSMsgQueueNotifierType type,
             gpointer obsrvr);
 
+    IMPORT_C void TermSrv();
+
     // From MQueueHandlerObserver
     virtual void QueueEvent(gint aEventType, gint aError, void* event_data);
 
--- a/mmserv/tms/tmscallserver/inc/tmscalladpt.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmscalladpt.h	Mon Oct 04 00:51:56 2010 +0300
@@ -56,44 +56,6 @@
             const TMSStreamType strmType, const gint strmId) = 0;
     virtual gint DeleteStream(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId) = 0;
-    virtual gint DataXferBufferEmptied(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId) = 0;
-    virtual gint DataXferBufferFilled(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId,
-            const guint datasize) = 0;
-    virtual gint GetDataXferBufferHndl(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId,
-            const guint32 key, RChunk& chunk) = 0;
-
-    // From TMS effects
-    virtual gint GetMaxVolume(guint& volume) = 0;
-    virtual gint SetVolume(const guint volume) = 0;
-    virtual gint GetVolume(guint& volume) = 0;
-    virtual gint GetMaxGain(guint& gain) = 0;
-    virtual gint SetGain(const guint gain) = 0;
-    virtual gint GetGain(guint& gain) = 0;
-    virtual gint GetGlobalMaxVolume(guint& volume) = 0;
-    virtual gint SetGlobalVolume(const guint volume) = 0;
-    virtual gint GetGlobalVolume(guint& volume) = 0;
-    virtual gint GetGlobalMaxGain(guint& gain) = 0;
-    virtual gint SetGlobalGain(const guint gain) = 0;
-    virtual gint GetGlobalGain(guint& gain) = 0;
-
-    // From TMS formats
-    virtual gint GetCodecMode(const TMSFormatType fmttype,
-            const TMSStreamType strmtype, gint& mode) = 0;
-    virtual gint SetCodecMode(const TMSFormatType fmttype,
-            const TMSStreamType strmtype, const gint mode) = 0;
-    virtual gint GetSupportedBitRatesCount(guint& count) = 0;
-    virtual gint GetSupportedBitRates(CBufFlat*& brbuffer) = 0;
-    virtual gint GetBitRate(guint& bitrate) = 0;
-    virtual gint SetBitRate(const guint bitrate) = 0;
-    virtual gint GetVAD(const TMSFormatType fmttype, gboolean& vad) = 0;
-    virtual gint SetVAD(const TMSFormatType fmttype, const gboolean vad) = 0;
-    virtual gint GetCNG(const TMSFormatType fmttype, gboolean& cng) = 0;
-    virtual gint SetCNG(const TMSFormatType fmttype, const gboolean cng) = 0;
-    virtual gint GetPlc(const TMSFormatType fmttype, gboolean& plc) = 0;
-    virtual gint SetPlc(const TMSFormatType fmttype, const gboolean plc) = 0;
 
     // From TMS routing
     virtual gint SetOutput(const TMSAudioOutput output) = 0;
--- a/mmserv/tms/tmscallserver/inc/tmscallcsadpt.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmscallcsadpt.h	Mon Oct 04 00:51:56 2010 +0300
@@ -66,44 +66,14 @@
             const TMSStreamType strmType, const gint strmId);
     virtual gint DeleteStream(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId);
-    virtual gint DataXferBufferEmptied(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId);
-    virtual gint DataXferBufferFilled(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId,
-            const guint datasize);
-    virtual gint GetDataXferBufferHndl(const TMSCallType callType,
-            const TMSStreamType strmType, const gint strmId,
-            const guint32 key, RChunk& chunk);
 
     // From TMS effects
-    virtual gint GetMaxVolume(guint& volume);
-    virtual gint SetVolume(const guint volume);
-    virtual gint GetVolume(guint& volume);
-    virtual gint GetMaxGain(guint& gain);
-    virtual gint SetGain(const guint gain);
-    virtual gint GetGain(guint& gain);
-    virtual gint GetGlobalMaxVolume(guint& volume);
-    virtual gint SetGlobalVolume(const guint volume);
-    virtual gint GetGlobalVolume(guint& volume);
-    virtual gint GetGlobalMaxGain(guint& gain);
-    virtual gint SetGlobalGain(const guint gain);
-    virtual gint GetGlobalGain(guint& gain);
-
-    // From TMS formats
-    virtual gint GetCodecMode(const TMSFormatType fmttype,
-            const TMSStreamType strmtype, gint& mode);
-    virtual gint SetCodecMode(const TMSFormatType fmttype,
-            const TMSStreamType strmtype, const gint mode);
-    virtual gint GetSupportedBitRatesCount(guint& count);
-    virtual gint GetSupportedBitRates(CBufFlat*& brbuffer);
-    virtual gint GetBitRate(guint& bitrate);
-    virtual gint SetBitRate(const guint bitrate);
-    virtual gint GetVAD(const TMSFormatType fmttype, gboolean& vad);
-    virtual gint SetVAD(const TMSFormatType fmttype, const gboolean vad);
-    virtual gint GetCNG(const TMSFormatType fmttype, gboolean& cng);
-    virtual gint SetCNG(const TMSFormatType fmttype, const gboolean cng);
-    virtual gint GetPlc(const TMSFormatType fmttype, gboolean& plc);
-    virtual gint SetPlc(const TMSFormatType fmttype, const gboolean plc);
+    gint GetGlobalMaxVolume(guint& volume);
+    gint SetGlobalVolume(const guint volume);
+    gint GetGlobalVolume(guint& volume);
+    gint GetGlobalMaxGain(guint& gain);
+    gint SetGlobalGain(const guint gain);
+    gint GetGlobalGain(guint& gain);
 
     // From TMS audio routing
     virtual gint SetOutput(const TMSAudioOutput output);
@@ -128,7 +98,6 @@
     void OutputChanged(CTelephonyAudioRouting& aTelephonyAudioRouting);
     void SetOutputComplete(CTelephonyAudioRouting& aTelephonyAudioRouting,
             gint status);
-    void GetSupportedBitRatesL(CBufFlat*& brbuffer);
     void NotifyClient(const gint strmId, const gint command,
             const gint status = KErrNone, const gint64 int64 = TInt64(0));
 
--- a/mmserv/tms/tmscallserver/inc/tmscallipadpt.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmscallipadpt.h	Mon Oct 04 00:51:56 2010 +0300
@@ -61,61 +61,51 @@
             const TMSStreamType strmType, const gint strmId);
     virtual gint DeleteStream(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId);
-    virtual gint DataXferBufferEmptied(const TMSCallType callType,
+
+    // From TMS effects
+    gint GetMaxVolume(guint& volume);
+    gint SetVolume(const guint volume);
+    gint GetVolume(guint& volume);
+    gint GetMaxGain(guint& gain);
+    gint SetGain(const guint gain);
+    gint GetGain(guint& gain);
+
+    // From TMS audio routing
+     virtual gint SetOutput(const TMSAudioOutput output);
+     virtual gint GetOutput(TMSAudioOutput& output);
+     virtual gint GetPreviousOutput(TMSAudioOutput& output);
+     virtual gint GetAvailableOutputsL(gint& count, CBufFlat*& outputsbuf);
+
+    gint DataXferBufferEmptied(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId);
-    virtual gint DataXferBufferFilled(const TMSCallType callType,
+    gint DataXferBufferFilled(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId,
             const guint datasize);
-    virtual gint GetDataXferBufferHndl(const TMSCallType callType,
+    gint GetDataXferBufferHndl(const TMSCallType callType,
             const TMSStreamType strmType, const gint strmId,
             const guint32 key, RChunk& chunk);
 
-    // From TMS effects
-    virtual gint GetMaxVolume(guint& volume);
-    virtual gint SetVolume(const guint volume);
-    virtual gint GetVolume(guint& volume);
-    virtual gint GetMaxGain(guint& gain);
-    virtual gint SetGain(const guint gain);
-    virtual gint GetGain(guint& gain);
-    virtual gint GetGlobalMaxVolume(guint& volume);
-    virtual gint SetGlobalVolume(const guint volume);
-    virtual gint GetGlobalVolume(guint& volume);
-    virtual gint GetGlobalMaxGain(guint& gain);
-    virtual gint SetGlobalGain(const guint gain);
-    virtual gint GetGlobalGain(guint& gain);
-
     // From TMS formats
-    virtual gint GetCodecMode(const TMSFormatType fmttype,
+    gint GetCodecMode(const TMSFormatType fmttype,
             const TMSStreamType strmtype, gint& mode);
-    virtual gint SetCodecMode(const TMSFormatType fmttype,
+    gint SetCodecMode(const TMSFormatType fmttype,
             const TMSStreamType strmtype, const gint mode);
-    virtual gint GetSupportedBitRatesCount(guint& count);
-    virtual gint GetSupportedBitRates(CBufFlat*& brbuffer);
-    virtual gint GetBitRate(guint& bitrate);
-    virtual gint SetBitRate(const guint bitrate);
-    virtual gint GetVAD(const TMSFormatType fmttype, gboolean& vad);
-    virtual gint SetVAD(const TMSFormatType fmttype, const gboolean vad);
-    virtual gint GetCNG(const TMSFormatType fmttype, gboolean& cng);
-    virtual gint SetCNG(const TMSFormatType fmttype, const gboolean cng);
-    virtual gint GetPlc(const TMSFormatType fmttype, gboolean& plc);
-    virtual gint SetPlc(const TMSFormatType fmttype, const gboolean plc);
-
-    // From TMS audio routing
-    virtual gint SetOutput(const TMSAudioOutput output);
-    virtual gint GetOutput(TMSAudioOutput& output);
-    virtual gint GetPreviousOutput(TMSAudioOutput& output);
-    virtual gint GetAvailableOutputsL(gint& count, CBufFlat*& outputsbuf);
+    gint GetSupportedBitRatesCount(guint& count);
+    gint GetSupportedBitRates(CBufFlat*& brbuffer);
+    gint GetBitRate(guint& bitrate);
+    gint SetBitRate(const guint bitrate);
+    gint GetVAD(const TMSFormatType fmttype, gboolean& vad);
+    gint SetVAD(const TMSFormatType fmttype, const gboolean vad);
+    gint GetCNG(const TMSFormatType fmttype, gboolean& cng);
+    gint SetCNG(const TMSFormatType fmttype, const gboolean cng);
+    gint GetPlc(const TMSFormatType fmttype, gboolean& plc);
+    gint SetPlc(const TMSFormatType fmttype, const gboolean plc);
 
     // From TMS codec formats
     gint SetIlbcCodecMode(const gint mode, const TMSStreamType strmtype);
     gint GetIlbcCodecMode(gint& mode, const TMSStreamType strmtype);
     gint SetG711CodecMode(const gint mode, const TMSStreamType strmtype);
     gint GetG711CodecMode(gint& mode, const TMSStreamType strmtype);
-    gint FrameModeRqrdForEC(gboolean& frmodereq);
-    gint SetFrameMode(const gboolean frmode);
-    gint GetFrameMode(gboolean& frmode);
-    gint ConcealErrorForNextBuffer();
-    gint BadLsfNextBuffer();
 
     void SetFormat(const gint strmId, const guint32 aFormat);
 
--- a/mmserv/tms/tmscallserver/inc/tmscallsession.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmscallsession.h	Mon Oct 04 00:51:56 2010 +0300
@@ -94,6 +94,7 @@
     TMSCallAdpt* iCallAdpt;
     gint iGlobalVol;
     gint iGlobalGain;
+    TMSCallType iActiveCallType;
     };
 
 } //namespace TMS
--- a/mmserv/tms/tmscallserver/inc/tmscsuplink.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmscsuplink.h	Mon Oct 04 00:51:56 2010 +0300
@@ -37,13 +37,6 @@
     virtual ~TMSCSUplink();
 
     /**
-     * Determines mic mute state.
-     *
-     * @return ETrue - mic is muted, EFalse - mic is not muted.
-     */
-    gboolean IsMuted();
-
-    /**
      * Set mic gain.
      */
     void SetGain(gint gain);
--- a/mmserv/tms/tmscallserver/inc/tmsipcallstream.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/inc/tmsipcallstream.h	Mon Oct 04 00:51:56 2010 +0300
@@ -179,15 +179,10 @@
     gint GetIlbcCodecMode(gint& mode);
     gint SetG711CodecMode(const gint mode);
     gint GetG711CodecMode(gint& mode);
-    gint FrameModeRqrdForEC(gboolean& frmodereq);
-    gint SetFrameMode(gboolean frmode);
-    gint GetFrameMode(gboolean& frmode);
-    gint ConcealErrorForNextBuffer();
     gint SetCng(const TMSFormatType fmttype, const gboolean cng);
     gint GetCng(const TMSFormatType fmttype, gboolean& cng);
     gint SetPlc(const TMSFormatType fmttype, const gboolean plc);
     gint GetPlc(const TMSFormatType fmttype, gboolean& plc);
-    gint BadLsfNextBuffer();
 
     void SetAudioDeviceL(TMSAudioOutput output);
     void GetAudioDeviceL(TMSAudioOutput& output);
--- a/mmserv/tms/tmscallserver/src/tmscallcsadpt.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscallcsadpt.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -457,162 +457,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSCallCSAdpt::DataXferBufferEmptied
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::DataXferBufferEmptied(const TMSCallType /*callType*/,
-        const TMSStreamType /*strmType*/, const gint /*strmId*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::DataXferBufferFilled
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::DataXferBufferFilled(const TMSCallType /*callType*/,
-        const TMSStreamType /*strmType*/, const gint /*strmId*/,
-        const guint /*datasize*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetDataXferBufferHndl
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetDataXferBufferHndl(const TMSCallType /*callType*/,
-        const TMSStreamType /*strmType*/, const gint /*strmId*/,
-        const guint32 /*key*/, RChunk& /*chunk*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetMaxVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetMaxVolume(guint& volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSDownlink && iDnlState != EIdle)
-        {
-        volume = iCSDownlink->MaxVolume();
-        status = TMS_RESULT_SUCCESS;
-        TRACE_PRN_N1(_L("TMS->TMSCallCSAdpt: GetMaxVolume [%d]"), volume);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetVolume(const guint volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSDownlink && iDnlState != EIdle)
-        {
-        iCSDownlink->SetVolume(volume);
-        status = TMS_RESULT_SUCCESS;
-        NotifyClient(iDnlinkStreamId, ECmdSetVolume, status);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetVolume(guint& volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSDownlink && iDnlState != EIdle)
-        {
-        volume = iCSDownlink->Volume();
-        status = TMS_RESULT_SUCCESS;
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetMaxGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetMaxGain(guint& gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSUplink && iUplState != EIdle)
-        {
-        gain = iCSUplink->MaxGain();
-        status = TMS_RESULT_SUCCESS;
-        TRACE_PRN_N1(_L("TMS->TMSCallCSAdpt::GetMaxGain [%d]"), gain);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetGain(const guint gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSUplink && iUplState != EIdle)
-        {
-        iCSUplink->SetGain(gain);
-        status = TMS_RESULT_SUCCESS;
-        NotifyClient(iUplinkStreamId, ECmdSetGain, status);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetGain(guint& gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iCSUplink && iUplState != EIdle)
-        {
-        gain = iCSUplink->Gain();
-        status = TMS_RESULT_SUCCESS;
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSCallCSAdpt::GetGlobalMaxVolume
 //
 // -----------------------------------------------------------------------------
@@ -724,166 +568,6 @@
     return status;
     }
 
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetCodecMode
-// No codec format in CS call
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetCodecMode(const TMSFormatType /*fmttype*/,
-        const TMSStreamType /*strmtype*/, gint& /*mode*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetCodecMode
-// No codec format in CS call
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetCodecMode(const TMSFormatType /*fmttype*/,
-        const TMSStreamType /*strmtype*/, const gint /*mode*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetSupportedBitRatesCount
-// No codec format in CS call
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetSupportedBitRatesCount(guint& /*count*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetSupportedBitRates
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetSupportedBitRates(CBufFlat*& /*brbuffer*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetBitRate
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetBitRate(guint& /*bitrate*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetBitRate
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetBitRate(const guint /*bitrate*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetVAD
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetVAD(const TMSFormatType /*fmttype*/, gboolean& /*vad*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetVAD
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetVAD(const TMSFormatType /*fmttype*/,
-        const gboolean /*vad*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetCNG
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetCNG(const TMSFormatType /*fmttype*/, gboolean& /*cng*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetCNG
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetCNG(const TMSFormatType /*fmttype*/,
-        const gboolean /*cng*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::GetPlc
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::GetPlc(const TMSFormatType /*fmttype*/, gboolean& /*plc*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallCSAdpt::SetPlc
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallCSAdpt::SetPlc(const TMSFormatType /*fmttype*/,
-        const gboolean /*plc*/)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_FEATURE_NOT_SUPPORTED);
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
 
 // -----------------------------------------------------------------------------
 // TMSCallCSAdpt::SetOutput
--- a/mmserv/tms/tmscallserver/src/tmscallipadpt.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscallipadpt.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -625,114 +625,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSCallIPAdpt::GetGlobalMaxVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::GetGlobalMaxVolume(guint& volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState != EIdle)
-        {
-        status = iIPDownlink->GetMaxVolume(volume);
-        iMaxVolume = volume;
-        TRACE_PRN_N1(_L("TMS->TMSCallIPAdpt::GetGlobalMaxVolume [%d]"), volume);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::SetGlobalVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::SetGlobalVolume(const guint volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    //iGlobalVol = volume;
-    if (iIPDownlink && iDnlState != EIdle)
-        {
-        status = iIPDownlink->SetVolume(volume);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::GetGlobalVolume
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::GetGlobalVolume(guint& volume)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState != EIdle)
-        {
-        status = iIPDownlink->GetVolume(volume);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::GetGlobalMaxGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::GetGlobalMaxGain(guint& gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPUplink && iUplState != EIdle)
-        {
-        status = iIPUplink->GetMaxGain(gain);
-        iMaxGain = gain;
-        TRACE_PRN_N1(_L("TMS->TMSCallIPAdpt::GetGlobalMaxGain [%d]"), gain);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::SetGlobalGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::SetGlobalGain(const guint gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    //iGlobalGain = gain;
-    if (iIPUplink && iUplState != EIdle)
-        {
-        status = iIPUplink->SetGain(gain);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::GetGlobalGain
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::GetGlobalGain(guint& gain)
-    {
-    TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPUplink && iUplState != EIdle)
-        {
-        status = iIPUplink->GetGain(gain);
-        }
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSCallIPAdpt::GetCodecMode
 //
 // -----------------------------------------------------------------------------
@@ -990,12 +882,6 @@
     // TODO: Also, TMS will monitor for emergency call and if detected it
     //       will deny access to audio resources.
 
-    /* Clarify with adaptation team which prio/pref values should be used.
-     * 1) KAudioPrefUnknownVoipAudioDownlink      -3rd party VoIP?
-     *    KAudioPriorityUnknownVoipAudioDownlink  -3rd party VoIP?
-     * 2) KAudioPrefVoipAudioDownlink             -NOK native VoIP?
-     *    KAudioPriorityVoipAudioDownlink         -NOK native VoIP?
-     */
     iPriority.iPref = KAudioPrefVoipAudioDownlink;
     iPriority.iPriority = KAudioPriorityVoipAudioDownlink;
 
@@ -1034,14 +920,8 @@
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_SUCCESS);
 
-    // Clients must have MultimediaDD capability to use this priority/pref
-
-    /* Clarify with adaptation team which prio/pref values should be used.
-     * 1) KAudioPrefUnknownVoipAudioUplink      -3rd party VoIP?
-     *    KAudioPriorityUnknownVoipAudioUplink  -3rd party VoIP?
-     * 2) KAudioPrefVoipAudioUplink             -NOK native VoIP?
-     *    KAudioPriorityVoipAudioUplink         -NOK native VoIP?
-     */
+    // Clients must have MultimediaDD capability to use this priority/pref.
+    // KAudioPrefVoipAudioUplinkNonSignal must be used to allow DTMF mixing.
     iPriority.iPref = KAudioPrefVoipAudioUplinkNonSignal;
     iPriority.iPriority = KAudioPriorityVoipAudioUplink;
 
@@ -1258,80 +1138,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSCallIPAdpt::FrameModeRequiredForEC
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::FrameModeRqrdForEC(gboolean& frmodereq)
-    {
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState == EInitialized)
-        {
-        status = iIPDownlink->FrameModeRqrdForEC(frmodereq);
-        }
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::SetFrameMode
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::SetFrameMode(const gboolean frmode)
-    {
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState == EInitialized)
-        {
-        status = iIPDownlink->SetFrameMode(frmode);
-        }
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::GetFrameMode
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::GetFrameMode(gboolean& frmode)
-    {
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState != EIdle)
-        {
-        status = iIPDownlink->GetFrameMode(frmode);
-        }
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::ConcealErrorForNextBuffer
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::ConcealErrorForNextBuffer()
-    {
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState == EActivated)
-        {
-        status = iIPDownlink->ConcealErrorForNextBuffer();
-        }
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSCallIPAdpt::BadLsfNextBuffer
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSCallIPAdpt::BadLsfNextBuffer()
-    {
-    gint status(TMS_RESULT_INVALID_STATE);
-    if (iIPDownlink && iDnlState == EActivated)
-        {
-        status = iIPDownlink->BadLsfNextBuffer();
-        }
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSCallIPAdpt::SetOutput
 //
 // -----------------------------------------------------------------------------
@@ -1380,11 +1186,16 @@
 //
 // -----------------------------------------------------------------------------
 //
-gint TMSCallIPAdpt::GetAvailableOutputsL(gint& /*count*/,
-        CBufFlat*& /*outputsbuf*/)
+gint TMSCallIPAdpt::GetAvailableOutputsL(gint& count, CBufFlat*& outputsbuf)
     {
-    //TODO: return public & private
-    return TMS_RESULT_FEATURE_NOT_SUPPORTED;
+    RBufWriteStream stream;
+    stream.Open(*outputsbuf);
+    CleanupClosePushL(stream);
+    stream.WriteUint32L(TMS_AUDIO_OUTPUT_PUBLIC);
+    stream.WriteUint32L(TMS_AUDIO_OUTPUT_PRIVATE);
+    CleanupStack::PopAndDestroy(&stream);
+    count = 2;
+    return TMS_RESULT_SUCCESS;
     }
 
 // -----------------------------------------------------------------------------
--- a/mmserv/tms/tmscallserver/src/tmscallserver.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscallserver.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -138,4 +138,25 @@
     return session;
     }
 
+// -----------------------------------------------------------------------------
+// TMSCallServer::TerminateServer
+//
+// -----------------------------------------------------------------------------
+//
+void TMSCallServer::TerminateServer()
+    {
+    TMSCallSession *session;
+    iSessionIter.SetToFirst();
+
+    for (;;)
+        {
+        session = static_cast<TMSCallSession*>(iSessionIter++);
+        if (!session)
+            {
+            break;
+            }
+        delete session;
+        }
+    }
+
 // End of file
--- a/mmserv/tms/tmscallserver/src/tmscallsession.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscallsession.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -21,6 +21,8 @@
 #include "tmscallserver.h"
 #include "tmscallclisrv.h"
 #include "tmscallsession.h"
+#include "tmscallipadpt.h"
+#include "tmscallcsadpt.h"
 
 using namespace TMS;
 
@@ -103,6 +105,12 @@
 void TMSCallSession::HandleMessageL(const RMessage2& aMessage)
     {
     TRACE_PRN_FN_ENT;
+
+     if(iCallAdpt)
+         {
+         iCallAdpt->GetCallType(iActiveCallType);
+         }
+
     switch (aMessage.Function())
         {
         case TMS_CREATE_CALL:
@@ -228,6 +236,10 @@
         case TMS_GET_ACTIVE_CALL_PARAMS:
             HandleGetActiveCallL(aMessage);
             break;
+        case TMS_TERM_CALL_SRV:
+            aMessage.Complete(TMS_RESULT_SUCCESS);
+            iTMSCallServer.TerminateServer();
+            break;
         default:
             User::Leave(TMS_RESULT_ILLEGAL_OPERATION);
             break;
@@ -294,22 +306,28 @@
         TMSCliSrvStreamInitDataStructBufPckg pckg;
         aMessage.ReadL(0, pckg);
         status = iCallAdpt->InitStream(pckg().CallType, pckg().StreamType,
-                pckg().StreamId, pckg().FormatType, pckg().RetryTime, aMessage);
+                pckg().StreamId, pckg().FormatType, pckg().RetryTime,
+                aMessage);
 
-        switch (pckg().StreamType)
+        if (iActiveCallType == TMS_CALL_CS)
             {
-            case TMS_STREAM_DOWNLINK:
+            switch (pckg().StreamType)
                 {
-                iCallAdpt->SetGlobalVolume(iGlobalVol);
+                case TMS_STREAM_DOWNLINK:
+                    {
+                    static_cast<TMSCallCSAdpt*> (iCallAdpt)->SetGlobalVolume(
+                            iGlobalVol);
+                    }
+                    break;
+                case TMS_STREAM_UPLINK:
+                    {
+                    static_cast<TMSCallCSAdpt*> (iCallAdpt)->SetGlobalGain(
+                            iGlobalGain);
+                    }
+                    break;
+                default:
+                    break;
                 }
-                break;
-            case TMS_STREAM_UPLINK:
-                {
-                iCallAdpt->SetGlobalGain(iGlobalGain);
-                }
-                break;
-            default:
-                break;
             }
         }
     aMessage.Complete(status);
@@ -440,12 +458,12 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         TMSCliSrvDataXferDataStructBufPckg pckg;
         aMessage.ReadL(0, pckg);
-        status = iCallAdpt->DataXferBufferEmptied(pckg().CallType,
-                pckg().StreamType, pckg().StreamId);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->DataXferBufferEmptied(
+                pckg().CallType, pckg().StreamType, pckg().StreamId);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -460,12 +478,13 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         TMSCliSrvDataXferDataStructBufPckg pckg;
         aMessage.ReadL(0, pckg);
-        status = iCallAdpt->DataXferBufferFilled(pckg().CallType,
-                pckg().StreamType, pckg().StreamId, pckg().DataSize);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->DataXferBufferFilled(
+                pckg().CallType, pckg().StreamType, pckg().StreamId,
+                pckg().DataSize);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -483,12 +502,13 @@
     gint status(TMS_RESULT_DOES_NOT_EXIST);
     RChunk chunk;
 
-    if (iCallAdpt)
+    if (iCallAdpt &&(iActiveCallType == TMS_CALL_IP))
         {
         TMSCliSrvDataXferChunkHndlDataStructBufPckg pckg;
         aMessage.ReadL(0, pckg);
-        status = iCallAdpt->GetDataXferBufferHndl(pckg().CallType,
-                pckg().StreamType, pckg().StreamId, pckg().Key, chunk);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetDataXferBufferHndl(
+                pckg().CallType, pckg().StreamType, pckg().StreamId,
+                pckg().Key, chunk);
         }
 
     if (status == TMS_RESULT_SUCCESS && chunk.Handle() > 0)
@@ -513,10 +533,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint vol;
-        status = iCallAdpt->GetMaxVolume(vol);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->GetMaxVolume(vol);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(vol);
@@ -536,11 +556,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint vol;
         vol = aMessage.Int0();
-        status = iCallAdpt->SetVolume(vol);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->SetVolume(vol);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -555,10 +575,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint vol;
-        status = iCallAdpt->GetVolume(vol);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->GetVolume(vol);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(vol);
@@ -578,10 +598,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint gain;
-        status = iCallAdpt->GetMaxGain(gain);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->GetMaxGain(gain);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(gain);
@@ -601,11 +621,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint gain;
         gain = aMessage.Int0();
-        status = iCallAdpt->SetGain(gain);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->SetGain(gain);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -620,10 +640,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint gain;
-        status = iCallAdpt->GetGain(gain);
+        status = static_cast<TMSCallIPAdpt*> (iCallAdpt)->GetGain(gain);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(gain);
@@ -644,10 +664,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
         guint vol(0);
-        status = iCallAdpt->GetGlobalMaxVolume(vol);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->GetGlobalMaxVolume(
+                vol);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(vol);
@@ -666,11 +687,12 @@
 void TMSCallSession::HandleGlobalEffectVolumeSetVolL(const RMessage2& aMessage)
     {
     TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_SUCCESS);
+    gint status(TMS_RESULT_DOES_NOT_EXIST);
     iGlobalVol = aMessage.Int0();
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
-        status = iCallAdpt->SetGlobalVolume(iGlobalVol);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->SetGlobalVolume(
+                iGlobalVol);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -685,10 +707,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
         guint vol(0);
-        status = iCallAdpt->GetGlobalVolume(vol);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->GetGlobalVolume(vol);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(vol);
@@ -709,10 +731,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
         guint gain;
-        status = iCallAdpt->GetGlobalMaxGain(gain);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->GetGlobalMaxGain(
+                gain);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(gain);
@@ -732,11 +755,12 @@
         const RMessage2& aMessage)
     {
     TRACE_PRN_FN_ENT;
-    gint status(TMS_RESULT_SUCCESS);
+    gint status(TMS_RESULT_DOES_NOT_EXIST);
     iGlobalGain = aMessage.Int0();
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
-        status = iCallAdpt->SetGlobalGain(iGlobalGain);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->SetGlobalGain(
+                iGlobalGain);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -752,10 +776,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_CS))
         {
         guint gain;
-        status = iCallAdpt->GetGlobalGain(gain);
+        status = static_cast<TMSCallCSAdpt*>(iCallAdpt)->GetGlobalGain(gain);
         if (status == TMS_RESULT_SUCCESS)
             {
             TPckgBuf<guint> pckg(gain);
@@ -776,14 +800,15 @@
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
 
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gint mode;
         TMSFormatType fmttype;
         TMSStreamType strmtype;
         fmttype = aMessage.Int0();
         strmtype = aMessage.Int1();
-        status = iCallAdpt->GetCodecMode(fmttype, strmtype, mode);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetCodecMode(fmttype,
+                strmtype, mode);
         TPckgBuf<gint> pckg(mode);
         aMessage.WriteL(2, pckg);
         }
@@ -800,7 +825,7 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gint mode;
         TMSFormatType fmttype;
@@ -808,7 +833,8 @@
         fmttype = aMessage.Int0();
         strmtype = aMessage.Int1();
         mode = aMessage.Int2();
-        status = iCallAdpt->SetCodecMode(fmttype, strmtype, mode);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->SetCodecMode(fmttype,
+                strmtype, mode);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -824,10 +850,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint count;
-        status = iCallAdpt->GetSupportedBitRatesCount(count);
+        status = static_cast<TMSCallIPAdpt*>
+                (iCallAdpt)->GetSupportedBitRatesCount(count);
         TPckgBuf<guint> pckg(count);
         aMessage.WriteL(0, pckg);
         }
@@ -845,11 +872,12 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         CBufFlat* brbuf = CBufFlat::NewL(KArrayExpandSize);
         CleanupStack::PushL(brbuf);
-        status = iCallAdpt->GetSupportedBitRates(brbuf);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetSupportedBitRates(
+                brbuf);
         aMessage.WriteL(0, brbuf->Ptr(0));
         CleanupStack::PopAndDestroy(brbuf);
         }
@@ -866,10 +894,10 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint bitrate;
-        status = iCallAdpt->GetBitRate(bitrate);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetBitRate(bitrate);
         TPckgBuf<guint> pckg(bitrate);
         aMessage.WriteL(0, pckg);
         }
@@ -886,11 +914,11 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         guint bitrate;
         bitrate = aMessage.Int0();
-        status = iCallAdpt->SetBitRate(bitrate);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->SetBitRate(bitrate);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -905,12 +933,12 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean vad;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
-        status = iCallAdpt->GetVAD(fmttype, vad);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetVAD(fmttype, vad);
         TPckgBuf<gboolean> pckg(vad);
         aMessage.WriteL(1, pckg);
         }
@@ -927,13 +955,13 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean vad;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
         vad = (gboolean) aMessage.Int1();
-        status = iCallAdpt->SetVAD(fmttype, vad);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->SetVAD(fmttype, vad);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -948,12 +976,12 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean cng;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
-        status = iCallAdpt->GetCNG(fmttype, cng);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetCNG(fmttype, cng);
         TPckgBuf<gboolean> pckg(cng);
         aMessage.WriteL(1, pckg);
         }
@@ -970,13 +998,13 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean cng;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
         cng = (gboolean) aMessage.Int1();
-        status = iCallAdpt->SetCNG(fmttype, cng);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->SetCNG(fmttype, cng);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
@@ -991,12 +1019,12 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean plc;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
-        status = iCallAdpt->GetPlc(fmttype, plc);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->GetPlc(fmttype, plc);
         TPckgBuf<gboolean> pckg(plc);
         aMessage.WriteL(1, pckg);
         }
@@ -1013,13 +1041,13 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_DOES_NOT_EXIST);
-    if (iCallAdpt)
+    if (iCallAdpt && (iActiveCallType == TMS_CALL_IP))
         {
         gboolean plc;
         TMSFormatType fmttype;
         fmttype = (TMSFormatType) aMessage.Int0();
         plc = (gboolean) aMessage.Int1();
-        status = iCallAdpt->SetPlc(fmttype, plc);
+        status = static_cast<TMSCallIPAdpt*>(iCallAdpt)->SetPlc(fmttype, plc);
         }
     aMessage.Complete(status);
     TRACE_PRN_FN_EXT;
--- a/mmserv/tms/tmscallserver/src/tmscsdownlink.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscsdownlink.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -144,6 +144,7 @@
     if (iActivationOngoing && (aError == KErrAccessDenied ||
             aError == KErrInUse))
         {
+#ifndef __WINSCW__
         if (iStartRetryTime != 0)
             {
             StartTimer();
@@ -154,6 +155,9 @@
             iActivationOngoing = EFalse;
             iObserver.DownlinkActivationCompleted(aError);
             }
+#else  //__WINSCW__
+        iObserver.DownlinkActivationCompleted(TMS_RESULT_SUCCESS);
+#endif //__WINSCW__
         }
     }
 
--- a/mmserv/tms/tmscallserver/src/tmscsuplink.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmscsuplink.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -63,21 +63,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// Gives mic mute state
-// -----------------------------------------------------------------------------
-//
-gboolean TMSCSUplink::IsMuted()
-    {
-    gint gain(0);
-
-    if (iDevSound)
-        {
-        gain = iDevSound->Gain();
-        }
-    return ((!gain)? TRUE : FALSE);
-    }
-
-// -----------------------------------------------------------------------------
 // Sets mic gain
 // -----------------------------------------------------------------------------
 //
@@ -148,6 +133,7 @@
     if (iActivationOngoing && (aError == KErrAccessDenied ||
             aError == KErrInUse))
         {
+#ifndef __WINSCW__
         if (iStartRetryTime != 0)
             {
             StartTimer();
@@ -158,6 +144,9 @@
             iActivationOngoing = EFalse;
             iObserver.UplinkActivationCompleted(aError);
             }
+#else  //__WINSCW__
+        iObserver.UplinkActivationCompleted(TMS_RESULT_SUCCESS);
+#endif //__WINSCW__
         }
     }
 
--- a/mmserv/tms/tmscallserver/src/tmsipcalldownlink.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmsipcalldownlink.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -16,7 +16,7 @@
  */
 
 #include <audiopreference.h>
-#include <audiooutput.h>
+#include <AudioOutput.h>
 #include <mmcccodecinformation.h>
 #include <gstappsrc.h>
 #include "tmsutility.h"
--- a/mmserv/tms/tmscallserver/src/tmsipcalldownlinkds.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmsipcalldownlinkds.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -275,6 +275,11 @@
         iErrConcealmentIntfc = CErrorConcealmentIntfc::NewL(*iDevSound);
         }
 
+    if (!iAudioOutput)
+        {
+        iAudioOutput = CAudioOutput::NewL(*iDevSound);
+        }
+
     TRACE_PRN_FN_EXT;
     }
 
@@ -449,88 +454,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSIPDownlink::FrameModeRqrdForEC
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSIPDownlink::FrameModeRqrdForEC(gboolean& frmodereq)
-    {
-    gint err = TMS_RESULT_DOES_NOT_EXIST;
-
-    if (iStatus == EReady)
-        {
-        if (iErrConcealmentIntfc)
-            {
-            err = iErrConcealmentIntfc->FrameModeRqrdForEC(frmodereq);
-            TRACE_PRN_N1(_L("TMS->DNL: FrameModeRqrdForEC [%d]"), frmodereq);
-            }
-        }
-    TRACE_PRN_IF_ERR(err);
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSIPDownlink::SetFrameMode
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSIPDownlink::SetFrameMode(const gboolean frmode)
-    {
-    gint err = TMS_RESULT_DOES_NOT_EXIST;
-
-    if (iStatus == EReady)
-        {
-        iFrameMode = frmode;
-
-        if (iErrConcealmentIntfc)
-            {
-            err = iErrConcealmentIntfc->SetFrameMode(frmode);
-            TRACE_PRN_N1(_L("TMS->DNL: SetFrameMode [%d]"), frmode);
-            }
-        }
-    TRACE_PRN_IF_ERR(err);
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSIPDownlink::GetFrameMode
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSIPDownlink::GetFrameMode(gboolean& frmode)
-    {
-    gint err = TMS_RESULT_DOES_NOT_EXIST;
-
-    if (iErrConcealmentIntfc)
-        {
-        // not available through CIs -> return cached value
-        frmode = iFrameMode;
-        TRACE_PRN_N1(_L("TMS->DNL: GetFrameMode [%d]"), frmode);
-        err = TMS_RESULT_SUCCESS;
-        }
-    TRACE_PRN_IF_ERR(err);
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
-// TMSIPDownlink::ConcealErrorForNextBuffer
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSIPDownlink::ConcealErrorForNextBuffer()
-    {
-    gint err = TMS_RESULT_DOES_NOT_EXIST;
-
-    if (iErrConcealmentIntfc)
-        {
-        err = iErrConcealmentIntfc->ConcealErrorForNextBuffer();
-        TRACE_PRN_N(_L("TMS->DNL: ConcealErrorForNextBuffer"));
-        }
-    TRACE_PRN_IF_ERR(err);
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSIPDownlink::SetCng
 //
 // -----------------------------------------------------------------------------
@@ -625,27 +548,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSIPDownlink::BadLsfNextBuffer
-//
-// -----------------------------------------------------------------------------
-//
-gint TMSIPDownlink::BadLsfNextBuffer()
-    {
-    gint err = TMS_RESULT_DOES_NOT_EXIST;
-
-    if (iStatus == EStreaming)
-        {
-        if (iCodecID == KMccFourCCIdG729 && iG729DecoderIntfc)
-            {
-            err = iG729DecoderIntfc->BadLsfNextBuffer();
-            TRACE_PRN_N(_L("TMS->DNL: BadLsfNextBuffer"));
-            }
-        }
-    TRACE_PRN_IF_ERR(err);
-    return err;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSIPDownlink::SetAudioDeviceL
 //
 // -----------------------------------------------------------------------------
@@ -653,11 +555,6 @@
     {
     TRACE_PRN_FN_ENT;
 
-    if (!iAudioOutput)
-        {
-        iAudioOutput = CAudioOutput::NewL(*iDevSound);
-        }
-
     if (iAudioOutput)
         {
         // ENoPreference=0, EAll=1, ENoOutput=2, EPrivate=3, EPublic=4
@@ -694,15 +591,11 @@
     {
     TRACE_PRN_FN_ENT;
 
-    if (!iAudioOutput)
-        {
-        iAudioOutput = CAudioOutput::NewL(*iDevSound);
-        }
-
     if (iAudioOutput)
         {
         CAudioOutput::TAudioOutputPreference outputDev =
                 iAudioOutput->AudioOutput();
+        TRACE_PRN_N1(_L("TMS->DNL: GetAudioDeviceL [%d]"), outputDev);
 
         switch (outputDev)
             {
@@ -772,7 +665,16 @@
 void TMSIPDownlink::PlayError(TInt aError)
     {
     iStatus = EReady;
+
+#ifndef __WINSCW__
     iObserver.DownlinkStarted(aError);
+#else  //__WINSCW__
+    if (aError == KErrAccessDenied || aError == KErrInUse)
+        {
+        iObserver.DownlinkStarted(TMS_RESULT_SUCCESS);
+        }
+#endif //__WINSCW__
+
     TRACE_PRN_IF_ERR(aError);
     }
 
--- a/mmserv/tms/tmscallserver/src/tmsipcalluplinkds.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmscallserver/src/tmsipcalluplinkds.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -647,7 +647,16 @@
 void TMSIPUplink::RecordError(TInt aError)
     {
     iStatus = EReady;
+
+#ifndef __WINSCW__
     iObserver.UplinkStarted(aError);
+#else  //__WINSCW__
+    if (aError == KErrAccessDenied || aError == KErrInUse)
+        {
+        iObserver.UplinkStarted(TMS_RESULT_SUCCESS);
+        }
+#endif //__WINSCW__
+
     TRACE_PRN_IF_ERR(aError);
     }
 
--- a/mmserv/tms/tmsfactory/inc/tmsfactoryimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsfactory/inc/tmsfactoryimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -21,6 +21,7 @@
 #include <e32cmn.h>
 #include <w32std.h>
 #include <tms.h>
+#include <tmsver.h>
 
 namespace TMS {
 
@@ -39,7 +40,7 @@
 class TMSFactoryImpl
     {
 public:
-    TMSFactoryImpl();
+    TMSFactoryImpl(TMSVer& ver);
     virtual ~TMSFactoryImpl();
 
     gint CreateCall(TMSCallType ctype, TMSCall*& tmscall, guint ctxid);
--- a/mmserv/tms/tmsfactory/src/tmsfactory.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsfactory/src/tmsfactory.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -20,9 +20,9 @@
 
 using namespace TMS;
 
-TMSFactory::TMSFactory()
+TMSFactory::TMSFactory(TMSVer& ver)
     {
-    impl = new TMSFactoryImpl();
+    impl = new TMSFactoryImpl(ver);
     }
 
 EXPORT_C TMSFactory::~TMSFactory()
@@ -31,9 +31,9 @@
     }
 
 EXPORT_C gint TMSFactory::CreateFactory(TMSFactory*& tmsfactory,
-        TMSVer& /*ver*/)
+        TMSVer& ver)
     {
-    TMSFactory* self = new TMSFactory();
+    TMSFactory* self = new TMSFactory(ver);
     tmsfactory = self;
     return TMS_RESULT_SUCCESS;
     }
--- a/mmserv/tms/tmsfactory/src/tmsfactoryimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsfactory/src/tmsfactoryimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -31,7 +31,7 @@
 
 using namespace TMS;
 
-TMSFactoryImpl::TMSFactoryImpl()
+TMSFactoryImpl::TMSFactoryImpl(TMSVer& /*ver*/)
     {
     iFormats.Reset();
     }
--- a/mmserv/tms/tmsimpl/bwins/tmsimpl.def	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/bwins/tmsimpl.def	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,23 @@
 EXPORTS
 	?Create@TMSEffectImpl@TMS@@SAHHAAPAVTMSEffect@2@@Z @ 1 NONAME ; int TMS::TMSEffectImpl::Create(int, class TMS::TMSEffect * &)
-	?Create@TMSSourceImpl@TMS@@SAHHAAPAVTMSSource@2@@Z @ 2 NONAME ; int TMS::TMSSourceImpl::Create(int, class TMS::TMSSource * &)
-	?Delete@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@@Z @ 3 NONAME ; int TMS::TMSRingToneImpl::Delete(class TMS::TMSRingTone * &)
-	?Create@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@@Z @ 4 NONAME ; int TMS::TMSRingToneImpl::Create(class TMS::TMSRingTone * &)
-	?Delete@TMSFormatImpl@TMS@@SAHAAPAVTMSFormat@2@@Z @ 5 NONAME ; int TMS::TMSFormatImpl::Delete(class TMS::TMSFormat * &)
-	?Delete@TMSCallImpl@TMS@@SAHAAPAVTMSCall@2@@Z @ 6 NONAME ; int TMS::TMSCallImpl::Delete(class TMS::TMSCall * &)
-	?Delete@TMSSinkImpl@TMS@@SAHAAPAVTMSSink@2@@Z @ 7 NONAME ; int TMS::TMSSinkImpl::Delete(class TMS::TMSSink * &)
-	?Delete@TMSBufferImpl@TMS@@SAHAAPAVTMSBuffer@2@@Z @ 8 NONAME ; int TMS::TMSBufferImpl::Delete(class TMS::TMSBuffer * &)
-	?Delete@TMSSourceImpl@TMS@@SAHAAPAVTMSSource@2@@Z @ 9 NONAME ; int TMS::TMSSourceImpl::Delete(class TMS::TMSSource * &)
-	?Delete@TMSEffectImpl@TMS@@SAHAAPAVTMSEffect@2@@Z @ 10 NONAME ; int TMS::TMSEffectImpl::Delete(class TMS::TMSEffect * &)
-	?Create@TMSBufferImpl@TMS@@SAHHIAAPAVTMSBuffer@2@@Z @ 11 NONAME ; int TMS::TMSBufferImpl::Create(int, unsigned int, class TMS::TMSBuffer * &)
-	?Create@TMSCallImpl@TMS@@SAHHAAPAVTMSCall@2@I@Z @ 12 NONAME ; int TMS::TMSCallImpl::Create(int, class TMS::TMSCall * &, unsigned int)
-	?Delete@TMSGlobalRoutingImpl@TMS@@SAHAAPAVTMSGlobalRouting@2@@Z @ 13 NONAME ; int TMS::TMSGlobalRoutingImpl::Delete(class TMS::TMSGlobalRouting * &)
-	?Create@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@AAVRWindow@@H@Z @ 14 NONAME ; int TMS::TMSRingToneImpl::Create(class TMS::TMSRingTone * &, class RWindow &, int)
-	?Delete@TMSInbandToneImpl@TMS@@SAHAAPAVTMSInbandTone@2@@Z @ 15 NONAME ; int TMS::TMSInbandToneImpl::Delete(class TMS::TMSInbandTone * &)
-	?Create@TMSSinkImpl@TMS@@SAHHAAPAVTMSSink@2@@Z @ 16 NONAME ; int TMS::TMSSinkImpl::Create(int, class TMS::TMSSink * &)
-	?Create@TMSInbandToneImpl@TMS@@SAHAAPAVTMSInbandTone@2@@Z @ 17 NONAME ; int TMS::TMSInbandToneImpl::Create(class TMS::TMSInbandTone * &)
-	?Create@TMSFormatImpl@TMS@@SAHHAAPAVTMSFormat@2@@Z @ 18 NONAME ; int TMS::TMSFormatImpl::Create(int, class TMS::TMSFormat * &)
-	?Create@TMSGlobalRoutingImpl@TMS@@SAHAAPAVTMSGlobalRouting@2@@Z @ 19 NONAME ; int TMS::TMSGlobalRoutingImpl::Create(class TMS::TMSGlobalRouting * &)
-	?Create@TMSDTMFImpl@TMS@@SAHHAAPAVTMSDTMF@2@@Z @ 20 NONAME ; int TMS::TMSDTMFImpl::Create(int, class TMS::TMSDTMF * &)
-	?Delete@TMSDTMFImpl@TMS@@SAHAAPAVTMSDTMF@2@@Z @ 21 NONAME ; int TMS::TMSDTMFImpl::Delete(class TMS::TMSDTMF * &)
+	?Create@TMSDTMFImpl@TMS@@SAHHAAPAVTMSDTMF@2@@Z @ 2 NONAME ; int TMS::TMSDTMFImpl::Create(int, class TMS::TMSDTMF * &)
+	?Delete@TMSDTMFImpl@TMS@@SAHAAPAVTMSDTMF@2@@Z @ 3 NONAME ; int TMS::TMSDTMFImpl::Delete(class TMS::TMSDTMF * &)
+	?Create@TMSSourceImpl@TMS@@SAHHAAPAVTMSSource@2@@Z @ 4 NONAME ; int TMS::TMSSourceImpl::Create(int, class TMS::TMSSource * &)
+	?Delete@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@@Z @ 5 NONAME ; int TMS::TMSRingToneImpl::Delete(class TMS::TMSRingTone * &)
+	?Create@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@@Z @ 6 NONAME ; int TMS::TMSRingToneImpl::Create(class TMS::TMSRingTone * &)
+	?Delete@TMSFormatImpl@TMS@@SAHAAPAVTMSFormat@2@@Z @ 7 NONAME ; int TMS::TMSFormatImpl::Delete(class TMS::TMSFormat * &)
+	?Delete@TMSCallImpl@TMS@@SAHAAPAVTMSCall@2@@Z @ 8 NONAME ; int TMS::TMSCallImpl::Delete(class TMS::TMSCall * &)
+	?Delete@TMSSinkImpl@TMS@@SAHAAPAVTMSSink@2@@Z @ 9 NONAME ; int TMS::TMSSinkImpl::Delete(class TMS::TMSSink * &)
+	?Delete@TMSBufferImpl@TMS@@SAHAAPAVTMSBuffer@2@@Z @ 10 NONAME ; int TMS::TMSBufferImpl::Delete(class TMS::TMSBuffer * &)
+	?Delete@TMSSourceImpl@TMS@@SAHAAPAVTMSSource@2@@Z @ 11 NONAME ; int TMS::TMSSourceImpl::Delete(class TMS::TMSSource * &)
+	?Delete@TMSEffectImpl@TMS@@SAHAAPAVTMSEffect@2@@Z @ 12 NONAME ; int TMS::TMSEffectImpl::Delete(class TMS::TMSEffect * &)
+	?Create@TMSBufferImpl@TMS@@SAHHIAAPAVTMSBuffer@2@@Z @ 13 NONAME ; int TMS::TMSBufferImpl::Create(int, unsigned int, class TMS::TMSBuffer * &)
+	?Create@TMSCallImpl@TMS@@SAHHAAPAVTMSCall@2@I@Z @ 14 NONAME ; int TMS::TMSCallImpl::Create(int, class TMS::TMSCall * &, unsigned int)
+	?Delete@TMSGlobalRoutingImpl@TMS@@SAHAAPAVTMSGlobalRouting@2@@Z @ 15 NONAME ; int TMS::TMSGlobalRoutingImpl::Delete(class TMS::TMSGlobalRouting * &)
+	?Create@TMSRingToneImpl@TMS@@SAHAAPAVTMSRingTone@2@AAVRWindow@@H@Z @ 16 NONAME ; int TMS::TMSRingToneImpl::Create(class TMS::TMSRingTone * &, class RWindow &, int)
+	?Delete@TMSInbandToneImpl@TMS@@SAHAAPAVTMSInbandTone@2@@Z @ 17 NONAME ; int TMS::TMSInbandToneImpl::Delete(class TMS::TMSInbandTone * &)
+	?Create@TMSSinkImpl@TMS@@SAHHAAPAVTMSSink@2@@Z @ 18 NONAME ; int TMS::TMSSinkImpl::Create(int, class TMS::TMSSink * &)
+	?Create@TMSInbandToneImpl@TMS@@SAHAAPAVTMSInbandTone@2@@Z @ 19 NONAME ; int TMS::TMSInbandToneImpl::Create(class TMS::TMSInbandTone * &)
+	?Create@TMSFormatImpl@TMS@@SAHHAAPAVTMSFormat@2@@Z @ 20 NONAME ; int TMS::TMSFormatImpl::Create(int, class TMS::TMSFormat * &)
+	?Create@TMSGlobalRoutingImpl@TMS@@SAHAAPAVTMSGlobalRouting@2@@Z @ 21 NONAME ; int TMS::TMSGlobalRoutingImpl::Create(class TMS::TMSGlobalRouting * &)
 
--- a/mmserv/tms/tmsimpl/eabi/tmsimpl.def	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/eabi/tmsimpl.def	Mon Oct 04 00:51:56 2010 +0300
@@ -24,92 +24,90 @@
 	_ZTIN3TMS11TMSDTMFImplE @ 23 NONAME
 	_ZTIN3TMS12TMSMemBufferE @ 24 NONAME
 	_ZTIN3TMS13TMSStreamImplE @ 25 NONAME
-	_ZTIN3TMS15TMSCallBodyImplE @ 26 NONAME
-	_ZTIN3TMS15TMSDTMFBodyImplE @ 27 NONAME
-	_ZTIN3TMS15TMSRingToneImplE @ 28 NONAME
-	_ZTIN3TMS16TMSAMRFormatImplE @ 29 NONAME
-	_ZTIN3TMS16TMSMicSourceImplE @ 30 NONAME
-	_ZTIN3TMS16TMSModemSinkImplE @ 31 NONAME
-	_ZTIN3TMS16TMSPCMFormatImplE @ 32 NONAME
-	_ZTIN3TMS17TMSCSCallBodyImplE @ 33 NONAME
-	_ZTIN3TMS17TMSClientSinkImplE @ 34 NONAME
-	_ZTIN3TMS17TMSFormatBodyImplE @ 35 NONAME
-	_ZTIN3TMS17TMSG711FormatImplE @ 36 NONAME
-	_ZTIN3TMS17TMSG729FormatImplE @ 37 NONAME
-	_ZTIN3TMS17TMSGainEffectImplE @ 38 NONAME
-	_ZTIN3TMS17TMSILBCFormatImplE @ 39 NONAME
-	_ZTIN3TMS17TMSIPCallBodyImplE @ 40 NONAME
-	_ZTIN3TMS17TMSInbandToneImplE @ 41 NONAME
-	_ZTIN3TMS17TMSStreamBodyImplE @ 42 NONAME
-	_ZTIN3TMS18TMSModemSourceImplE @ 43 NONAME
-	_ZTIN3TMS18TMSSpeakerSinkImplE @ 44 NONAME
-	_ZTIN3TMS19TMSClientSourceImplE @ 45 NONAME
-	_ZTIN3TMS19TMSRingToneBodyImplE @ 46 NONAME
-	_ZTIN3TMS19TMSVolumeEffectImplE @ 47 NONAME
-	_ZTIN3TMS20TMSAMRFormatBodyImplE @ 48 NONAME
-	_ZTIN3TMS20TMSGlobalRoutingImplE @ 49 NONAME
-	_ZTIN3TMS20TMSMicSourceBodyImplE @ 50 NONAME
-	_ZTIN3TMS20TMSModemSinkBodyImplE @ 51 NONAME
-	_ZTIN3TMS20TMSPCMFormatBodyImplE @ 52 NONAME
-	_ZTIN3TMS21TMSClientSinkBodyImplE @ 53 NONAME
-	_ZTIN3TMS21TMSG711FormatBodyImplE @ 54 NONAME
-	_ZTIN3TMS21TMSG729FormatBodyImplE @ 55 NONAME
-	_ZTIN3TMS21TMSGainEffectBodyImplE @ 56 NONAME
-	_ZTIN3TMS21TMSILBCFormatBodyImplE @ 57 NONAME
-	_ZTIN3TMS21TMSInbandToneBodyImplE @ 58 NONAME
-	_ZTIN3TMS22TMSGlobalVolEffectImplE @ 59 NONAME
-	_ZTIN3TMS22TMSModemSourceBodyImplE @ 60 NONAME
-	_ZTIN3TMS22TMSSpeakerSinkBodyImplE @ 61 NONAME
-	_ZTIN3TMS23TMSClientSourceBodyImplE @ 62 NONAME
-	_ZTIN3TMS23TMSGlobalGainEffectImplE @ 63 NONAME
-	_ZTIN3TMS23TMSVolumeEffectBodyImplE @ 64 NONAME
-	_ZTIN3TMS24TMSGlobalRoutingBodyImplE @ 65 NONAME
-	_ZTIN3TMS26TMSGlobalVolEffectBodyImplE @ 66 NONAME
-	_ZTIN3TMS27TMSGlobalGainEffectBodyImplE @ 67 NONAME
-	_ZTVN3TMS11TMSCallImplE @ 68 NONAME
-	_ZTVN3TMS11TMSDTMFImplE @ 69 NONAME
-	_ZTVN3TMS12TMSMemBufferE @ 70 NONAME
-	_ZTVN3TMS13TMSStreamImplE @ 71 NONAME
-	_ZTVN3TMS15TMSCallBodyImplE @ 72 NONAME
-	_ZTVN3TMS15TMSDTMFBodyImplE @ 73 NONAME
-	_ZTVN3TMS15TMSRingToneImplE @ 74 NONAME
-	_ZTVN3TMS16TMSAMRFormatImplE @ 75 NONAME
-	_ZTVN3TMS16TMSMicSourceImplE @ 76 NONAME
-	_ZTVN3TMS16TMSModemSinkImplE @ 77 NONAME
-	_ZTVN3TMS16TMSPCMFormatImplE @ 78 NONAME
-	_ZTVN3TMS17TMSCSCallBodyImplE @ 79 NONAME
-	_ZTVN3TMS17TMSClientSinkImplE @ 80 NONAME
-	_ZTVN3TMS17TMSFormatBodyImplE @ 81 NONAME
-	_ZTVN3TMS17TMSG711FormatImplE @ 82 NONAME
-	_ZTVN3TMS17TMSG729FormatImplE @ 83 NONAME
-	_ZTVN3TMS17TMSGainEffectImplE @ 84 NONAME
-	_ZTVN3TMS17TMSILBCFormatImplE @ 85 NONAME
-	_ZTVN3TMS17TMSIPCallBodyImplE @ 86 NONAME
-	_ZTVN3TMS17TMSInbandToneImplE @ 87 NONAME
-	_ZTVN3TMS17TMSStreamBodyImplE @ 88 NONAME
-	_ZTVN3TMS18TMSModemSourceImplE @ 89 NONAME
-	_ZTVN3TMS18TMSSpeakerSinkImplE @ 90 NONAME
-	_ZTVN3TMS19TMSClientSourceImplE @ 91 NONAME
-	_ZTVN3TMS19TMSRingToneBodyImplE @ 92 NONAME
-	_ZTVN3TMS19TMSVolumeEffectImplE @ 93 NONAME
-	_ZTVN3TMS20TMSAMRFormatBodyImplE @ 94 NONAME
-	_ZTVN3TMS20TMSGlobalRoutingImplE @ 95 NONAME
-	_ZTVN3TMS20TMSMicSourceBodyImplE @ 96 NONAME
-	_ZTVN3TMS20TMSModemSinkBodyImplE @ 97 NONAME
-	_ZTVN3TMS20TMSPCMFormatBodyImplE @ 98 NONAME
-	_ZTVN3TMS21TMSClientSinkBodyImplE @ 99 NONAME
-	_ZTVN3TMS21TMSG711FormatBodyImplE @ 100 NONAME
-	_ZTVN3TMS21TMSG729FormatBodyImplE @ 101 NONAME
-	_ZTVN3TMS21TMSGainEffectBodyImplE @ 102 NONAME
-	_ZTVN3TMS21TMSILBCFormatBodyImplE @ 103 NONAME
-	_ZTVN3TMS21TMSInbandToneBodyImplE @ 104 NONAME
-	_ZTVN3TMS22TMSGlobalVolEffectImplE @ 105 NONAME
-	_ZTVN3TMS22TMSModemSourceBodyImplE @ 106 NONAME
-	_ZTVN3TMS22TMSSpeakerSinkBodyImplE @ 107 NONAME
-	_ZTVN3TMS23TMSClientSourceBodyImplE @ 108 NONAME
-	_ZTVN3TMS23TMSGlobalGainEffectImplE @ 109 NONAME
-	_ZTVN3TMS23TMSVolumeEffectBodyImplE @ 110 NONAME
-	_ZTVN3TMS24TMSGlobalRoutingBodyImplE @ 111 NONAME
-	_ZTVN3TMS26TMSGlobalVolEffectBodyImplE @ 112 NONAME
-	_ZTVN3TMS27TMSGlobalGainEffectBodyImplE @ 113 NONAME
+	_ZTIN3TMS15TMSDTMFBodyImplE @ 26 NONAME
+	_ZTIN3TMS15TMSRingToneImplE @ 27 NONAME
+	_ZTIN3TMS16TMSAMRFormatImplE @ 28 NONAME
+	_ZTIN3TMS16TMSMicSourceImplE @ 29 NONAME
+	_ZTIN3TMS16TMSModemSinkImplE @ 30 NONAME
+	_ZTIN3TMS16TMSPCMFormatImplE @ 31 NONAME
+	_ZTIN3TMS17TMSCSCallBodyImplE @ 32 NONAME
+	_ZTIN3TMS17TMSClientSinkImplE @ 33 NONAME
+	_ZTIN3TMS17TMSFormatBodyImplE @ 34 NONAME
+	_ZTIN3TMS17TMSG711FormatImplE @ 35 NONAME
+	_ZTIN3TMS17TMSG729FormatImplE @ 36 NONAME
+	_ZTIN3TMS17TMSGainEffectImplE @ 37 NONAME
+	_ZTIN3TMS17TMSILBCFormatImplE @ 38 NONAME
+	_ZTIN3TMS17TMSIPCallBodyImplE @ 39 NONAME
+	_ZTIN3TMS17TMSInbandToneImplE @ 40 NONAME
+	_ZTIN3TMS17TMSStreamBodyImplE @ 41 NONAME
+	_ZTIN3TMS18TMSModemSourceImplE @ 42 NONAME
+	_ZTIN3TMS18TMSSpeakerSinkImplE @ 43 NONAME
+	_ZTIN3TMS19TMSClientSourceImplE @ 44 NONAME
+	_ZTIN3TMS19TMSRingToneBodyImplE @ 45 NONAME
+	_ZTIN3TMS19TMSVolumeEffectImplE @ 46 NONAME
+	_ZTIN3TMS20TMSAMRFormatBodyImplE @ 47 NONAME
+	_ZTIN3TMS20TMSGlobalRoutingImplE @ 48 NONAME
+	_ZTIN3TMS20TMSMicSourceBodyImplE @ 49 NONAME
+	_ZTIN3TMS20TMSModemSinkBodyImplE @ 50 NONAME
+	_ZTIN3TMS20TMSPCMFormatBodyImplE @ 51 NONAME
+	_ZTIN3TMS21TMSClientSinkBodyImplE @ 52 NONAME
+	_ZTIN3TMS21TMSG711FormatBodyImplE @ 53 NONAME
+	_ZTIN3TMS21TMSG729FormatBodyImplE @ 54 NONAME
+	_ZTIN3TMS21TMSGainEffectBodyImplE @ 55 NONAME
+	_ZTIN3TMS21TMSILBCFormatBodyImplE @ 56 NONAME
+	_ZTIN3TMS21TMSInbandToneBodyImplE @ 57 NONAME
+	_ZTIN3TMS22TMSGlobalVolEffectImplE @ 58 NONAME
+	_ZTIN3TMS22TMSModemSourceBodyImplE @ 59 NONAME
+	_ZTIN3TMS22TMSSpeakerSinkBodyImplE @ 60 NONAME
+	_ZTIN3TMS23TMSClientSourceBodyImplE @ 61 NONAME
+	_ZTIN3TMS23TMSGlobalGainEffectImplE @ 62 NONAME
+	_ZTIN3TMS23TMSVolumeEffectBodyImplE @ 63 NONAME
+	_ZTIN3TMS24TMSGlobalRoutingBodyImplE @ 64 NONAME
+	_ZTIN3TMS26TMSGlobalVolEffectBodyImplE @ 65 NONAME
+	_ZTIN3TMS27TMSGlobalGainEffectBodyImplE @ 66 NONAME
+	_ZTVN3TMS11TMSCallImplE @ 67 NONAME
+	_ZTVN3TMS11TMSDTMFImplE @ 68 NONAME
+	_ZTVN3TMS12TMSMemBufferE @ 69 NONAME
+	_ZTVN3TMS13TMSStreamImplE @ 70 NONAME
+	_ZTVN3TMS15TMSDTMFBodyImplE @ 71 NONAME
+	_ZTVN3TMS15TMSRingToneImplE @ 72 NONAME
+	_ZTVN3TMS16TMSAMRFormatImplE @ 73 NONAME
+	_ZTVN3TMS16TMSMicSourceImplE @ 74 NONAME
+	_ZTVN3TMS16TMSModemSinkImplE @ 75 NONAME
+	_ZTVN3TMS16TMSPCMFormatImplE @ 76 NONAME
+	_ZTVN3TMS17TMSCSCallBodyImplE @ 77 NONAME
+	_ZTVN3TMS17TMSClientSinkImplE @ 78 NONAME
+	_ZTVN3TMS17TMSFormatBodyImplE @ 79 NONAME
+	_ZTVN3TMS17TMSG711FormatImplE @ 80 NONAME
+	_ZTVN3TMS17TMSG729FormatImplE @ 81 NONAME
+	_ZTVN3TMS17TMSGainEffectImplE @ 82 NONAME
+	_ZTVN3TMS17TMSILBCFormatImplE @ 83 NONAME
+	_ZTVN3TMS17TMSIPCallBodyImplE @ 84 NONAME
+	_ZTVN3TMS17TMSInbandToneImplE @ 85 NONAME
+	_ZTVN3TMS17TMSStreamBodyImplE @ 86 NONAME
+	_ZTVN3TMS18TMSModemSourceImplE @ 87 NONAME
+	_ZTVN3TMS18TMSSpeakerSinkImplE @ 88 NONAME
+	_ZTVN3TMS19TMSClientSourceImplE @ 89 NONAME
+	_ZTVN3TMS19TMSRingToneBodyImplE @ 90 NONAME
+	_ZTVN3TMS19TMSVolumeEffectImplE @ 91 NONAME
+	_ZTVN3TMS20TMSAMRFormatBodyImplE @ 92 NONAME
+	_ZTVN3TMS20TMSGlobalRoutingImplE @ 93 NONAME
+	_ZTVN3TMS20TMSMicSourceBodyImplE @ 94 NONAME
+	_ZTVN3TMS20TMSModemSinkBodyImplE @ 95 NONAME
+	_ZTVN3TMS20TMSPCMFormatBodyImplE @ 96 NONAME
+	_ZTVN3TMS21TMSClientSinkBodyImplE @ 97 NONAME
+	_ZTVN3TMS21TMSG711FormatBodyImplE @ 98 NONAME
+	_ZTVN3TMS21TMSG729FormatBodyImplE @ 99 NONAME
+	_ZTVN3TMS21TMSGainEffectBodyImplE @ 100 NONAME
+	_ZTVN3TMS21TMSILBCFormatBodyImplE @ 101 NONAME
+	_ZTVN3TMS21TMSInbandToneBodyImplE @ 102 NONAME
+	_ZTVN3TMS22TMSGlobalVolEffectImplE @ 103 NONAME
+	_ZTVN3TMS22TMSModemSourceBodyImplE @ 104 NONAME
+	_ZTVN3TMS22TMSSpeakerSinkBodyImplE @ 105 NONAME
+	_ZTVN3TMS23TMSClientSourceBodyImplE @ 106 NONAME
+	_ZTVN3TMS23TMSGlobalGainEffectImplE @ 107 NONAME
+	_ZTVN3TMS23TMSVolumeEffectBodyImplE @ 108 NONAME
+	_ZTVN3TMS24TMSGlobalRoutingBodyImplE @ 109 NONAME
+	_ZTVN3TMS26TMSGlobalVolEffectBodyImplE @ 110 NONAME
+	_ZTVN3TMS27TMSGlobalGainEffectBodyImplE @ 111 NONAME
 
--- a/mmserv/tms/tmsimpl/group/tmsimpl.mmp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/group/tmsimpl.mmp	Mon Oct 04 00:51:56 2010 +0300
@@ -39,7 +39,6 @@
 
 SOURCEPATH      ../src
 SOURCE          tmscallimpl.cpp
-SOURCE          tmscallbodyimpl.cpp
 SOURCE          tmsipcallbodyimpl.cpp
 SOURCE          tmscscallbodyimpl.cpp
 SOURCE          tmsstreamimpl.cpp
--- a/mmserv/tms/tmsimpl/inc/tmsamrbodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/inc/tmsamrbodyimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -31,8 +31,7 @@
 
 // Class declaration
 class TMSAMRFormatBodyImpl : public TMSAMRFormatBody,
-                             public TMSFormatBodyImpl,
-                             public MQueueHandlerObserver
+                             public TMSFormatBodyImpl
     {
 public:
     static gint Create(TMSAMRFormatBody*& bodyimpl);
@@ -42,10 +41,6 @@
     virtual gint GetType(TMSFormatType& Formattype);
     // From TMSAMRFormatBody ends
 
-    // From MQueueHandlerObserver starts
-    virtual void QueueEvent(TInt aEventType, TInt aError, void* user_data);
-    // From MQueueHandlerObserver ends
-
     virtual void SetProxy(TMSGlobalContext* context, gpointer queuehandler);
 
 private:
--- a/mmserv/tms/tmsimpl/inc/tmscallbodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,53 +0,0 @@
-/*
- * 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: Telephony Multimedia Service
- *
- */
-
-#ifndef TMS_CALL_BODY_IMPL_H
-#define TMS_CALL_BODY_IMPL_H
-
-#include <glib.h>
-#include "tmscallbody.h"
-
-namespace TMS {
-
-// FORWARD DECLARATIONS
-class TMSStream;
-class TMSDTMF;
-class TMSRingTone;
-
-// TMSCallBodyImpl class
-class TMSCallBodyImpl : public TMSCallBody
-    {
-public:
-    static gint Create(TMSCallBody*& bodyimpl);
-    virtual ~TMSCallBodyImpl();
-
-    // From TMSCallBody
-    virtual TMSCallType GetCallType();
-    virtual gint GetCallContextId(guint& ctxid);
-    virtual gint CreateStream(TMSStreamType type, TMSStream*& strm);
-    virtual gint DeleteStream(TMSStream*& strm);
-
-private:
-    TMSCallBodyImpl();
-    gint PostConstruct();
-    };
-
-} //namespace TMS
-
-#endif // TMS_CALL_BODY_IMPL_H
-
-// End of file
--- a/mmserv/tms/tmsimpl/inc/tmsg711bodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/inc/tmsg711bodyimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -31,8 +31,7 @@
 
 // TMSG711FormatBodyImpl class
 class TMSG711FormatBodyImpl : public TMSG711FormatBody,
-                              public TMSFormatBodyImpl,
-                              public MQueueHandlerObserver
+                              public TMSFormatBodyImpl
     {
 public:
     static gint Create(TMSG711FormatBody*& bodyimpl);
@@ -48,10 +47,6 @@
     virtual gint SetVADMode(const gboolean aVad);
     virtual gint GetVADMode(gboolean& aVad);
     virtual gint GetType(TMSFormatType& Formattype);
-
-    // From MQueueHandlerObserver
-    virtual void QueueEvent(TInt aEventType, TInt aError, void* user_data);
-
     virtual void SetProxy(TMSGlobalContext* context, gpointer queuehandler);
 
 private:
--- a/mmserv/tms/tmsimpl/inc/tmsg729bodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/inc/tmsg729bodyimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -31,8 +31,7 @@
 
 // TMSG729FormatBodyImpl class
 class TMSG729FormatBodyImpl : public TMSG729FormatBody,
-                              public TMSFormatBodyImpl,
-                              public MQueueHandlerObserver
+                              public TMSFormatBodyImpl
     {
 public:
     static gint Create(TMSG729FormatBody*& bodyimpl);
@@ -42,10 +41,6 @@
     virtual gint SetVADMode(const gboolean aVad);
     virtual gint GetVADMode(gboolean& aVad);
     virtual gint GetType(TMSFormatType& Formattype);
-
-    // From MQueueHandlerObserver
-    virtual void QueueEvent(TInt aEventType, TInt aError, void* user_data);
-
     virtual void SetProxy(TMSGlobalContext* context, gpointer queuehandler);
 
 private:
--- a/mmserv/tms/tmsimpl/inc/tmsilbcbodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/inc/tmsilbcbodyimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -31,8 +31,7 @@
 
 // TMSILBCFormatBodyImpl class
 class TMSILBCFormatBodyImpl : public TMSILBCFormatBody,
-                              public TMSFormatBodyImpl,
-                              public MQueueHandlerObserver
+                              public TMSFormatBodyImpl
     {
 public:
     static gint Create(TMSILBCFormatBody*& bodyimpl);
@@ -46,10 +45,6 @@
     virtual gint SetVADMode(const gboolean aVad);
     virtual gint GetVADMode(gboolean& aVad);
     virtual gint GetType(TMSFormatType& Formattype);
-
-    // From MQueueHandlerObserver starts
-    virtual void QueueEvent(TInt aEventType, TInt aError, void* user_data);
-
     virtual void SetProxy(TMSGlobalContext* context, gpointer queuehandler);
 
 private:
--- a/mmserv/tms/tmsimpl/inc/tmspcmbodyimpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/inc/tmspcmbodyimpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -31,8 +31,7 @@
 
 // TMSPCMFormatBodyImpl class
 class TMSPCMFormatBodyImpl : public TMSPCMFormatBody,
-                             public TMSFormatBodyImpl,
-                             public MQueueHandlerObserver
+                             public TMSFormatBodyImpl
     {
 public:
     static gint Create(TMSPCMFormatBody*& bodyimpl);
@@ -41,8 +40,6 @@
     // From TMSPCMFormatBody
     virtual gint GetType(TMSFormatType& Formattype);
 
-    // From MQueueHandlerObserver starts
-    virtual void QueueEvent(TInt aEventType, TInt aError, void* user_data);
 
     virtual void SetProxy(TMSGlobalContext* context, gpointer queuehandler);
 
--- a/mmserv/tms/tmsimpl/src/tmsamrbodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsamrbodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -74,18 +74,6 @@
         iProxy = context->CallProxy;
         iStreamType = context->StreamType;
         TMSFormatBodyImpl::SetProxy(iProxy, queuehandler);
-        static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this,
-                TMS_FORMAT_AMR);
-        }
-    }
-
-void TMSAMRFormatBodyImpl::QueueEvent(TInt aEventType, TInt /*aError*/,
-        void* /*user_data*/)
-    {
-    switch (aEventType)
-        {
-        default:
-            break;
         }
     }
 
--- a/mmserv/tms/tmsimpl/src/tmscallbodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,78 +0,0 @@
-/*
- * 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: Telephony Multimedia Service
- *
- */
-
-#include <tms.h>
-#include "tmscallbodyimpl.h"
-
-using namespace TMS;
-
-TMSCallBodyImpl::TMSCallBodyImpl()
-    {
-    }
-
-TMSCallBodyImpl::~TMSCallBodyImpl()
-    {
-    }
-
-gint TMSCallBodyImpl::Create(TMSCallBody*& bodyimpl)
-    {
-    gint ret(TMS_RESULT_INSUFFICIENT_MEMORY);
-    TMSCallBodyImpl* self = new TMSCallBodyImpl();
-    if (self)
-        {
-        ret = self->PostConstruct();
-        if (ret != TMS_RESULT_SUCCESS)
-            {
-            delete self;
-            self = NULL;
-            }
-        }
-    bodyimpl = self;
-    return ret;
-    }
-
-gint TMSCallBodyImpl::PostConstruct()
-    {
-    gint ret(TMS_RESULT_SUCCESS);
-    return ret;
-    }
-
-TMSCallType TMSCallBodyImpl::GetCallType()
-    {
-    TMSCallType ctype(-1);
-    return ctype;
-    }
-
-gint TMSCallBodyImpl::GetCallContextId(guint& /*ctxid*/)
-    {
-    gint ret(TMS_RESULT_SUCCESS);
-    return ret;
-    }
-
-gint TMSCallBodyImpl::CreateStream(TMSStreamType /*type*/, TMSStream*& /*strm*/)
-    {
-    gint ret(TMS_RESULT_SUCCESS);
-    return ret;
-    }
-
-gint TMSCallBodyImpl::DeleteStream(TMSStream*& /*strm*/)
-    {
-    gint ret(TMS_RESULT_SUCCESS);
-    return ret;
-    }
-
-// End of file
--- a/mmserv/tms/tmsimpl/src/tmsg711bodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsg711bodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -154,18 +154,6 @@
         iProxy = context->CallProxy;
         iStreamType = context->StreamType;
         TMSFormatBodyImpl::SetProxy(iProxy, queuehandler);
-        static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this,
-                TMS_FORMAT_G711);
-        }
-    }
-
-void TMSG711FormatBodyImpl::QueueEvent(TInt aEventType, TInt /* aError*/,
-        void* /*user_data*/)
-    {
-    switch (aEventType)
-        {
-        default:
-            break;
         }
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsg729bodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsg729bodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -94,19 +94,6 @@
         iProxy = context->CallProxy;
         iStreamType = context->StreamType;
         TMSFormatBodyImpl::SetProxy(iProxy, queuehandler);
-        static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this,
-                TMS_FORMAT_G729);
         }
     }
-
-void TMSG729FormatBodyImpl::QueueEvent(TInt aEventType, TInt /*aError*/,
-        void* /*user_data*/)
-    {
-    switch (aEventType)
-        {
-        default:
-            break;
-        }
-    }
-
 // End of file
--- a/mmserv/tms/tmsimpl/src/tmsilbcbodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsilbcbodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -134,18 +134,6 @@
         iProxy = context->CallProxy;
         iStreamType = context->StreamType;
         TMSFormatBodyImpl::SetProxy(iProxy, queuehandler);
-        static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this,
-                TMS_FORMAT_ILBC);
-        }
-    }
-
-void TMSILBCFormatBodyImpl::QueueEvent(TInt aEventType, TInt /*aError*/,
-        void* /*user_data*/)
-    {
-    switch (aEventType)
-        {
-        default:
-            break;
         }
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsmicsourcebodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsmicsourcebodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -64,7 +64,6 @@
         gpointer /*queuehandler*/)
     {
     iProxy = aProxy;
-    //static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this, TMS_SOURCE_MIC);
     }
 
 // End of file
--- a/mmserv/tms/tmsimpl/src/tmsmicsourceimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsmicsourceimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -68,10 +68,11 @@
     return ret;
     }
 
-gint TMSMicSourceImpl::SetProxy(TMSCallProxy* /*aProxy*/,
-        gpointer /*queuehandler*/)
+gint TMSMicSourceImpl::SetProxy(TMSCallProxy* aProxy, gpointer queuehandler)
     {
     gint ret = TMS_RESULT_SUCCESS;
+    static_cast<TMSMicSourceBodyImpl*>(this->iBody)->SetProxy(aProxy,
+            queuehandler);
     return ret;
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsmodemsinkimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsmodemsinkimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -67,10 +67,11 @@
     return ret;
     }
 
-gint TMSModemSinkImpl::SetProxy(TMSCallProxy* /*aProxy*/,
-        gpointer /*queuehandler*/)
+gint TMSModemSinkImpl::SetProxy(TMSCallProxy* aProxy, gpointer queuehandler)
     {
     gint ret = TMS_RESULT_SUCCESS;
+    static_cast<TMSModemSinkBodyImpl*>(this->iBody)->SetProxy(aProxy,
+            queuehandler);
     return ret;
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsmodemsourceimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsmodemsourceimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -67,10 +67,11 @@
     return ret;
     }
 
-gint TMSModemSourceImpl::SetProxy(TMSCallProxy* /*aProxy*/,
-        gpointer /*queuehandler*/)
+gint TMSModemSourceImpl::SetProxy(TMSCallProxy* aProxy, gpointer queuehandler)
     {
     gint ret = TMS_RESULT_SUCCESS;
+    static_cast<TMSModemSourceBodyImpl*>(this->iBody)->SetProxy(aProxy,
+            queuehandler);
     return ret;
     }
 
--- a/mmserv/tms/tmsimpl/src/tmspcmbodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmspcmbodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -74,18 +74,6 @@
         iProxy = context->CallProxy;
         iStreamType = context->StreamType;
         TMSFormatBodyImpl::SetProxy(iProxy, queuehandler);
-        static_cast<TMSQueueHandler*>(queuehandler)->AddObserver(*this,
-                TMS_FORMAT_PCM);
-        }
-    }
-
-void TMSPCMFormatBodyImpl::QueueEvent(TInt aEventType, TInt /*aError*/,
-        void* /*user_data*/)
-    {
-    switch (aEventType)
-        {
-        default:
-            break;
         }
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsspeakersinkimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsspeakersinkimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -64,10 +64,11 @@
     return ret;
     }
 
-gint TMSSpeakerSinkImpl::SetProxy(TMSCallProxy* /*aProxy*/,
-        gpointer /*queuehandler*/)
+gint TMSSpeakerSinkImpl::SetProxy(TMSCallProxy* aProxy, gpointer queuehandler)
     {
-    gint ret = TMS_RESULT_SUCCESS;
+    gint ret(TMS_RESULT_SUCCESS);
+    static_cast<TMSSpeakerSinkBodyImpl*>(this->iBody)->SetProxy(aProxy,
+             queuehandler);
     return ret;
     }
 
--- a/mmserv/tms/tmsimpl/src/tmsstreambodyimpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsimpl/src/tmsstreambodyimpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -29,6 +29,10 @@
 #include "tmsmembuffer.h"
 #include "tmsclientsourceimpl.h"
 #include "tmsclientsinkimpl.h"
+#include "tmsmodemsourceimpl.h"
+#include "tmsmodemsinkimpl.h"
+#include "tmsmicsourceimpl.h"
+#include "tmsspeakersinkimpl.h"
 #include "tmsvolumeeffectimpl.h"
 #include "tmsgaineffectimpl.h"
 #include "tmsg711formatimpl.h"
@@ -60,6 +64,7 @@
         {
         iMsgQHandler->Cancel();
         }
+    iMsgQHandler->RemoveObserver(*this);
     delete iMsgQHandler;
     if (iMsgQueue.Handle() > 0)
         {
@@ -424,57 +429,6 @@
             }
         }
 
-    if (iContext.StreamType == TMS_STREAM_UPLINK)
-        {
-        if (iSink)
-            {
-            TMSSinkType sinkType;
-            iSink->GetType(sinkType);
-            switch (sinkType)
-                {
-                case TMS_SINK_CLIENT:
-                    static_cast<TMSClientSinkImpl*> (iSink)->SetProxy(&iContext,
-                            iMsgQHandler);
-                    break;
-                case TMS_SINK_MODEM:
-                case TMS_SINK_SPEAKER:
-                    break;
-                default:
-                    ret = TMS_RESULT_INVALID_ARGUMENT;
-                    break;
-                }
-            }
-        else
-            {
-            ret = TMS_RESULT_UNINITIALIZED_OBJECT;
-            }
-        }
-    else if (iContext.StreamType == TMS_STREAM_DOWNLINK)
-        {
-        if (iSource)
-            {
-            TMSSourceType sourceType;
-            iSource->GetType(sourceType);
-            switch (sourceType)
-                {
-                case TMS_SOURCE_CLIENT:
-                    static_cast<TMSClientSourceImpl*> (iSource)->SetProxy(
-                            &iContext, iMsgQHandler);
-                    break;
-                case TMS_SOURCE_MODEM:
-                case TMS_SOURCE_MIC:
-                    break;
-                default:
-                    ret = TMS_RESULT_INVALID_ARGUMENT;
-                    break;
-                }
-            }
-        else
-            {
-            ret = TMS_RESULT_UNINITIALIZED_OBJECT;
-            }
-        }
-
     return ret;
     }
 
@@ -549,6 +503,8 @@
                         iContext.StreamType == TMS_STREAM_DOWNLINK)
                     {
                     iSource = source;
+                    static_cast<TMSClientSourceImpl*> (iSource)->SetProxy(
+                             &iContext, iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
                 }
@@ -558,6 +514,8 @@
                 if (iContext.StreamType == TMS_STREAM_UPLINK)
                     {
                     iSource = source;
+                    static_cast<TMSMicSourceImpl*> (iSource)->SetProxy(
+                             iContext.CallProxy, iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
                 }
@@ -568,6 +526,8 @@
                         iContext.StreamType == TMS_STREAM_DOWNLINK)
                     {
                     iSource = source;
+                    static_cast<TMSModemSourceImpl*> (iSource)->SetProxy(
+                              iContext.CallProxy, iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
                 break;
@@ -597,6 +557,8 @@
                         iContext.StreamType == TMS_STREAM_UPLINK)
                     {
                     iSink = sink;
+                    static_cast<TMSClientSinkImpl*> (iSink)->SetProxy(&iContext,
+                            iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
                 }
@@ -606,6 +568,8 @@
                 if (iContext.StreamType == TMS_STREAM_DOWNLINK)
                     {
                     iSink = sink;
+                    static_cast<TMSSpeakerSinkImpl*> (iSink)->SetProxy(iContext.CallProxy,
+                             iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
                 }
@@ -616,10 +580,12 @@
                         iContext.StreamType == TMS_STREAM_UPLINK)
                     {
                     iSink = sink;
+                    static_cast<TMSModemSinkImpl*> (iSink)->SetProxy(iContext.CallProxy,
+                             iMsgQHandler);
                     ret = TMS_RESULT_SUCCESS;
                     }
+                }
                 break;
-                }
             default:
                 break;
             }
--- a/mmserv/tms/tmsproxy/bwins/tmsproxy.def	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsproxy/bwins/tmsproxy.def	Mon Oct 04 00:51:56 2010 +0300
@@ -4,35 +4,36 @@
 	?GetSupportedDecoders@TMSProxy@TMS@@QAEHAAV?$RArray@K@@AAH@Z @ 3 NONAME ; int TMS::TMSProxy::GetSupportedDecoders(class RArray<unsigned long> &, int &)
 	?Connect@TMSProxy@TMS@@QAEHXZ @ 4 NONAME ; int TMS::TMSProxy::Connect(void)
 	?SetLevel@TMSProxy@TMS@@QAEHI@Z @ 5 NONAME ; int TMS::TMSProxy::SetLevel(unsigned int)
-	?InitRT@TMSProxy@TMS@@QAEHHPAU_GString@@0@Z @ 6 NONAME ; int TMS::TMSProxy::InitRT(int, struct _GString *, struct _GString *)
-	?GetGain@TMSProxy@TMS@@QAEHAAI@Z @ 7 NONAME ; int TMS::TMSProxy::GetGain(unsigned int &)
-	?PlayRT@TMSProxy@TMS@@QAEHXZ @ 8 NONAME ; int TMS::TMSProxy::PlayRT(void)
-	?StartInbandTone@TMSProxy@TMS@@QAEHH@Z @ 9 NONAME ; int TMS::TMSProxy::StartInbandTone(int)
-	?Version@TMSProxy@TMS@@QBE?AVTVersion@@XZ @ 10 NONAME ; class TVersion TMS::TMSProxy::Version(void) const
-	?GetTMSCallSessionHandle@TMSProxy@TMS@@QAEHXZ @ 11 NONAME ; int TMS::TMSProxy::GetTMSCallSessionHandle(void)
-	?StopRT@TMSProxy@TMS@@QAEHXZ @ 12 NONAME ; int TMS::TMSProxy::StopRT(void)
-	?GetSupportedEncoders@TMSProxy@TMS@@QAEHAAV?$RArray@K@@AAH@Z @ 13 NONAME ; int TMS::TMSProxy::GetSupportedEncoders(class RArray<unsigned long> &, int &)
-	?ContinueDTMFStringSending@TMSProxy@TMS@@QAEHH@Z @ 14 NONAME ; int TMS::TMSProxy::ContinueDTMFStringSending(int)
-	?StopInbandTone@TMSProxy@TMS@@QAEHXZ @ 15 NONAME ; int TMS::TMSProxy::StopInbandTone(void)
-	?GetOutput@TMSProxy@TMS@@QAEHAAH@Z @ 16 NONAME ; int TMS::TMSProxy::GetOutput(int &)
-	?MuteRT@TMSProxy@TMS@@QAEHXZ @ 17 NONAME ; int TMS::TMSProxy::MuteRT(void)
-	?StopDTMF@TMSProxy@TMS@@QAEHH@Z @ 18 NONAME ; int TMS::TMSProxy::StopDTMF(int)
-	??1TMSProxy@TMS@@UAE@XZ @ 19 NONAME ; TMS::TMSProxy::~TMSProxy(void)
-	?SetMsgQueueNotifier@TMSProxy@TMS@@QAEHW4TMSMsgQueueNotifierType@2@PAX1H@Z @ 20 NONAME ; int TMS::TMSProxy::SetMsgQueueNotifier(enum TMS::TMSMsgQueueNotifierType, void *, void *, int)
-	?GetAvailableOutputs@TMSProxy@TMS@@QAEHAAV?$vector@IV?$allocator@I@std@@@std@@@Z @ 21 NONAME ; int TMS::TMSProxy::GetAvailableOutputs(class std::vector<unsigned int, class std::allocator<unsigned int> > &)
-	?PauseRT@TMSProxy@TMS@@QAEHXZ @ 22 NONAME ; int TMS::TMSProxy::PauseRT(void)
-	?StartRoutingNotifier@TMSProxy@TMS@@QAEHXZ @ 23 NONAME ; int TMS::TMSProxy::StartRoutingNotifier(void)
-	?StartDTMF@TMSProxy@TMS@@QAEHHPAU_GString@@@Z @ 24 NONAME ; int TMS::TMSProxy::StartDTMF(int, struct _GString *)
-	?CancelRoutingNotifier@TMSProxy@TMS@@QAEHXZ @ 25 NONAME ; int TMS::TMSProxy::CancelRoutingNotifier(void)
-	?SetGain@TMSProxy@TMS@@QAEHI@Z @ 26 NONAME ; int TMS::TMSProxy::SetGain(unsigned int)
-	?GetLevel@TMSProxy@TMS@@QAEHAAI@Z @ 27 NONAME ; int TMS::TMSProxy::GetLevel(unsigned int &)
-	?GetPreviousOutput@TMSProxy@TMS@@QAEHAAH@Z @ 28 NONAME ; int TMS::TMSProxy::GetPreviousOutput(int &)
-	?Close@TMSProxy@TMS@@QAEXXZ @ 29 NONAME ; void TMS::TMSProxy::Close(void)
-	??0TMSProxy@TMS@@QAE@XZ @ 30 NONAME ; TMS::TMSProxy::TMSProxy(void)
-	?SetOutput@TMSProxy@TMS@@QAEHH@Z @ 31 NONAME ; int TMS::TMSProxy::SetOutput(int)
-	?InitDTMFPlayer@TMSProxy@TMS@@QAEHH@Z @ 32 NONAME ; int TMS::TMSProxy::InitDTMFPlayer(int)
-	?DeinitRT@TMSProxy@TMS@@QAEHXZ @ 33 NONAME ; int TMS::TMSProxy::DeinitRT(void)
-	?CancelGlobalEffectNotifier@TMSProxy@TMS@@QAEHXZ @ 34 NONAME ; int TMS::TMSProxy::CancelGlobalEffectNotifier(void)
-	?GetMaxGain@TMSProxy@TMS@@QAEHAAI@Z @ 35 NONAME ; int TMS::TMSProxy::GetMaxGain(unsigned int &)
-	?StartGlobalEffectNotifier@TMSProxy@TMS@@QAEHXZ @ 36 NONAME ; int TMS::TMSProxy::StartGlobalEffectNotifier(void)
+	?TermSrv@TMSProxy@TMS@@QAEXXZ @ 6 NONAME ; void TMS::TMSProxy::TermSrv(void)
+	?InitRT@TMSProxy@TMS@@QAEHHPAU_GString@@0@Z @ 7 NONAME ; int TMS::TMSProxy::InitRT(int, struct _GString *, struct _GString *)
+	?GetGain@TMSProxy@TMS@@QAEHAAI@Z @ 8 NONAME ; int TMS::TMSProxy::GetGain(unsigned int &)
+	?PlayRT@TMSProxy@TMS@@QAEHXZ @ 9 NONAME ; int TMS::TMSProxy::PlayRT(void)
+	?StartInbandTone@TMSProxy@TMS@@QAEHH@Z @ 10 NONAME ; int TMS::TMSProxy::StartInbandTone(int)
+	?Version@TMSProxy@TMS@@QBE?AVTVersion@@XZ @ 11 NONAME ; class TVersion TMS::TMSProxy::Version(void) const
+	?GetTMSCallSessionHandle@TMSProxy@TMS@@QAEHXZ @ 12 NONAME ; int TMS::TMSProxy::GetTMSCallSessionHandle(void)
+	?StopRT@TMSProxy@TMS@@QAEHXZ @ 13 NONAME ; int TMS::TMSProxy::StopRT(void)
+	?GetSupportedEncoders@TMSProxy@TMS@@QAEHAAV?$RArray@K@@AAH@Z @ 14 NONAME ; int TMS::TMSProxy::GetSupportedEncoders(class RArray<unsigned long> &, int &)
+	?ContinueDTMFStringSending@TMSProxy@TMS@@QAEHH@Z @ 15 NONAME ; int TMS::TMSProxy::ContinueDTMFStringSending(int)
+	?StopInbandTone@TMSProxy@TMS@@QAEHXZ @ 16 NONAME ; int TMS::TMSProxy::StopInbandTone(void)
+	?GetOutput@TMSProxy@TMS@@QAEHAAH@Z @ 17 NONAME ; int TMS::TMSProxy::GetOutput(int &)
+	?MuteRT@TMSProxy@TMS@@QAEHXZ @ 18 NONAME ; int TMS::TMSProxy::MuteRT(void)
+	?StopDTMF@TMSProxy@TMS@@QAEHH@Z @ 19 NONAME ; int TMS::TMSProxy::StopDTMF(int)
+	??1TMSProxy@TMS@@UAE@XZ @ 20 NONAME ; TMS::TMSProxy::~TMSProxy(void)
+	?SetMsgQueueNotifier@TMSProxy@TMS@@QAEHW4TMSMsgQueueNotifierType@2@PAX1H@Z @ 21 NONAME ; int TMS::TMSProxy::SetMsgQueueNotifier(enum TMS::TMSMsgQueueNotifierType, void *, void *, int)
+	?GetAvailableOutputs@TMSProxy@TMS@@QAEHAAV?$vector@IV?$allocator@I@std@@@std@@@Z @ 22 NONAME ; int TMS::TMSProxy::GetAvailableOutputs(class std::vector<unsigned int, class std::allocator<unsigned int> > &)
+	?PauseRT@TMSProxy@TMS@@QAEHXZ @ 23 NONAME ; int TMS::TMSProxy::PauseRT(void)
+	?StartRoutingNotifier@TMSProxy@TMS@@QAEHXZ @ 24 NONAME ; int TMS::TMSProxy::StartRoutingNotifier(void)
+	?StartDTMF@TMSProxy@TMS@@QAEHHPAU_GString@@@Z @ 25 NONAME ; int TMS::TMSProxy::StartDTMF(int, struct _GString *)
+	?CancelRoutingNotifier@TMSProxy@TMS@@QAEHXZ @ 26 NONAME ; int TMS::TMSProxy::CancelRoutingNotifier(void)
+	?SetGain@TMSProxy@TMS@@QAEHI@Z @ 27 NONAME ; int TMS::TMSProxy::SetGain(unsigned int)
+	?GetLevel@TMSProxy@TMS@@QAEHAAI@Z @ 28 NONAME ; int TMS::TMSProxy::GetLevel(unsigned int &)
+	?GetPreviousOutput@TMSProxy@TMS@@QAEHAAH@Z @ 29 NONAME ; int TMS::TMSProxy::GetPreviousOutput(int &)
+	?Close@TMSProxy@TMS@@QAEXXZ @ 30 NONAME ; void TMS::TMSProxy::Close(void)
+	??0TMSProxy@TMS@@QAE@XZ @ 31 NONAME ; TMS::TMSProxy::TMSProxy(void)
+	?SetOutput@TMSProxy@TMS@@QAEHH@Z @ 32 NONAME ; int TMS::TMSProxy::SetOutput(int)
+	?InitDTMFPlayer@TMSProxy@TMS@@QAEHH@Z @ 33 NONAME ; int TMS::TMSProxy::InitDTMFPlayer(int)
+	?DeinitRT@TMSProxy@TMS@@QAEHXZ @ 34 NONAME ; int TMS::TMSProxy::DeinitRT(void)
+	?CancelGlobalEffectNotifier@TMSProxy@TMS@@QAEHXZ @ 35 NONAME ; int TMS::TMSProxy::CancelGlobalEffectNotifier(void)
+	?GetMaxGain@TMSProxy@TMS@@QAEHAAI@Z @ 36 NONAME ; int TMS::TMSProxy::GetMaxGain(unsigned int &)
+	?StartGlobalEffectNotifier@TMSProxy@TMS@@QAEHXZ @ 37 NONAME ; int TMS::TMSProxy::StartGlobalEffectNotifier(void)
 
--- a/mmserv/tms/tmsproxy/eabi/tmsproxy.def	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsproxy/eabi/tmsproxy.def	Mon Oct 04 00:51:56 2010 +0300
@@ -25,19 +25,20 @@
 	_ZN3TMS8TMSProxy7GetGainERj @ 24 NONAME
 	_ZN3TMS8TMSProxy7PauseRTEv @ 25 NONAME
 	_ZN3TMS8TMSProxy7SetGainEj @ 26 NONAME
-	_ZN3TMS8TMSProxy8DeinitRTEv @ 27 NONAME
-	_ZN3TMS8TMSProxy8GetLevelERj @ 28 NONAME
-	_ZN3TMS8TMSProxy8SetLevelEj @ 29 NONAME
-	_ZN3TMS8TMSProxy8StopDTMFEi @ 30 NONAME
-	_ZN3TMS8TMSProxy9GetOutputERi @ 31 NONAME
-	_ZN3TMS8TMSProxy9SetOutputEi @ 32 NONAME
-	_ZN3TMS8TMSProxy9StartDTMFEiP8_GString @ 33 NONAME
-	_ZN3TMS8TMSProxyC1Ev @ 34 NONAME
-	_ZN3TMS8TMSProxyC2Ev @ 35 NONAME
-	_ZN3TMS8TMSProxyD0Ev @ 36 NONAME
-	_ZN3TMS8TMSProxyD1Ev @ 37 NONAME
-	_ZN3TMS8TMSProxyD2Ev @ 38 NONAME
-	_ZNK3TMS8TMSProxy7VersionEv @ 39 NONAME
-	_ZTIN3TMS8TMSProxyE @ 40 NONAME
-	_ZTVN3TMS8TMSProxyE @ 41 NONAME
+	_ZN3TMS8TMSProxy7TermSrvEv @ 27 NONAME
+	_ZN3TMS8TMSProxy8DeinitRTEv @ 28 NONAME
+	_ZN3TMS8TMSProxy8GetLevelERj @ 29 NONAME
+	_ZN3TMS8TMSProxy8SetLevelEj @ 30 NONAME
+	_ZN3TMS8TMSProxy8StopDTMFEi @ 31 NONAME
+	_ZN3TMS8TMSProxy9GetOutputERi @ 32 NONAME
+	_ZN3TMS8TMSProxy9SetOutputEi @ 33 NONAME
+	_ZN3TMS8TMSProxy9StartDTMFEiP8_GString @ 34 NONAME
+	_ZN3TMS8TMSProxyC1Ev @ 35 NONAME
+	_ZN3TMS8TMSProxyC2Ev @ 36 NONAME
+	_ZN3TMS8TMSProxyD0Ev @ 37 NONAME
+	_ZN3TMS8TMSProxyD1Ev @ 38 NONAME
+	_ZN3TMS8TMSProxyD2Ev @ 39 NONAME
+	_ZNK3TMS8TMSProxy7VersionEv @ 40 NONAME
+	_ZTIN3TMS8TMSProxyE @ 41 NONAME
+	_ZTVN3TMS8TMSProxyE @ 42 NONAME
 
--- a/mmserv/tms/tmsproxy/src/tmsproxy.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsproxy/src/tmsproxy.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -98,6 +98,7 @@
     if (iMsgQHandler)
         {
         iMsgQHandler->Cancel();
+        iMsgQHandler->RemoveObserver(*this);
         }
     delete iMsgQHandler;
     if (iMsgQueue.Handle() > 0)
@@ -252,7 +253,7 @@
         }
     else
         {
-        status = RSessionBase::SendReceive(ETMSSetOutput, TIpcArgs(output));
+        status = SendReceive(ETMSSetOutput, TIpcArgs(output));
         }
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
@@ -261,9 +262,9 @@
 EXPORT_C gint TMSProxy::GetOutput(TMSAudioOutput& output)
     {
     TRACE_PRN_FN_ENT;
-    TPckgBuf<guint> pckg;
+    TPckgBuf<gint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetOutput, args);
+    gint status = SendReceive(ETMSGetOutput, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         output = pckg();
@@ -277,7 +278,7 @@
     TRACE_PRN_FN_ENT;
     TPckgBuf<guint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetPreviousOutput, args);
+    gint status = SendReceive(ETMSGetPreviousOutput, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         output = pckg();
@@ -332,7 +333,7 @@
     TRACE_PRN_FN_ENT;
     TPckgBuf<guint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetGlobalVol, args);
+    gint status = SendReceive(ETMSGetGlobalVol, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         level = pckg();
@@ -346,7 +347,7 @@
     TRACE_PRN_FN_ENT;
     TPckgBuf<guint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetMaxGlobalVol, args);
+    gint status = SendReceive(ETMSGetMaxGlobalVol, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         level = pckg();
@@ -358,7 +359,7 @@
 EXPORT_C gint TMSProxy::SetLevel(guint level)
     {
     TRACE_PRN_FN_ENT;
-    gint status = RSessionBase::SendReceive(ETMSSetGlobalVol, TIpcArgs(level));
+    gint status = SendReceive(ETMSSetGlobalVol, TIpcArgs(level));
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
     }
@@ -368,7 +369,7 @@
     TRACE_PRN_FN_ENT;
     TPckgBuf<guint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetGlobalGain, args);
+    gint status = SendReceive(ETMSGetGlobalGain, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         level = pckg();
@@ -382,7 +383,7 @@
     TRACE_PRN_FN_ENT;
     TPckgBuf<guint> pckg;
     TIpcArgs args(&pckg);
-    gint status = RSessionBase::SendReceive(ETMSGetMaxGlobalGain, args);
+    gint status = SendReceive(ETMSGetMaxGlobalGain, args);
     if (status == TMS_RESULT_SUCCESS)
         {
         level = pckg();
@@ -394,7 +395,7 @@
 EXPORT_C gint TMSProxy::SetGain(guint level)
     {
     TRACE_PRN_FN_ENT;
-    gint status = RSessionBase::SendReceive(ETMSSetGlobalGain,
+    gint status = SendReceive(ETMSSetGlobalGain,
             TIpcArgs(level));
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
@@ -426,7 +427,7 @@
         {
         case TMS_RINGTONE_DEFAULT:
             {
-            status = RSessionBase::SendReceive(ETMSRingToneInitDefault, args);
+            status = SendReceive(ETMSRingToneInitDefault, args);
             break;
             }
         case TMS_RINGTONE_FILE:
@@ -445,8 +446,7 @@
                     p.Copy((TUint16*) str->str, unilen);
                     TIpcArgs args;
                     args.Set(0, &p);
-                    status = RSessionBase::SendReceive(ETMSRingToneInitFile,
-                            args);
+                    status = SendReceive(ETMSRingToneInitFile, args);
                     }
                 delete buf;
                 buf = NULL;
@@ -455,17 +455,17 @@
             }
         case TMS_RINGTONE_BEEP_ONCE:
             {
-            status = RSessionBase::SendReceive(ETMSRingToneInitBeepOnce);
+            status = SendReceive(ETMSRingToneInitBeepOnce);
             break;
             }
         case TMS_RINGTONE_SILENT:
             {
-            status = RSessionBase::SendReceive(ETMSRingToneInitSilent);
+            status = SendReceive(ETMSRingToneInitSilent);
             break;
             }
         case TMS_RINGTONE_UNSECURE_VOIP:
             {
-            status = RSessionBase::SendReceive(ETMSRingToneInitUnsecureVoIP);
+            status = SendReceive(ETMSRingToneInitUnsecureVoIP);
             break;
             }
         case TMS_RINGTONE_SEQUENCE:
@@ -481,8 +481,7 @@
                     p.Copy((TUint8*) str->str, len);
                     TIpcArgs args;
                     args.Set(0, &p);
-                    status = RSessionBase::SendReceive(
-                            ETMSRingToneInitSequence, args);
+                    status = SendReceive(ETMSRingToneInitSequence, args);
                     }
                 delete buf;
                 buf = NULL;
@@ -503,35 +502,35 @@
 EXPORT_C gint TMSProxy::DeinitRT()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSRingToneDeinit);
+    status = SendReceive(ETMSRingToneDeinit);
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::PlayRT()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSRingTonePlay);
+    status = SendReceive(ETMSRingTonePlay);
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::StopRT()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSRingToneStop);
+    status = SendReceive(ETMSRingToneStop);
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::PauseRT()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSRingTonePause);
+    status = SendReceive(ETMSRingTonePause);
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::MuteRT()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSRingToneMute);
+    status = SendReceive(ETMSRingToneMute);
     return TMSRESULT(status);
     }
 
@@ -540,7 +539,7 @@
     gint status(TMS_RESULT_SUCCESS);
     TIpcArgs args;
     args.Set(0, streamtype);
-    status = RSessionBase::SendReceive(ETMSInitDTMF, args);
+    status = SendReceive(ETMSInitDTMF, args);
     return TMSRESULT(status);
     }
 
@@ -563,7 +562,7 @@
         TIpcArgs args;
         args.Set(0, streamtype);
         args.Set(1, &p1);
-        status = RSessionBase::SendReceive(ETMSStartDTMF, args);
+        status = SendReceive(ETMSStartDTMF, args);
         }
     delete buf;
     buf = NULL;
@@ -575,7 +574,7 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSStopDTMF, TIpcArgs(streamtype));
+    status = SendReceive(ETMSStopDTMF, TIpcArgs(streamtype));
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
     }
@@ -584,8 +583,7 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSContinueDTMF,
-            TIpcArgs(continuesending));
+    status = SendReceive(ETMSContinueDTMF, TIpcArgs(continuesending));
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
     }
@@ -594,8 +592,7 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSStartInbandTone,
-            TIpcArgs(inbandtonetype));
+    status = SendReceive(ETMSStartInbandTone, TIpcArgs(inbandtonetype));
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
     }
@@ -604,7 +601,7 @@
     {
     TRACE_PRN_FN_ENT;
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSStopInbandTone);
+    status = SendReceive(ETMSStopInbandTone);
     TRACE_PRN_FN_EXT;
     return TMSRESULT(status);
     }
@@ -612,28 +609,28 @@
 EXPORT_C gint TMSProxy::StartGlobalEffectNotifier()
     {
     gint status(TMS_RESULT_SUCCESS);
-    RSessionBase::SendReceive(ETMSStartGlobalEffectNotifier); //CenRepHandler
+    SendReceive(ETMSStartGlobalEffectNotifier); //CenRepHandler
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::CancelGlobalEffectNotifier()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSCancelGlobalEffectNotifier);
+    status = SendReceive(ETMSCancelGlobalEffectNotifier);
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::StartRoutingNotifier()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSStartRoutingNotifier); //TAR
+    status = SendReceive(ETMSStartRoutingNotifier); //TAR
     return TMSRESULT(status);
     }
 
 EXPORT_C gint TMSProxy::CancelRoutingNotifier()
     {
     gint status(TMS_RESULT_SUCCESS);
-    status = RSessionBase::SendReceive(ETMSCancelRoutingNotifier);
+    status = SendReceive(ETMSCancelRoutingNotifier);
     return TMSRESULT(status);
     }
 
@@ -718,6 +715,19 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::TermSrv
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void TMSProxy::TermSrv()
+    {
+    SendReceive(ETMSTermSrv);
+    }
+
+// ---------------------------------------------------------------------------
+// TMSProxy::PopulateArrayL
+// ---------------------------------------------------------------------------
+//
 void TMSProxy::PopulateArrayL(TMSClientServerRequest aRequest,
         RArray<TUint32>& aDecoders, gint aCount)
     {
@@ -742,6 +752,10 @@
     CleanupStack::PopAndDestroy(buf);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::AddGlobalEffectObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::AddGlobalEffectObserver(TMSEffectObserver& obsrv,
         TMSEffect& parent, gint /*clientid*/)
     {
@@ -758,6 +772,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::RemoveGlobalEffectObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::RemoveGlobalEffectObserver(TMSEffectObserver& obsrv)
     {
     gint status(TMS_RESULT_SUCCESS);
@@ -774,6 +792,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::AddRoutingObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::AddRoutingObserver(TMSGlobalRoutingObserver& obsrv,
         TMSGlobalRouting& parent, gint /*clientid*/)
     {
@@ -790,6 +812,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::RemoveRoutingObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::RemoveRoutingObserver(TMSGlobalRoutingObserver& obsrv)
     {
     gint status(TMS_RESULT_SUCCESS);
@@ -806,6 +832,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::AddRingToneObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::AddRingToneObserver(TMSRingToneObserver& obsrv,
         TMSRingTone& parent, gint /*clientid*/)
     {
@@ -822,6 +852,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::RemoveRingToneObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::RemoveRingToneObserver(TMSRingToneObserver& obsrv)
     {
     gint status(TMS_RESULT_SUCCESS);
@@ -838,6 +872,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::AddDTMFObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::AddDTMFObserver(TMSDTMFObserver& obsrv, TMSDTMF& parent,
         gint /*clientid*/)
     {
@@ -855,6 +893,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::RemoveDTMFObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::RemoveDTMFObserver(TMSDTMFObserver& obsrv)
     {
     gint status(TMS_RESULT_SUCCESS);
@@ -871,6 +913,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::AddInbandToneObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::AddInbandToneObserver(TMSInbandToneObserver& obsrv,
         TMSInbandTone& parent, gint /*clientid*/)
     {
@@ -888,6 +934,10 @@
     return TMSRESULT(status);
     }
 
+// ---------------------------------------------------------------------------
+// TMSProxy::RemoveInbandToneObserver
+// ---------------------------------------------------------------------------
+//
 gint TMSProxy::RemoveInbandToneObserver(TMSInbandToneObserver& obsrv)
     {
     gint status(TMS_RESULT_SUCCESS);
@@ -922,8 +972,7 @@
                 {
                 TIpcArgs args;
                 args.Set(0, iMsgQueue);
-                status = RSessionBase::SendReceive(ETMSSetMsgQueueHandle,
-                        args);
+                status = SendReceive(ETMSSetMsgQueueHandle, args);
                 }
             }
         }
--- a/mmserv/tms/tmsserver/inc/tmsserver.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/inc/tmsserver.h	Mon Oct 04 00:51:56 2010 +0300
@@ -121,6 +121,8 @@
     void HandleNotifyPSL(const TUid aUid, const TInt& aKey,
                 const TRequestStatus& aStatus);
 
+    void TermSrv(const RMessage2& aMessage);
+
 private:
     static TMSServer* NewLC();
     TMSServer();
@@ -131,7 +133,6 @@
     TInt StartTMSCallServer(TMSCallProxyLocal& aHandle);
     void GetAvailableOutputsL(const RMessage2& aMessage);
     TInt SendMessageToCallServ(TInt func, TInt value);
-    TInt SendMessageToCallServ(TInt func, TIpcArgs args);
 
 private:
     TInt iSession;
@@ -173,7 +174,6 @@
 public:
     TInt Open(RServer2& aTMSCallServerHandle);
     TInt SendToCallServer(TInt aFunc, TUint value);
-    TInt SendToCallServer(TInt aFunc, TIpcArgs args);
     TInt ReceiveFromCallServer(TInt aFunc, TUint& value);
     TInt ReceiveFromCallServer(TInt aFunc, TIpcArgs args);
     };
--- a/mmserv/tms/tmsserver/src/tmsdtmftoneplayer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/src/tmsdtmftoneplayer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -56,6 +56,8 @@
     TRACE_PRN_FN_ENT;
     Cancel();
     delete iDTMFPlayer;
+    // Release memory and close handles to unused plug-ins held by the DevSound
+    REComSession::FinalClose();
     TRACE_PRN_FN_EXT;
     }
 
--- a/mmserv/tms/tmsserver/src/tmsrtaudiohdlr.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/src/tmsrtaudiohdlr.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -226,10 +226,15 @@
     delete i3DPlugin;
     delete iAudioOutput;*/
     delete iTonePlayer;
+    iTonePlayer = NULL;
     delete iSamplePlayer;
+    iSamplePlayer = NULL;
     delete iTtsPlayer;
+    iTtsPlayer = NULL;
     delete iSequence;
+    iSequence = NULL;
     delete iTtsText;
+    iTtsText = NULL;
     REComSession::FinalClose();
     TRACE_PRN_FN_EXT;
     }
--- a/mmserv/tms/tmsserver/src/tmsrtplayer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/src/tmsrtplayer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -49,15 +49,10 @@
 _LIT(KTMSTtsHeader, "(tts)");
 
 #ifdef __WINSCW__
-//_LIT(KTMSDefaultSoundFile, "z:\\data\\sounds\\digital\\Nokia_tune.aac");
-_LIT(KTMSDefaultSoundFile, "Z:\\Data\\Sounds\\Digital\\Nokia tune.aac");
-//_LIT(KTMSDefaultSoundFile, "c:\\data\\sounds\\digital\\test_8khz.wav");
-_LIT(KTMSNoSoundSequence,  "z:\\data\\sounds\\digital\\clock.aac");
-//_LIT(KTMSNoSoundSequence, "c:\\data\\sounds\\digital\\test_8khz.wav");
-_LIT(KTMSBeepSequence,     "z:\\data\\sounds\\digital\\clock.aac");
-//_LIT(KTMSBeepSequence, "c:\\data\\sounds\\digital\\test_8khz.wav");
+_LIT(KTMSDefaultSoundFile, "z:\\data\\sounds\\digital\\Nokia_tune.aac");
+_LIT(KTMSNoSoundSequence,  "z:\\data\\sounds\\digital\\alarm.aac");
+_LIT(KTMSBeepSequence,     "z:\\data\\sounds\\digital\\alarm.aac");
 _LIT(KTMSUnsecureVoIPCall, "z:\\data\\sounds\\digital\\alarm.aac");
-//_LIT(KTMSUnsecureVoIPCall, "c:\\data\\sounds\\digital\\test_8khz.wav");
 #else
 // DO NOT change these sequences!
 _LIT(KTMSDefaultSoundFile, "\\System\\Sounds\\Simple\\Nokia tune.wav");
@@ -143,10 +138,15 @@
         }
     RemovePlayers();
     delete iBackupPlayer;
+    iBackupPlayer = NULL;
     delete iAsyncReqAO;
+    iAsyncReqAO = NULL;
     delete iTimer;
+    iTimer = NULL;
     delete iTtsDelayTimer;
+    iTtsDelayTimer = NULL;
     delete iRtContainer;
+    iRtContainer = NULL;
 
     TRACE_PRN_FN_EXT;
     }
--- a/mmserv/tms/tmsserver/src/tmsserver.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/src/tmsserver.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -143,7 +143,7 @@
     iDTMFUplinkPlayer = NULL;
     iDTMFUplinkPlayerEtel = NULL;
     iActiveCallType = -1;
-    iSyncVol = TMSPubSubListener::NewL(KTMSPropertyCategory,ESyncVolume, this);
+    iSyncVol = TMSPubSubListener::NewL(KTMSPropertyCategory, ESyncVolume, this);
 
     //TODO: EUnit fails to initialize ProfileEngine in RT in eshell mode
     TRAP_IGNORE(InitRingTonePlayerL());
@@ -178,7 +178,7 @@
     iSession--;
 
     // If session count is zero, start server shutdown
-    if (iSession == 0)
+    if (iSession <= 0 && iShutdownTimer)
         {
         iShutdownTimer->SetDelay(TTimeIntervalMicroSeconds32(
                 KTMSShutDownDelayTime));
@@ -256,28 +256,31 @@
             count = iTMSCallServList.Count();
 
             iTMSCallServList[count - 1]->iTMSCallProxyLocal = aHandle;
+            FindActiveCallType();
 
-            //cache global vol and global gain to call server thread.
-            TInt volume;
-            switch (iCurrentRouting)
+            if (iActiveCallType == TMS_CALL_CS)
                 {
-                case TMS_AUDIO_OUTPUT_PUBLIC:
-                case TMS_AUDIO_OUTPUT_LOUDSPEAKER:
+                //cache global vol and global gain to call server thread.
+                TInt volume;
+                switch (iCurrentRouting)
                     {
-                    iEffectSettings->GetLoudSpkrVolume(volume);
-                    TRACE_PRN_N1(_L("loudspk vol %d"),volume);
+                    case TMS_AUDIO_OUTPUT_LOUDSPEAKER:
+                        {
+                        iEffectSettings->GetLoudSpkrVolume(volume);
+                        TRACE_PRN_N1(_L("loudspk vol %d"),volume);
+                        }
+                        break;
+                    default:
+                        {
+                        iEffectSettings->GetEarPieceVolume(volume);
+                        TRACE_PRN_N1(_L("ear vol %d"),volume);
+                        }
+                        break;
                     }
-                    break;
-                default:
-                    {
-                    iEffectSettings->GetEarPieceVolume(volume);
-                    TRACE_PRN_N1(_L("ear vol %d"),volume);
-                    }
-                    break;
+                aHandle.SendToCallServer(TMS_EFFECT_GLOBAL_VOL_SET, volume);
+                aHandle.SendToCallServer(TMS_EFFECT_GLOBAL_GAIN_SET,
+                        iEffectSettings->Gain());
                 }
-            aHandle.SendToCallServer(TMS_EFFECT_GLOBAL_VOL_SET, volume);
-            aHandle.SendToCallServer(TMS_EFFECT_GLOBAL_GAIN_SET,
-                    iEffectSettings->Gain());
             }
         else
             {
@@ -753,45 +756,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSServer::SendMessageToCallServ
-//
-// -----------------------------------------------------------------------------
-//
-TInt TMSServer::SendMessageToCallServ(TInt func, TIpcArgs args)
-    {
-    TRACE_PRN_FN_ENT;
-
-    TInt status(TMS_RESULT_SUCCESS);
-    TInt i = 0;
-    while (i < iTMSCallServList.Count())
-        {
-        TMSStartAndMonitorTMSCallThread* callThread = iTMSCallServList[i];
-
-        if (callThread)
-            {
-            if (!callThread->IsActive())
-                {
-                iTMSCallServList.Remove(i);
-                delete callThread;
-                }
-            else
-                {
-                status = callThread->iTMSCallProxyLocal.SendToCallServer(
-                        func, args);
-                if (status != TMS_RESULT_SUCCESS)
-                    {
-                    break;
-                    }
-                }
-            }
-        i++;
-        }
-
-    TRACE_PRN_FN_EXT;
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSServer::NotifyTarClients
 //
 // -----------------------------------------------------------------------------
@@ -806,10 +770,9 @@
 
     if (iActiveCallType == TMS_CALL_CS)
         {
-
         iCurrentRouting = routingpckg().iOutput;
-        if (iCurrentRouting == TMS_AUDIO_OUTPUT_PUBLIC || 
-        	  iCurrentRouting == TMS_AUDIO_OUTPUT_LOUDSPEAKER)
+        if (iCurrentRouting == TMS_AUDIO_OUTPUT_PUBLIC ||
+                iCurrentRouting == TMS_AUDIO_OUTPUT_LOUDSPEAKER)
             {
             iEffectSettings->GetLoudSpkrVolume(vol);
             TRACE_PRN_N1(_L("TMSServer::NotifyTarClients loudspkr vol %d"),vol);
@@ -979,8 +942,7 @@
             iDTMFUplinkPlayer->Cancel();
             status = TMS_RESULT_SUCCESS;
             }
-        else if (iActiveCallType == TMS_CALL_CS &&
-                iDTMFUplinkPlayerEtel)
+        else if (iActiveCallType == TMS_CALL_CS && iDTMFUplinkPlayerEtel)
             {
             status = iDTMFUplinkPlayerEtel->StopDtmfTone();
             status = TMSUtility::EtelToTMSResult(status);
@@ -1430,11 +1392,11 @@
 //
 // -----------------------------------------------------------------------------
 //
-void TMSServer::HandleNotifyPSL(const TUid aUid, const TInt& aKey,
-            const TRequestStatus& aStatus)
+void TMSServer::HandleNotifyPSL(const TUid /*aUid*/, const TInt& /*aKey*/,
+        const TRequestStatus& /*aStatus*/)
     {
     TRACE_PRN_FN_ENT;
-    if(iEffectSettings)
+    if (iEffectSettings)
         {
         iEffectSettings->ResetDefaultVolume();
         }
@@ -1476,6 +1438,57 @@
     }
 
 // -----------------------------------------------------------------------------
+// TMSServer::TerminateServer
+//
+// -----------------------------------------------------------------------------
+//
+void TMSServer::TermSrv(const RMessage2& aMessage)
+    {
+    TRACE_PRN_FN_ENT;
+
+    // First, make sure request comes from a legitimate source
+
+    // Level 1 - check process capability
+    //TBool allow = aMessage.HasCapability(ECapabilityTCB);
+    TBool allow = aMessage.HasCapability(ECapabilityPowerMgmt);
+
+    if (allow)
+        {
+        // Level 2 - check Vendor ID
+        _LIT_VENDOR_ID(AllowId, VID_DEFAULT);
+        allow = (aMessage.VendorId() == AllowId) ? ETrue : EFalse;
+        }
+  /*if (allow)
+        {
+        // Level 3 - check SecureID of the process
+        TUid uid = ALLOWED_UID;
+        allow = ((static_cast<TUid> (aMessage.SecureId()) == uid)) ? ETrue : EFalse;
+        }*/
+
+    aMessage.Complete(TMS_RESULT_SUCCESS);
+
+    if (allow)
+        {
+        TRACE_PRN_N(_L("TMS->Server going down!"));
+        SendMessageToCallServ(TMS_TERM_CALL_SRV, 0);
+
+        TMSServerSession *session;
+        iSessionIter.SetToFirst();
+
+        for (;;)
+            {
+            session = static_cast<TMSServerSession*> (iSessionIter++);
+            if (!session)
+                {
+                break;
+                }
+            delete session;
+            }
+        }
+    TRACE_PRN_FN_EXT;
+    }
+
+// -----------------------------------------------------------------------------
 // TMSStartAndMonitorTMSCallThread::TMSStartAndMonitorTMSCallThread
 // Perhaps we need to move this to a .cpp?
 // -----------------------------------------------------------------------------
@@ -1548,13 +1561,9 @@
     const TUidType serverUid(KNullUid, KNullUid, KUidTMSCallServerUid3);
     TThreadFunction serverFunc = TMSCallServer::StartThread;
 
-    status = iServerThread.Create(_L(""),
-                                  serverFunc,
-                                  KTMSCallServerStackSize,
-                                  KTMSCallServerInitHeapSize,
-                                  KTMSCallServerMaxHeapSize,
-                                  &start,
-                                  EOwnerProcess);
+    status = iServerThread.Create(_L(""), serverFunc, KTMSCallServerStackSize,
+            KTMSCallServerInitHeapSize, KTMSCallServerMaxHeapSize, &start,
+            EOwnerProcess);
 
     if (status != TMS_RESULT_SUCCESS)
         {
@@ -1642,12 +1651,9 @@
     TRACE_PRN_FN_ENT;
 
     TInt status(KErrNotSupported);
-    status = CreateSession(aTMSCallServerHandle,
-                           TVersion(KTMSCallServerMajorVersionNumber,
-                                    KTMSCallServerMinorVersionNumber,
-                                    KTMSCallServerBuildVersionNumber),
-                           -1,
-                           EIpcSession_GlobalSharable);
+    status = CreateSession(aTMSCallServerHandle, TVersion(
+            KTMSCallServerMajorVersionNumber, KTMSCallServerMinorVersionNumber,
+            KTMSCallServerBuildVersionNumber), -1, EIpcSession_GlobalSharable);
     TRACE_PRN_FN_EXT;
     return status;
     }
@@ -1665,18 +1671,6 @@
     }
 
 // -----------------------------------------------------------------------------
-// TMSCallProxyLocal::SendToCallServer
-//
-// -----------------------------------------------------------------------------
-//
-TInt TMSCallProxyLocal::SendToCallServer(TInt aFunc, TIpcArgs args)
-    {
-    TInt status(TMS_RESULT_SUCCESS);
-    status = SendReceive(aFunc, args);
-    return status;
-    }
-
-// -----------------------------------------------------------------------------
 // TMSCallProxyLocal::ReceiveFromCallServer
 //
 // -----------------------------------------------------------------------------
--- a/mmserv/tms/tmsserver/src/tmsserversession.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/tms/tmsserver/src/tmsserversession.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -248,6 +248,9 @@
         case ETMSStopInbandTone:
             StopInbandTone(aMessage);
             break;
+        case ETMSTermSrv:
+            iServer.TermSrv(aMessage);
+            break;
         default:
             User::Leave(KErrNotSupported);
             break;
--- a/mmserv/voipaudioservices/JitterBufferUtility/inc/CngGenerator.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/inc/CngGenerator.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2008 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:  Declares class for comfort noise generating utility (CNG)
-*
-*/
-
+ * Copyright (c) 2008 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:  Declares class for comfort noise generating utility (CNG)
+ *
+ */
 
 #ifndef CNGGENERATOR_H
 #define CNGGENERATOR_H
@@ -28,28 +27,28 @@
  * Comfort noise generating utility
  *
  * @lib MMccJitterBuffer.lib
- * @since Series 60 5.0
  */
 NONSHARABLE_CLASS (CVoIPCNGenerator) : public CBase
     {
-public:  // Constructor and destructor
+public:
+    // Constructor and destructor
 
     /**
      * Two phased constructor
      */
     static CVoIPCNGenerator* NewL(MJitterBufferObserver* iObserver,
-                                  const TFourCC& aCodec);
+            const TFourCC& aCodec);
 
     /**
      * Destructor
      */
     virtual ~CVoIPCNGenerator();
 
-public: // New functions
+public:
+    // New functions
 
     /**
      * Generates an SID packet to given buffer
-     * @since Series 60 5.0
      * @param aPayload Buffer to be filled with SID data
      * @param aRequestSize Amount of data to be generated to buffer.
      * @return void
@@ -58,15 +57,14 @@
 
     /**
      * Requests error concealment for the next frame.
-     * @since Series 60 5.0
      * @param None
      * @return void
      */
     void ConcealErrorForNextFrame() const;
 
+#ifdef __FEATURE_NOT_SUPPORTED__
     /**
      * Returns current DTX status
-     * @since Series 60 5.0
      * @param None
      * @return TBool ETrue if DTX period ongoing
      */
@@ -74,7 +72,6 @@
 
     /**
      * Decide whether we are in DTX period or in normal speech period
-     * @since Series 60 5.0
      * @param const TDes8& - Buffer containing data
      * @return TInt
      */
@@ -82,17 +79,19 @@
 
     /**
      * Checks whether buffer contains SID frame.
-     * @since Series 60 5.0
+     *
      * @param const TDes8& - Buffer containing data
      * @return TBool - ETrue if buffer contains SID frame
      */
     TBool IsSidBuffer(const TDes8& aData);
-        
-private: // New functions
+#endif //__FEATURE_NOT_SUPPORTED__
+
+private:
+    // New functions
 
     /**
      * Generates an AMR CN packet into aPayload
-     * @since Series 60 5.0
+     *
      * @param aPayload
      * @return void
      */
@@ -100,14 +99,15 @@
 
     /**
      * Generates an VoIP NO_DATA frame into aPayload
-     * @since Series 60 5.0
+     *
      * @param aPayload Buffer to be filled with VoIP NO_DATA information
      * @param aRequestSize Amount of data to be generated to buffer.
      * @return void
      */
     void GenerateVoIPNoDataPacket(TDes8& aPayload, TInt aRequestSize) const;
 
-private: //Constructors
+private:
+    //Constructors
 
     /**
      * C++ default constructor.
@@ -119,7 +119,8 @@
      */
     void ConstructL();
 
-private:    // Data
+private:
+    // Data
 
     // Codec type
     TFourCC iCodec;
@@ -132,10 +133,8 @@
 
     // DTX period started
     TBool iDtxPeriodStarted;
-
     };
 
 #endif  // CNGGENERATOR_H
 
-
 // End of file
--- a/mmserv/voipaudioservices/JitterBufferUtility/inc/InternalDef.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/inc/InternalDef.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,23 @@
 /*
-* Copyright (c) 2008 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:  Mcc Internal definitions
-*
-*/
-
-
+ * Copyright (c) 2008 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:  Mcc Internal definitions
+ *
+ */
 
 #ifndef INTERNALDEF_H
 #define INTERNALDEF_H
 
-
 // CONSTANTS
 // When the remote end sends us SID/CN frames, then we can update the SID/CN
 // parameters programmatically. Otherwise, we should not try to "emulate"
@@ -63,30 +60,28 @@
 //const TUint8 KVoIPAudioFrame = 1;
 const TUint8 KVoIPCNFrame = 2;
 
-
 const TUint KJBAdaptUpdateIval = 250;
 const TUint KJBMillisecondsToMicroseconds = 1000;
 const TUint KJBEmptyBufferDelay = 2;
 
-const TInt  KDefaultSampleRateInkHz = 8;
-const TInt  KLowBufferLimit = 2;
-const TInt  KOverflowAlarmLimit = 20;
+const TInt KDefaultSampleRateInkHz = 8;
+const TInt KLowBufferLimit = 2;
+const TInt KOverflowAlarmLimit = 20;
 
 // Codec frame sizes
-const TInt  KAMRNBFrameSize = 32;
-const TInt  KILBCFrameSize  = 52;
-const TInt  KG729FrameSize  = 24;       // 10 octets + 2 for header
+const TInt KAMRNBFrameSize = 32;
+const TInt KILBCFrameSize = 52;
+const TInt KG729FrameSize = 24; // 10 octets + 2 for header
 
 // Max possible sequence number of RTP packet with standard RTP header.
-const TUint KMaxSeqNumber   = 0xFFFF;   // 16-bit value
+const TUint KMaxSeqNumber = 0xFFFF; // 16-bit value
 
 // Codec frame times
-const TInt  KAMRNBFrameTime = 20;
+const TInt KAMRNBFrameTime = 20;
 
 // VoIP codecs have a two byte header
-const TInt  KVoIPHeaderLength = 2;
+const TInt KVoIPHeaderLength = 2;
 
 #endif //INTERNALDEF_H
 
-
 // End of file
--- a/mmserv/voipaudioservices/JitterBufferUtility/inc/JitterBufferImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/inc/JitterBufferImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,25 +1,23 @@
 /*
-* Copyright (c) 2008 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:  Jitter buffer for Audio frames.
-*  Interface   : VoIPJitterBuffer.lib
-*
-*/
+ * Copyright (c) 2008 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:  Jitter buffer for Audio frames.
+ *  Interface   : VoIPJitterBuffer.lib
+ *
+ */
 
-
-
-#ifndef __VOIPJITTERBUFFERIMPL_H
-#define __VOIPJITTERBUFFERIMPL_H
+#ifndef VOIPJITTERBUFFERIMPL_H
+#define VOIPJITTERBUFFERIMPL_H
 
 //  INCLUDES
 #include <voipjitterbufferintfc.h>
@@ -34,39 +32,43 @@
  *  Jitter buffer element including packet received.
  *
  *  @lib VoIPJitterBuffer.lib
- *  @since Series 60 5.0
  */
 class TJitterBufferElement
     {
-public: // Constructor
-    inline TJitterBufferElement() : iDataFrame(NULL),
-                                    iSequenceNumber(-1),
-                                    iTimeStamp(-1) {}
+public:
+    // Constructor
+    inline TJitterBufferElement() :
+        iDataFrame(NULL),
+        iSequenceNumber(-1),
+        iTimeStamp(-1) {}
 
-public: // Methods
+public:
+    // Methods
 
     /**
      * Compares two elements based on their sequence number
-     * @since Series 60 5.0
+     *
      * @param aElem1 First element
      * @param aElem2 Second element
      * @return TInt
      */
     static TInt CompareSeqNum(const TJitterBufferElement& aElem1,
-                              const TJitterBufferElement& aElem2);
+            const TJitterBufferElement& aElem2);
 
     /**
      * Compares two elements based on their stamps
-     * @since Series 60 5.0
+     *
      * @param aElem1 First element
      * @param aElem2 Second element
      * @return TInt
      */
     static TInt CompareStamp(const TJitterBufferElement& aElem1,
-                             const TJitterBufferElement& aElem2);
+            const TJitterBufferElement& aElem2);
 
-public: // Data members
-    // Data
+public:
+    // Data members
+
+    // Data buffer
     CMMFDataBuffer* iDataFrame;
 
     // Data packet number
@@ -74,19 +76,17 @@
 
     // Time stamp
     TInt64 iTimeStamp;
-
     };
 
-
 /**
  *  Jitter buffer.
  *
  *  @lib VoIPJitterBuffer.lib
- *  @since Series 60 5.0
  */
 class CVoIPJitterBufferImpl : public CBase
     {
-public: // Constructors and destructor
+public:
+    // Constructors and destructor
 
     /**
      * Two-phased constructor.
@@ -98,11 +98,12 @@
      */
     virtual ~CVoIPJitterBufferImpl();
 
-public: // Methods
+public:
+    // Methods
 
     /**
      * Setup jitterbuffer
-     * @since Series 60 5.0
+     *
      * @param parameters
      * @return void
      */
@@ -110,7 +111,7 @@
 
     /**
      * Reset buffer
-     * @since Series 60 5.0
+     *
      * @param aPlayTone ETrue, if tone is to played
      * @return void
      */
@@ -118,7 +119,7 @@
 
     /**
      * Add DataFrame to buffer
-     * @since Series 60 5.0
+     *
      * @param aBuffer Buffer to read data from
      * @return void
      */
@@ -126,7 +127,7 @@
 
     /**
      * Get DataFrame from buffer
-     * @since Series 60 5.0
+     *
      * @param aBuffer Buffer to write data to
      * @return TInt
      */
@@ -134,7 +135,7 @@
 
     /**
      * Get Current Codec
-     * @since Series 60 5.0
+     *
      * @param None
      * @return TFourCC
      */
@@ -142,7 +143,7 @@
 
     /**
      * Delay Up
-     * @since Series 60 5.0
+     *
      * @param None
      * @return void
      */
@@ -150,39 +151,43 @@
 
     /**
      * Decreases jitter buffer delay
-     * @since Series 60 5.0
+     *
      * @param None
      * @return void
      */
     void DelayDownL();
 
+#ifdef __FEATURE_NOT_SUPPORTED__
     /**
      * ?Description
-     * @since Series 60 5.0
+     *
      * @param None
      * @return TTimeIntervalMicroSeconds32
      */
     TTimeIntervalMicroSeconds32 CalculateDelay() const;
+#endif //__FEATURE_NOT_SUPPORTED__
 
     /**
      * Get the length of jitter buffer, in terms of number of packets.
-     * @since Series 60 5.0
+     *
      * @param none
      * @return buffer lenght.
      */
     TInt BufferLength() const;
 
+#ifdef __FEATURE_NOT_SUPPORTED__
     /**
      * Get number of packets that are currently inside the buffer.
-     * @since Series 60 5.0
+     *
      * @param none
      * @return Number of packet in buffer.
      */
     TInt PacketCount() const;
+#endif //__FEATURE_NOT_SUPPORTED__
 
     /**
      * Fills the given event with statistics of the jitterbuffer
-     * @since Series 60 5.0
+     *
      * @param aEvent Event into which set the statistics
      * @return void
      */
@@ -200,11 +205,12 @@
      */
     void ConstructL();
 
-private: // New functions
+private:
+    // New functions
 
     /**
      * Is sequence number wrapped around TUint16 65535->0
-     * @since Series 60 5.0
+     *
      * @param TInt aSeqNum1 is oldest packet sequence number in buffer
      * @param TInt aSeqNum2 is new element sequence number to buffer
      * @return detect the wrap-around condition.
@@ -213,7 +219,7 @@
 
     /**
      * Find Largest SequenceNumber
-     * @since Series 60 5.0
+     *
      * @param None
      * @return TUint Largest sequence number
      */
@@ -221,7 +227,7 @@
 
     /**
      * Inserts a databuffer into the jitter buffer
-     * @since Series 60 5.0
+     *
      * @param aBuffer Buffer containing the data
      * @param aLargestSeqNum Largest sequence number returned by
      *                       FindLargestSeqNum()
@@ -231,7 +237,7 @@
 
     /**
      * Is jitter buffer full?
-     * @since Series 60 5.0
+     *
      * @param none
      * @return True if full.
      */
@@ -239,7 +245,7 @@
 
     /**
      * Is jitter buffer empty?
-     * @since Series 60 5.0
+     *
      * @param none
      * @return True if empty.
      */
@@ -247,14 +253,15 @@
 
     /**
      * CheckThresholdBufferLength
-     * @since Series 60 5.0
+     *
      * @param none
      * @return void
      */
     void CheckThresholdBufferLength(TInt& aBufferLength,
-                                    const TInt aTreshhold) const;
+            const TInt aTreshhold) const;
 
-private: // Data
+private:
+    // Data
 
     // Playout thresholds
     TInt iCurrentPlayThreshold;
@@ -284,20 +291,20 @@
     TVoIPJBConfig iJBConfig;
 
     // Codec frame size
-    TInt  iFrameSize;
+    TInt iFrameSize;
 
     // Encoded frame sample interval
-    TInt  iSampleInterval;
+    TInt iSampleInterval;
 
     // Increment in frame sequence number
     TUint iSeqNumIncrement;
-    
+
     TBool iIsWrappedAround;
 
     MJitterBufferObserver* iObserver;
     CMMFDataBuffer* iDataBuffer;
 
-// These are mainly for statistical purpose
+    // These are mainly for statistical purpose
 
     // Number of frames totally lost
     TUint iFramesLost;
@@ -321,16 +328,15 @@
     TUint iOverflowCounter;
 
     // Jitter buffer inctivity time
-    TInt  iInactivityTime;
+    TInt iInactivityTime;
 
-// These are for tone playback
-    TInt  iPlayToneInterval;
+    // These are for tone playback
+    TInt iPlayToneInterval;
     TTime iTonePlayTime;
-    TInt  iSampleRate;
+    TInt iSampleRate;
     TBool iPlay;
-
     };
 
-#endif  //__VOIPJITTERBUFFERIMPL_H
+#endif  //VOIPJITTERBUFFERIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/JitterBufferUtility/src/CngGenerator.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/src/CngGenerator.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,21 +1,19 @@
 /*
-* Copyright (c) 2008 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:  Comfort noise generator of MCC jitterbuffer
-*
-*/
-
-
+ * Copyright (c) 2008 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:  Comfort noise generator of MCC jitterbuffer
+ *
+ */
 
 // INCLUDE FILES
 #include <mmcccodecinformation.h> //codec FourCC declarations
@@ -25,14 +23,13 @@
 #include "JitterBufferObserver.h"
 #include "CngGenerator.h"
 
-
 // -----------------------------------------------------------------------------
 // CVoIPCNGenerator::NewL
 // Static constructor.
 // -----------------------------------------------------------------------------
 //
 CVoIPCNGenerator* CVoIPCNGenerator::NewL(MJitterBufferObserver* aObserver,
-                                         const TFourCC& aCodec)
+        const TFourCC& aCodec)
     {
     CVoIPCNGenerator* self = new (ELeave) CVoIPCNGenerator(aObserver, aCodec);
     CleanupStack::PushL(self);
@@ -47,7 +44,7 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPCNGenerator::CVoIPCNGenerator(MJitterBufferObserver* aObserver,
-                                   const TFourCC& aCodec)
+        const TFourCC& aCodec)
     {
     iObserver = aObserver;
     iCodec = aCodec;
@@ -88,8 +85,6 @@
 //
 void CVoIPCNGenerator::GenerateSidPacket(TDes8& aPayload, TInt aRequestSize)
     {
-//    TRACE_PRN_FN_ENT;
-
     if (aRequestSize > aPayload.MaxLength())
         {
         TRACE_PRN_N(_L("CVoIPCNGenerator::GenerateSidPacket->Adjust Size"));
@@ -114,8 +109,6 @@
         {
         GenerateVoIPNoDataPacket(aPayload, aRequestSize);
         }
-
-//    TRACE_PRN_FN_EXT;
     }
 
 // -----------------------------------------------------------------------------
@@ -125,15 +118,12 @@
 //
 void CVoIPCNGenerator::GenerateAmrNoDataPacket(TDes8& aPayload) const
     {
-//    TRACE_PRN_FN_ENT;
 
     if (aPayload.MaxLength() >= KNoDataLength)
         {
         aPayload.Copy(&KAmrNoDataFrame, KNoDataLength);
         }
-
-//    TRACE_PRN_FN_EXT;
-    };
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPCNGenerator::GenerateVoIPNoDataPacket
@@ -141,9 +131,8 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPCNGenerator::GenerateVoIPNoDataPacket(TDes8& aPayload,
-                                                TInt aRequestSize) const
+        TInt aRequestSize) const
     {
-//    TRACE_PRN_FN_ENT;
 
     aPayload.FillZ(aRequestSize);
 
@@ -151,9 +140,7 @@
         {
         ConcealErrorForNextFrame();
         }
-
-//    TRACE_PRN_FN_EXT;
-    };
+    }
 
 // -----------------------------------------------------------------------------
 // CVoIPCNGenerator::ConcealErrorForNextFrame
@@ -165,6 +152,7 @@
     iObserver->EventJB(MJitterBufferObserver::EConcealErrorForNextBuffer);
     }
 
+#ifdef __FEATURE_NOT_SUPPORTED__
 // -----------------------------------------------------------------------------
 // CVoIPCNGenerator::DtxPeriodStatus
 // Returns DTX status
@@ -182,8 +170,6 @@
 //
 void CVoIPCNGenerator::DoDtxDecision(const TDes8& aData)
     {
-//    TRACE_PRN_FN_ENT;
-
     if (aData.Length() > KMinDataLenForDtx)
         {
         if (IsSidBuffer(aData))
@@ -200,8 +186,6 @@
             TRACE_PRN_N(_L("JB-CNG-> DTX_END"));
             }
         }
-
-//    TRACE_PRN_FN_EXT;
     }
 
 // -----------------------------------------------------------------------------
@@ -211,7 +195,6 @@
 //
 TBool CVoIPCNGenerator::IsSidBuffer(const TDes8& aData)
     {
-//    TRACE_PRN_FN_ENT;
     TBool status = ETrue;
 
     switch (iCodec.FourCC())
@@ -219,7 +202,7 @@
         case KMccFourCCIdAMRNB:
             {
             // Get AMR mode by bit-masking first byte and shifting
-            const TUint8 mode((aData[0] & KAmrModeMask) >> KModeShiftBits); 
+            const TUint8 mode((aData[0] & KAmrModeMask) >> KModeShiftBits);
             if (mode == KAmrSidMode)
                 {
                 status = ETrue;
@@ -255,9 +238,8 @@
             TRACE_PRN_N(_L("JB-CNG-> SID-UNKNOWN"));
             }
         }
-
-//    TRACE_PRN_FN_EXT;
     return status;
     }
+#endif //__FEATURE_NOT_SUPPORTED__
 
 //  End of File
--- a/mmserv/voipaudioservices/JitterBufferUtility/src/JitterBuffer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/src/JitterBuffer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2008 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:  JitterBuffer component capable to audioframe buffering.
-*
-*/
-
+ * Copyright (c) 2008 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:  JitterBuffer component capable to audioframe buffering.
+ *
+ */
 
 // INCLUDE FILES
 #include <e32base.h>
@@ -25,7 +24,6 @@
 #include "JitterBufferImpl.h"
 #include "JitterBuffer.h"
 
-
 // -----------------------------------------------------------------------------
 // CVoIPJitterBuffer::CVoIPJitterBuffer
 // C++ default constructor can NOT contain any code, that
@@ -47,7 +45,7 @@
 // -----------------------------------------------------------------------------
 //
 EXPORT_C CVoIPJitterBuffer* CVoIPJitterBuffer::NewL(
-                                               MJitterBufferObserver* aObserver)
+        MJitterBufferObserver* aObserver)
     {
     CVoIPJitterBuffer* self = new (ELeave) CVoIPJitterBuffer(aObserver);
     CleanupStack::PushL(self);
@@ -93,7 +91,7 @@
 // -----------------------------------------------------------------------------
 //
 EXPORT_C void CVoIPJitterBuffer::SetupL(const TFourCC aCodec,
-                                        const TVoIPJBConfig& aJBConfig)
+        const TVoIPJBConfig& aJBConfig)
     {
     TRACE_PRN_FN_ENT;
 
@@ -107,8 +105,8 @@
     if (iJitterBufferImpl)
         {
         iJitterBufferImpl->SetupL(aCodec, aJBConfig);
-        iSampleInterval =
-                aJBConfig.iSampleInterval * KJBMillisecondsToMicroseconds;
+        iSampleInterval = aJBConfig.iSampleInterval *
+                KJBMillisecondsToMicroseconds;
 
         // Cannot use with G711 as it asks buffers in uncontrolled manner
         // TODO: change the logic so that it inspects what happens in long
@@ -225,8 +223,6 @@
 //
 EXPORT_C TInt CVoIPJitterBuffer::FillBuffer(CMMFBuffer* aBuffer)
     {
-//    TRACE_PRN_FN_ENT;
-
     TInt err = KErrNone;
 
     if (iJitterBufferImpl && iJitterBufferImpl->BufferLength())
@@ -252,7 +248,6 @@
         iObserver->EventJB(MJitterBufferObserver::EGeneralError, err);
         }
 
-//    TRACE_PRN_FN_EXT;
     return err;
     }
 
@@ -267,7 +262,6 @@
 //
 EXPORT_C TInt CVoIPJitterBuffer::EmptyBuffer(CMMFBuffer* aBuffer)
     {
-//    TRACE_PRN_FN_ENT;
     TInt err = KErrNotReady;
 
     if (iJitterBufferImpl && (iState == EJBufPlaying))
@@ -277,8 +271,8 @@
             return err;
             }
 
-//        TRACE_PRN_N1(_L("JB-> BUF Size: [%d]"), aBuffer->BufferSize());
-//        TRACE_PRN_N1(_L("JB-> REQ Size: [%d]"), aBuffer->RequestSize());
+        //TRACE_PRN_N1(_L("JB-> BUF Size: [%d]"), aBuffer->BufferSize());
+        //TRACE_PRN_N1(_L("JB-> REQ Size: [%d]"), aBuffer->RequestSize());
 
         // Adaptation control will be done based on played frames
         err = iJitterBufferImpl->AddDataFrame(aBuffer);
@@ -287,7 +281,6 @@
     iObserver->EventJB(MJitterBufferObserver::EBufferConsumed);
 
     TRACE_PRN_IF_ERR(err);
-//    TRACE_PRN_FN_EXT;
     return err;
     }
 
@@ -298,15 +291,11 @@
 //
 void CVoIPJitterBuffer::PlayBuffer()
     {
-//    TRACE_PRN_FN_ENT;
-
     // iDataSink has valid data - send for playback
     iObserver->EventJB(MJitterBufferObserver::EBufferReadyToPlay);
 
     // Go to wait state
-//    TransitionState(EWait);
-
-//    TRACE_PRN_FN_EXT;
+    //TransitionState(EWait);
     }
 
 // -----------------------------------------------------------------------------
@@ -376,7 +365,7 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPJitterBuffer::TransitionState(TJBTransitionState aTransitionState,
-                                        TUint32 aStateChangeDelay)
+        TUint32 aStateChangeDelay)
     {
     TRequestStatus* stat = &iStatus;
 
@@ -408,7 +397,7 @@
     if (iTmPreviousEmptyBuffer.Int64())
         {
         TTimeIntervalMicroSeconds difference =
-            iTmCurrentEmptyBuffer.MicroSecondsFrom(iTmPreviousEmptyBuffer);
+                iTmCurrentEmptyBuffer.MicroSecondsFrom(iTmPreviousEmptyBuffer);
 
         if (difference.Int64() < iEmptyBufferDelayThreshold)
             {
@@ -420,5 +409,4 @@
     return emptyBufferDelay;
     }
 
-
 //  End of File
--- a/mmserv/voipaudioservices/JitterBufferUtility/src/JitterBufferImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/JitterBufferUtility/src/JitterBufferImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2008 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 Mcc Jitterbuffer
-*
-*/
-
+ * Copyright (c) 2008 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 Mcc Jitterbuffer
+ *
+ */
 
 // INCLUDE FILES
 #include <e32base.h>
@@ -25,14 +24,13 @@
 #include "JitterBufferObserver.h"
 #include "JitterBufferImpl.h"
 
-
 // -----------------------------------------------------------------------------
 // TJitterBufferElement::CompareSeqNum
 // Compare SequenceNumber
 // -----------------------------------------------------------------------------
 //
 TInt TJitterBufferElement::CompareSeqNum(const TJitterBufferElement& aElem1,
-                                         const TJitterBufferElement& aElem2)
+        const TJitterBufferElement& aElem2)
     {
     if (aElem1.iSequenceNumber > aElem2.iSequenceNumber)
         {
@@ -54,7 +52,7 @@
 // -----------------------------------------------------------------------------
 //
 TInt TJitterBufferElement::CompareStamp(const TJitterBufferElement& aElem1,
-                                        const TJitterBufferElement& aElem2)
+        const TJitterBufferElement& aElem2)
     {
     if (aElem1.iTimeStamp > aElem2.iTimeStamp)
         {
@@ -76,10 +74,10 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPJitterBufferImpl::CVoIPJitterBufferImpl(MJitterBufferObserver* aObserver) :
-    iBufStampSorter(TLinearOrder<TJitterBufferElement>(
-                    TJitterBufferElement::CompareStamp)),
-    iBufSequenceSorter(TLinearOrder<TJitterBufferElement>(
-                    TJitterBufferElement::CompareSeqNum))
+    iBufStampSorter(TLinearOrder<TJitterBufferElement> (
+            TJitterBufferElement::CompareStamp)),
+    iBufSequenceSorter(TLinearOrder<TJitterBufferElement> (
+            TJitterBufferElement::CompareSeqNum))
     {
     iObserver = aObserver;
     iTonePlayTime.UniversalTime();
@@ -94,9 +92,9 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPJitterBufferImpl* CVoIPJitterBufferImpl::NewL(
-                                              MJitterBufferObserver* aObserver)
+        MJitterBufferObserver* aObserver)
     {
-    CVoIPJitterBufferImpl* self = new(ELeave) CVoIPJitterBufferImpl(aObserver);
+    CVoIPJitterBufferImpl* self = new (ELeave) CVoIPJitterBufferImpl(aObserver);
     CleanupStack::PushL(self);
     self->ConstructL();
     CleanupStack::Pop(self);
@@ -145,7 +143,7 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPJitterBufferImpl::SetupL(const TFourCC aCodec,
-                                   const TVoIPJBConfig& aJBConfig)
+        const TVoIPJBConfig& aJBConfig)
     {
     TRACE_PRN_FN_ENT;
 
@@ -161,7 +159,7 @@
     if (iJBConfig.iJBInactivityTimeOut)
         {
         if ((iJBConfig.iJBPlayToneFrequency > 0) &&
-            (iJBConfig.iJBPlayToneDuration > 0))
+                (iJBConfig.iJBPlayToneDuration > 0))
             {
             iPlayToneInterval = iJBConfig.iJBPlayToneTimeout;
             iPlay = ETrue;
@@ -180,7 +178,7 @@
         // G.711 is configured dynamically. Take voip headerlength also into
         // account. G.711 hwframetime is in milliseconds, so need to multiply.
         iFrameSize = (iJBConfig.iSampleInterval * KDefaultSampleRateInkHz) +
-                     KVoIPHeaderLength;
+                KVoIPHeaderLength;
         iSampleInterval = 0;
 
         // In case of G.711 codec dynamic configuration, we may need to double
@@ -230,12 +228,12 @@
 
     // Calculate needed elements
     iBufferLength = iJBConfig.iJBBufferLength * bufLenMultiplier;
-    
+
     if (iJBConfig.iJBThreshold >= iBufferLength)
-    	{
-    	// adjust threshold size (no need to leave here)
-    	iJBConfig.iJBThreshold = iBufferLength / 2;
-    	}
+        {
+        // adjust threshold size (no need to leave here)
+        iJBConfig.iJBThreshold = iBufferLength / 2;
+        }
 
     // If the difference between buffer length and threshold is less than 10
     // increase buffer length, so the differences is 10. This helps handle
@@ -284,7 +282,6 @@
 // Reset Jitter Buffer
 // -----------------------------------------------------------------------------
 //
-
 void CVoIPJitterBufferImpl::ResetBuffer(TBool aPlayTone)
     {
     TRACE_PRN_FN_ENT;
@@ -320,7 +317,7 @@
     newElement.iTimeStamp = -1;
     iBuffer.AppendL(newElement);
     CleanupStack::Pop(buf);
-    
+
     iBufferLength++;
 
     // Insert one NO_DATA frame into the audio stream, so the jitterbuffer has
@@ -437,6 +434,7 @@
     TRACE_PRN_FN_EXT;
     }
 
+#ifdef __FEATURE_NOT_SUPPORTED__
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::CalculateDelay
 // Calculates the current jitter buffer playback
@@ -444,13 +442,14 @@
 //
 TTimeIntervalMicroSeconds32 CVoIPJitterBufferImpl::CalculateDelay() const
     {
-    TTimeIntervalMicroSeconds32 delay =
-                                iJBConfig.iJitterLatency * iPacketsInBuffer;
+    TTimeIntervalMicroSeconds32 delay = iJBConfig.iJitterLatency *
+            iPacketsInBuffer;
 
-//    TRACE_PRN_N1(_L("JB-CalculateDelay-> Delay [%d]"), delay);
+    //TRACE_PRN_N1(_L("JB-CalculateDelay-> Delay [%d]"), delay);
 
     return delay;
     }
+#endif //__FEATURE_NOT_SUPPORTED__
 
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::AddDataFrame
@@ -489,18 +488,18 @@
     //
 
     TUint index = FindLargestSeqNum();
-        
+
     if (iLastPlayedSeqNum < KMaxSeqNumber - iSeqNumIncrement)
         {
         iIsWrappedAround = IsSeqNumWrappedAround(iLargestSeqNum,
-                                                 iCurrentSeqNum);    
+                iCurrentSeqNum);
         }
     else
         {
         // If the last played frame was larger than the current largest
         // in JB we are most likely running in the wrap-around mode.
         iIsWrappedAround = IsSeqNumWrappedAround(iLastPlayedSeqNum,
-                                                 iLargestSeqNum);
+                iLargestSeqNum);
         }
 
     if (iIsWrappedAround)
@@ -513,7 +512,7 @@
     TRACE_PRN_N1(_L("JB-> [ADD] LAST PLAYED [%d]"), TInt32(iLastPlayedSeqNum));
     TRACE_PRN_N1(_L("JB-> [ADD] PACKETS [%d]"), iPacketsInBuffer);
 
-    iDataBuffer = static_cast<CMMFDataBuffer*>(aDataBuffer);
+    iDataBuffer = static_cast<CMMFDataBuffer*> (aDataBuffer);
 
     if (iCurrentSeqNum > iLastPlayedSeqNum)
         {
@@ -561,8 +560,8 @@
                 TRACE_PRN_N1(_L("JB-> [ADD] Interval Tm [%d]"), interval.Int());
                 }
 
-            // No point to run at 0 threshold; restore the original 
-            // settings and rebuffer. 
+            // No point to run at 0 threshold; restore the original
+            // settings and rebuffer.
             iCurrentPlayThreshold = iOriginalPlayThreshold;
 
             const TInt64 nextGetSeqNum(iLastPlayedSeqNum + iSeqNumIncrement);
@@ -596,7 +595,7 @@
         aDataBuffer->SetStatus(EAvailable);
         TRACE_PRN_N(_L("JB-> [ADD] TOO LATE"));
         }
-    
+
     return KErrNone;
     }
 
@@ -612,7 +611,7 @@
         return KErrNotReady;
         }
 
-    iDataBuffer = static_cast<CMMFDataBuffer*>(aBuffer);
+    iDataBuffer = static_cast<CMMFDataBuffer*> (aBuffer);
     TDes8& playBuffer(iDataBuffer->Data());
     iFramesPlayed++;
 
@@ -623,8 +622,9 @@
         // the CN generator will do the error concealment.
         TRACE_PRN_N(_L("JB-> [GET] BUFFER EMPTY"));
 
-        iCNGenerator->GenerateSidPacket(playBuffer, iDataBuffer->RequestSize());
-        
+        iCNGenerator->GenerateSidPacket(playBuffer,
+                iDataBuffer->RequestSize());
+
         // Used for talkburst; when talk-burst is over, reset buffer
         // and sequence number
         if (iJBConfig.iJBInactivityTimeOut > 0 && iInactivityTime >= 0)
@@ -635,7 +635,7 @@
             if (iInactivityTime >= iJBConfig.iJBInactivityTimeOut)
                 {
                 TRACE_PRN_N1(_L("JB-> [GET] Inactivity Time Detected [%d]"),
-                             iInactivityTime);
+                        iInactivityTime);
                 iInactivityTime = -1;
                 ResetBuffer();
                 }
@@ -649,7 +649,7 @@
             // Give comfort noise when we are buffering before playback starts
             TRACE_PRN_N(_L("JB-> [GET] THRESHOLD NOT REACHED"));
             iCNGenerator->GenerateSidPacket(playBuffer,
-                                            iDataBuffer->RequestSize());
+                    iDataBuffer->RequestSize());
             }
         else
             {
@@ -660,29 +660,30 @@
             iCurrentPlayThreshold = 0;
 
             // The actual sequence number which is in the buffer
-//            const TInt64 frameToPlay(
-//                         iBuffer[iPacketsInBuffer - 1].iSequenceNumber);
+            //const TInt64 frameToPlay(
+            //iBuffer[iPacketsInBuffer - 1].iSequenceNumber);
 
             TRACE_PRN_N1(_L("JB-> [GET] FRAME TO PLAY [%d]"),
-                         TInt32(iBuffer[iPacketsInBuffer - 1].iSequenceNumber));
+                    TInt32(iBuffer[iPacketsInBuffer - 1].iSequenceNumber));
             TRACE_PRN_N1(_L("JB-> [GET] LAST PLAYED   [%d]"),
-                         TInt32(iLastPlayedSeqNum));
+                    TInt32(iLastPlayedSeqNum));
             TRACE_PRN_N1(_L("JB-> [GET] PACKETS [%d]"), iPacketsInBuffer);
 
             // Get next in order frame to play
             TJitterBufferElement& jbElement = iBuffer[iPacketsInBuffer - 1];
 
-            if (playBuffer.MaxLength() >= jbElement.iDataFrame->Data().Length())
+            if (playBuffer.MaxLength() >=
+                    jbElement.iDataFrame->Data().Length())
                 {
                 playBuffer.Copy(jbElement.iDataFrame->Data());
                 }
             else
                 {
                 TRACE_PRN_N1(_L("JB-> [GET] ERROR: BUFFER TOO SMALL [%d]"),
-                             playBuffer.MaxLength());
+                        playBuffer.MaxLength());
 
                 iCNGenerator->GenerateSidPacket(playBuffer,
-                                                iDataBuffer->RequestSize());
+                        iDataBuffer->RequestSize());
                 }
 
             iLastPlayedSeqNum = jbElement.iSequenceNumber;
@@ -693,11 +694,13 @@
             // Reset inactivity timeout timer
             iInactivityTime = 0;
 
+#ifdef __FEATURE_NOT_SUPPORTED__
             // Try to lead new buffer to DTX period
             iCNGenerator->DoDtxDecision(playBuffer);
+#endif //__FEATURE_NOT_SUPPORTED__
             }
         }
-    
+
     return KErrNone;
     }
 
@@ -732,11 +735,9 @@
 // -----------------------------------------------------------------------------
 //
 void CVoIPJitterBufferImpl::InsertBufferElement(const TDesC8& aBuffer,
-                                                TInt64 aLargestSeqNum)
+        TInt64 aLargestSeqNum)
     {
-//    TRACE_PRN_FN_ENT;
-
-/*    if (aBuffer.Length() == 0 || aBuffer.Length() > iFrameSize)
+    /* if (aBuffer.Length() == 0 || aBuffer.Length() > iFrameSize)
         {
         TRACE_PRN_N(_L("JB->INVALID DATA, IGNORING"));
         return;
@@ -746,8 +747,8 @@
 
     if (iIsWrappedAround)
         {
-        iBuffer[len-1].iDataFrame->Data().Copy(aBuffer);
-        iBuffer[len-1].iSequenceNumber = iCurrentSeqNum;
+        iBuffer[len - 1].iDataFrame->Data().Copy(aBuffer);
+        iBuffer[len - 1].iSequenceNumber = iCurrentSeqNum;
 
         for (TInt i = 0; i < len; i++)
             {
@@ -757,21 +758,19 @@
                 }
             }
 
-        iBuffer[len-1].iTimeStamp = aLargestSeqNum + 1;
+        iBuffer[len - 1].iTimeStamp = aLargestSeqNum + 1;
         iBuffer.Sort(iBufStampSorter);
         iLastPlayedSeqNum = -1;
         }
     else
         {
-        iBuffer[len-1].iDataFrame->Data().Copy(aBuffer);
-        iBuffer[len-1].iSequenceNumber = iCurrentSeqNum;
-        iBuffer[len-1].iTimeStamp = iCurrentSeqNum - BufferLength();
+        iBuffer[len - 1].iDataFrame->Data().Copy(aBuffer);
+        iBuffer[len - 1].iSequenceNumber = iCurrentSeqNum;
+        iBuffer[len - 1].iTimeStamp = iCurrentSeqNum - BufferLength();
         iBuffer.Sort(iBufSequenceSorter);
         }
 
     iPacketsInBuffer++;
-
-//    TRACE_PRN_FN_EXT;
     }
 
 // -----------------------------------------------------------------------------
@@ -784,6 +783,7 @@
     return iBufferLength;
     }
 
+#ifdef __FEATURE_NOT_SUPPORTED__
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::PacketCount()
 // Return number of packets that are currently in the buffer.
@@ -793,6 +793,7 @@
     {
     return iPacketsInBuffer;
     }
+#endif //__FEATURE_NOT_SUPPORTED__
 
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::IsFull()
@@ -826,12 +827,12 @@
 // -----------------------------------------------------------------------------
 //
 TBool CVoIPJitterBufferImpl::IsSeqNumWrappedAround(TInt64 aSeqNum1,
-                                                   TInt64 aSeqNum2) const
+        TInt64 aSeqNum2) const
     {
     TBool status = EFalse;
 
     if (aSeqNum1 >= (KMaxSeqNumber - iSeqNumIncrement) &&
-        aSeqNum2 <= (iBufferLength * iSeqNumIncrement))
+            aSeqNum2 <= (iBufferLength * iSeqNumIncrement))
         {
         TRACE_PRN_N(_L("JB-> SEQUENCE WRAPPED-AROUND"));
         status = ETrue;
@@ -840,28 +841,30 @@
     return status;
     }
 
+#ifdef __FEATURE_NOT_SUPPORTED__
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::GenerateStatistics
 // Generates the statistics from the jitterbuffer
 // -----------------------------------------------------------------------------
 //
 void CVoIPJitterBufferImpl::GenerateStatistics(/*TJBStats& aStats*/) const
-    {/*
+    {
     aStats.iFramesReceived = iFramesReceived;
     aStats.iBufferLength = iBufferLength;
     aStats.iFramesInBuffer = iPacketsInBuffer;
     aStats.iFrameLoss = iFramesLost;
     aStats.iLateFrames = iNumOfLateFrames;
     aStats.iFramesRemoved = iFramesRemoved;
-    aStats.iFramesPlayed = iFramesPlayed;*/
+    aStats.iFramesPlayed = iFramesPlayed;
     }
+#endif //__FEATURE_NOT_SUPPORTED__
 
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferImpl::CheckThresholdBufferLength
 // -----------------------------------------------------------------------------
 //
 void CVoIPJitterBufferImpl::CheckThresholdBufferLength(TInt& aBufferLength,
-                                                       TInt aTreshhold) const
+        TInt aTreshhold) const
     {
     const TInt numTen = 10;
 
@@ -871,6 +874,5 @@
         }
     }
 
-
 //  End of File
 
--- a/mmserv/voipaudioservices/VoIPClient/src/VoIPAudioSession.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPClient/src/VoIPAudioSession.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -276,7 +276,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::StartDownlink()
     {
-    TInt err = SendClientRequest(EVoIPStartDownlink, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPStartDownlink, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -286,7 +287,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::StopDownlink()
     {
-    TInt err = SendClientRequest(EVoIPStopDownlink, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPStopDownlink, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -427,7 +429,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::StartUplink()
     {
-    TInt err = SendClientRequest(EVoIPStartUplink, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPStartUplink, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -483,9 +486,14 @@
         err = pckg().iStatus;
         }
 
+    if (err != KErrNone)
+        {
+        User::Leave(err);
+        }
+
     TRACE_PRN_N1(_L("BRCount [%d]"), brCount);
 
-    if (brCount > 0 && err == KErrNone)
+    if (brCount > 0)
         {
         HBufC8* buf = HBufC8::NewLC(brCount * sizeof(TUint));
         TPtr8 ptr = buf->Des();
@@ -617,7 +625,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::ConcealErrorForNextBuffer()
     {
-    TInt err = SendClientRequest(EVoIPConcealErrForNextBuf, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPConcealErrForNextBuf, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -747,22 +756,24 @@
 //
 EXPORT_C TInt RVoIPAudioSession::BadLsfNextBuffer()
     {
-    TInt err = SendClientRequest(EVoIPBadLsfNextBuffer, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPBadLsfNextBuffer, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
 // -----------------------------------------------------------------------------
-// RVoIPAudioSession::Open
+// RVoIPAudioSession::OpenDTMFTonePlayer
 // -----------------------------------------------------------------------------
 //
 EXPORT_C TInt RVoIPAudioSession::OpenDTMFTonePlayer()
     {
-    TInt err = SendClientRequest(EVoIPOpenDTMFTonePlayer, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPOpenDTMFTonePlayer, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
 // ---------------------------------------------------------------------------
-// RVoIPAudioSession::Play
+// RVoIPAudioSession::PlayDTMFTone
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt RVoIPAudioSession::PlayDTMFTone(const TDesC& aTones)
@@ -775,17 +786,18 @@
     }
 
 // ---------------------------------------------------------------------------
-// RVoIPAudioSession::Stop
+// RVoIPAudioSession::StopDTMFTonePlay
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt RVoIPAudioSession::StopDTMFTonePlay()
     {
-    TInt err = SendClientRequest(EVoIPStopDTMFTone, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPStopDTMFTone, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
 // ---------------------------------------------------------------------------
-// RVoIPAudioSession::Close
+// RVoIPAudioSession::CloseDTMFTonePlayer
 // ---------------------------------------------------------------------------
 //
 EXPORT_C void RVoIPAudioSession::CloseDTMFTonePlayer()
@@ -799,7 +811,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::OpenRingTonePlayer()
     {
-    TInt err = SendClientRequest(EVoIPOpenRingTonePlayerFromProfile, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPOpenRingTonePlayerFromProfile,
+            TIpcArgs(TIpcArgs::ENothing));
     return err;
     }
 
@@ -847,7 +860,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::PlayRingTone()
     {
-    TInt err = SendClientRequest(EVoIPPlayRingTone, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPPlayRingTone, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -857,7 +871,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::PauseRingTone()
     {
-    TInt err = SendClientRequest(EVoIPPauseRingTone, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPPauseRingTone, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -867,7 +882,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::ResumeRingTone()
     {
-    TInt err = SendClientRequest(EVoIPResumeRingTone, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPResumeRingTone, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -877,7 +893,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::StopRingTone()
     {
-    TInt err = SendClientRequest(EVoIPStopRingTone, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPStopRingTone, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -920,7 +937,8 @@
 //
 EXPORT_C TInt RVoIPAudioSession::DelayDown()
     {
-    TInt err = SendClientRequest(EVoIPJBDelayDown, TIpcArgs(TIpcArgs::ENothing));
+    TInt err = SendClientRequest(EVoIPJBDelayDown, TIpcArgs(
+            TIpcArgs::ENothing));
     return err;
     }
 
@@ -965,7 +983,6 @@
     CleanupStack::PopAndDestroy(buf);
     }
 
-
 // -----------------------------------------------------------------------------
 // RVoIPAudioSession::SendClientRequest
 // -----------------------------------------------------------------------------
@@ -976,7 +993,6 @@
     TInt status = KErrBadHandle;
     if (Handle())
         {
-       // if (&aArgs == TIpcArgs::ENothing)
         status = SendReceive(aRequest, aArgs);
         }
     return status;
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPBaseCodecIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPBaseCodecIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPBASECODECINTFCIMPL_H
-#define __VOIPBASECODECINTFCIMPL_H
+#ifndef VOIPBASECODECINTFCIMPL_H
+#define VOIPBASECODECINTFCIMPL_H
 
 #include <voipformatintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -30,15 +29,15 @@
 // CVoIPBaseCodecIntfcImpl class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPBaseCodecIntfcImpl) : public CBase,
-                                             public CVoIPFormatIntfc,
-                                             public CVoIPFormatIntfcImpl
+        public CVoIPFormatIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPBaseCodecIntfcImpl*
-           NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
+    NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
 
     static CVoIPBaseCodecIntfcImpl*
-           NewL(CVoIPAudioUplinkStreamImpl* auPLinkStreamImpl);
+    NewL(CVoIPAudioUplinkStreamImpl* auPLinkStreamImpl);
 
     virtual ~CVoIPBaseCodecIntfcImpl();
 
@@ -47,11 +46,8 @@
 
     void ConstructL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
     void ConstructL(CVoIPAudioUplinkStreamImpl* aDnLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPBASECODECINTFCIMPL_H
-
+#endif //VOIPBASECODECINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDataBufferImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDataBufferImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,32 +1,29 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services  Defines buffer type for VoIP data streaming.
-*
-*/
+ * Copyright (c) 2008 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: VOIP Audio Services  Defines buffer type for VoIP data
+ *              streaming.
+ *
+ */
 
-
-#ifndef __VOIPDATABUFFERIMPL_H
-#define __VOIPDATABUFFERIMPL_H
+#ifndef VOIPDATABUFFERIMPL_H
+#define VOIPDATABUFFERIMPL_H
 
 #include <e32base.h>
 #include <voipdatabuffer.h>
 
-
 /**
  *  CVoIPDataBuferImpl
- *  ?description
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CVoIPDataBufferImpl) : public CBase,
                                          public CVoIPJBDataBuffer
@@ -35,7 +32,6 @@
     /**
      * 2-phased constructor
      *
-     * @since S60 v5.0
      * @param TInt
      * @return none
      */
@@ -44,7 +40,6 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -53,7 +48,6 @@
     /**
      * GetPayloadPtr
      *
-     * @since S60 v5.0
      * @param TPtr8&
      * @return none
      */
@@ -62,7 +56,6 @@
     /**
      * SetPayloadPtr
      *
-     * @since S60 v5.0
      * @param TPtr8
      * @return none
      */
@@ -71,7 +64,6 @@
     /**
      * GetPayloadPtr
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer::TVoIPBufferType&
      * @return none
      */
@@ -81,7 +73,6 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -90,7 +81,6 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
      * @param TInt
      * @return void
      */
@@ -98,12 +88,11 @@
 
 protected:
     CVoIPDataBuffer::TVoIPBufferType iType;
-    TPtr8   iPayloadPtr;
+    TPtr8 iPayloadPtr;
     HBufC8* iBuf;
-    TInt    iBufferLen;
+    TInt iBufferLen;
     };
 
-#endif //__VOIPDATABUFFERIMPL_H
-
+#endif //VOIPDATABUFFERIMPL_H
 
 //End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDownlinkStreamImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDownlinkStreamImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,24 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPDOWNLINKSTREAMIMPL_H
-#define __VOIPDOWNLINKSTREAMIMPL_H
-
+#ifndef VOIPDOWNLINKSTREAMIMPL_H
+#define VOIPDOWNLINKSTREAMIMPL_H
 
 // INCLUDES
 #include <voipdownlinkstream.h>
@@ -26,19 +24,14 @@
 #include "VoIPDtmfTonePlayerImpl.h"
 #include "VoIPQueueHandler.h"
 
-
 /**
  *  CVoIPAudioDownlinkStreamImpl class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
-NONSHARABLE_CLASS(CVoIPAudioDownlinkStreamImpl) :
-                    public CBase,
-                    public CVoIPAudioDownlinkStream,
-                    public MQueueHandlerObserver
+NONSHARABLE_CLASS(CVoIPAudioDownlinkStreamImpl) : public CBase,
+        public CVoIPAudioDownlinkStream,
+        public MQueueHandlerObserver
     {
     enum TQueueType
         {
@@ -51,17 +44,16 @@
     /**
      * 2-phased constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
     static CVoIPAudioDownlinkStreamImpl* NewL(
-                    const TMMFPrioritySettings aPriority);
+            const TMMFPrioritySettings aPriority);
 
     /**
      * Destructor
      *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -70,7 +62,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param MVoIPDownlinkObserver&
      * @return TInt
      */
@@ -79,7 +70,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVersion&
      * @return TInt
      */
@@ -88,7 +78,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt&
      * @return TInt
      */
@@ -97,7 +86,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt
      * @return TInt
      */
@@ -106,7 +94,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt&
      * @return TInt
      */
@@ -115,18 +102,16 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TMMFPrioritySettings
      * @param RArray<TVoIPCodecFormat>&
      * @return void
      */
     void GetSupportedFormatsL(const TMMFPrioritySettings aPriority,
-                              RArray<TVoIPCodecFormat>& aFormats);
+            RArray<TVoIPCodecFormat>& aFormats);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @param CVoIPFormatIntfc&
      * @return void
@@ -136,16 +121,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
-     * @param none
-     * @return TVoIPCodecFormat
-     */
-    TVoIPCodecFormat GetFormat();
-
-    /**
-     * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPOutputDevice
      * @return TInt
      */
@@ -154,7 +130,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPOutputDevice&
      * @return TInt
      */
@@ -163,7 +138,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -172,7 +146,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -181,7 +154,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -190,7 +162,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer*
      * @return TInt
      */
@@ -199,7 +170,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPJitterBufferIntfc*&
      * @return void
      */
@@ -208,19 +178,16 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return RVoIPAudioSession*
      */
     RVoIPAudioSession* GetSession();
 
-
-// From MQueueHandlerObserver
+    // From MQueueHandlerObserver
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer*
      * @return void
      */
@@ -229,7 +196,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TPtr8
      * @return void
      */
@@ -238,7 +204,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt
      * @param TInt
      * @return void
@@ -250,16 +215,14 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
      * @param none
-     * @return TInt
+     * @return none
      */
     CVoIPAudioDownlinkStreamImpl();
 
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -268,20 +231,17 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TDesC&
      * @param TInt
      * @param TQueueType
      * @return TInt
      */
-    TInt CreateQueue(const TDesC& aQueueName,
-                     const TInt aNumSlots,
-                     const TQueueType aQueueType);
+    TInt CreateQueue(const TDesC& aQueueName, const TInt aNumSlots,
+            const TQueueType aQueueType);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -290,7 +250,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -299,7 +258,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TFourCC
      */
@@ -308,7 +266,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TUint32
      * @return TVoIPCodecFormat
      */
@@ -317,7 +274,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TBool
      */
@@ -326,7 +282,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TBool
      */
@@ -336,29 +291,28 @@
     friend class CDTMFTonePlayerImpl;
 
 private:
-// Client side VoIP server session
-    RVoIPAudioSession         iVoIPAudioSession;
+    // Client side VoIP server session
+    RVoIPAudioSession iVoIPAudioSession;
 
-    MVoIPDownlinkObserver*    iObserver;
+    MVoIPDownlinkObserver* iObserver;
 
-// Message queues
-    RMsgQueue<TVoIPMsgBuf>    iMsgQueue;
-    RMsgQueue<TVoIPMsgBuf>    iMsgComQueue;
+    // Message queues
+    RMsgQueue<TVoIPMsgBuf> iMsgQueue;
+    RMsgQueue<TVoIPMsgBuf> iMsgComQueue;
 
-// Message queue handlers
-    CQueueHandler*            iMsgQHandler;
-    CQueueHandler*            iMsgQComHandler;
+    // Message queue handlers
+    CQueueHandler* iMsgQHandler;
+    CQueueHandler* iMsgQComHandler;
 
-    TMMFPrioritySettings      iPriority;
-    TPtr8                     iBufferPtr;
-    TInt                      iBufferLen;
-    TInt                      iG711FrameSize;
+    TMMFPrioritySettings iPriority;
+    TPtr8 iBufferPtr;
+    TInt iBufferLen;
+    TInt iG711FrameSize;
 
-    TVoIPCodecFormat          iFormat;
-    RArray<TVoIPCodecFormat>* iCodecFormats;
-
+    TVoIPCodecFormat iFormat;
+    RArray<TVoIPCodecFormat> iCodecFormats;
     };
 
-#endif //__VOIPDOWNLINKSTREAMIMPL_H
+#endif //VOIPDOWNLINKSTREAMIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDtmfTonePlayerImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPDtmfTonePlayerImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPDTMFTONEPLAYERIMPL_H
-#define __VOIPDTMFTONEPLAYERIMPL_H
+#ifndef VOIPDTMFTONEPLAYERIMPL_H
+#define VOIPDTMFTONEPLAYERIMPL_H
 
 // INCLUDES
 #include <voipdtmftoneplayer.h>
@@ -31,18 +30,16 @@
 class CVoIPDataBuffer;
 class RVoIPAudioSession;
 
-
 /**
  *  CDTMFTonePlayerImpl class
  *
  *  DTMF Tone Player class
  *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CDTMFTonePlayerImpl) : public CBase,
-                                         public CDTMFTonePlayer,
-                                         public MQueueHandlerObserver
+        public CDTMFTonePlayer,
+        public MQueueHandlerObserver
     {
     enum TStreamType
         {
@@ -55,7 +52,7 @@
     /**
      * 2-phase constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return CDTMFTonePlayerImpl* -
      */
@@ -64,7 +61,7 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -73,7 +70,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -82,7 +79,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TPtr -
      * @return TInt -
      */
@@ -91,7 +88,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -100,7 +97,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -109,17 +106,17 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CVoIPAudioUplinkStream& -
      * @return TInt
      */
     TInt AddVoIPAudioUplinkStream(CVoIPAudioUplinkStream& aStream,
-                                  RVoIPAudioSession* aSession);
+            RVoIPAudioSession* aSession);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CVoIPAudioUplinkStream&
      * @return TInt
      */
@@ -128,28 +125,28 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CVoIPAudioDownlinkStream& -
      * @return TInt
      */
     TInt AddVoIPAudioDownlinkStream(CVoIPAudioDownlinkStream& aStream,
-                                    RVoIPAudioSession* aSession);
+            RVoIPAudioSession* aSession);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CVoIPAudioDownlinkStream& -
      * @return TInt
      */
     TInt RemoveVoIPAudioDownlinkStream(CVoIPAudioDownlinkStream& aStream);
 
-// From MQueueHandlerObserver
+    // From MQueueHandlerObserver
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TPtr8
      * @return void
      */
@@ -158,7 +155,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TPtr8
      * @return void
      */
@@ -167,7 +164,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TInt
      * @param TInt
      * @return void
@@ -179,7 +176,7 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -188,39 +185,37 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
     void ConstructL();
 
     /**
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
     void StartMsgQueueL();
 
     /**
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
     void ReceiveMsgQComHandlerEventsL();
 
 private:
-// Communication queue
+    // Communication queue
     RMsgQueue<TVoIPMsgBuf> iMsgComQueue;
-    CQueueHandler*         iMsgQComHandler;
+    CQueueHandler* iMsgQComHandler;
 
-    MDTMFToneObserver*     iObserver;
-    RVoIPAudioSession*     iVoIPAudioSession;
+    MDTMFToneObserver* iObserver;
+    RVoIPAudioSession* iVoIPAudioSession;
 
-    TStreamType            iStreamType;
-
+    TStreamType iStreamType;
     };
 
-#endif //__VOIPDTMFTONEPLAYERIMPL_H
-
+#endif //VOIPDTMFTONEPLAYERIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPFormatIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPFormatIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPFORMATINTFCIMPL_H
-#define __VOIPFORMATINTFCIMPL_H
+#ifndef VOIPFORMATINTFCIMPL_H
+#define VOIPFORMATINTFCIMPL_H
 
 // FORWARD DECLARATIONS
 class RVoIPAudioSession;
@@ -38,7 +37,7 @@
     TInt GetVAD(TBool& aVad);
     TInt FrameModeRequiredForErrorConcealment(TBool& aMode);
     TInt SetFrameMode(TBool aMode);
-    TInt GetFrameMode(TBool& aMode);   //not avail. through CIs
+    TInt GetFrameMode(TBool& aMode); //not avail. through CIs
     TInt ConcealErrorForNextBuffer();
 
 protected:
@@ -46,12 +45,10 @@
     void ConstructL(RVoIPAudioSession* aVoIPAudioSession);
 
 protected:
-    RVoIPAudioSession*   iVoIPAudioSession;
+    RVoIPAudioSession* iVoIPAudioSession;
     MVoIPFormatObserver* iObserver;
-
     };
 
-
-#endif //__VOIPFORMATINTFCIMPL_H
+#endif //VOIPFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711DecoderIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711DecoderIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPG711DECFORMATINTFCIMPL_H
-#define __VOIPG711DECFORMATINTFCIMPL_H
+#ifndef VOIPG711DECFORMATINTFCIMPL_H
+#define VOIPG711DECFORMATINTFCIMPL_H
 
 #include <voipg711decoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -29,12 +28,12 @@
 // CVoIPG711DecoderIntfcImpl class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPG711DecoderIntfcImpl) : public CBase,
-                                               public CVoIPG711DecoderIntfc,
-                                               public CVoIPFormatIntfcImpl
+        public CVoIPG711DecoderIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPG711DecoderIntfcImpl*
-           NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
+    NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
 
     virtual ~CVoIPG711DecoderIntfcImpl();
 
@@ -48,10 +47,8 @@
 private:
     CVoIPG711DecoderIntfcImpl();
     void ConstructL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPG711DECFORMATINTFCIMPL_H
+#endif //VOIPG711DECFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711EncoderIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG711EncoderIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPG711ENCFORMATINTFCIMPL_H
-#define __VOIPG711ENCFORMATINTFCIMPL_H
+#ifndef VOIPG711ENCFORMATINTFCIMPL_H
+#define VOIPG711ENCFORMATINTFCIMPL_H
 
 #include <voipg711encoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -29,12 +28,12 @@
 // CVoIPG711EncoderIntfcImpl class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPG711EncoderIntfcImpl) : public CBase,
-                                               public CVoIPG711EncoderIntfc,
-                                               public CVoIPFormatIntfcImpl
+        public CVoIPG711EncoderIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPG711EncoderIntfcImpl*
-           NewL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
+    NewL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
 
     virtual ~CVoIPG711EncoderIntfcImpl();
 
@@ -44,10 +43,8 @@
 private:
     CVoIPG711EncoderIntfcImpl();
     void ConstructL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPG711ENCFORMATINTFCIMPL_H
+#endif //VOIPG711ENCFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG729DecoderIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPG729DecoderIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPG729DECFORMATINTFCIMPL_H
-#define __VOIPG729DECFORMATINTFCIMPL_H
+#ifndef VOIPG729DECFORMATINTFCIMPL_H
+#define VOIPG729DECFORMATINTFCIMPL_H
 
 #include <voipg729decoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -29,12 +28,12 @@
 // CVoIPG729DecoderIntfcImpl class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPG729DecoderIntfcImpl) : public CBase,
-                                               public CVoIPG729DecoderIntfc,
-                                               public CVoIPFormatIntfcImpl
+        public CVoIPG729DecoderIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPG729DecoderIntfcImpl*
-           NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
+    NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
 
     virtual ~CVoIPG729DecoderIntfcImpl();
 
@@ -43,10 +42,8 @@
 private:
     CVoIPG729DecoderIntfcImpl();
     void ConstructL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPG729DECFORMATINTFCIMPL_H
+#endif //VOIPG729DECFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCDecoderIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCDecoderIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPILBCDECFORMATINTFCIMPL_H
-#define __VOIPILBCDECFORMATINTFCIMPL_H
+#ifndef VOIPILBCDECFORMATINTFCIMPL_H
+#define VOIPILBCDECFORMATINTFCIMPL_H
 
 #include <voipilbcdecoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -29,12 +28,12 @@
 // CVoIPILBCDecoderIntfcImpl class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPILBCDecoderIntfcImpl) : public CBase,
-                                               public CVoIPILBCDecoderIntfc,
-                                               public CVoIPFormatIntfcImpl
+        public CVoIPILBCDecoderIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPILBCDecoderIntfcImpl*
-           NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
+    NewL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
 
     virtual ~CVoIPILBCDecoderIntfcImpl();
 
@@ -46,10 +45,8 @@
 private:
     CVoIPILBCDecoderIntfcImpl();
     void ConstructL(CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPILBCDECFORMATINTFCIMPL_H
+#endif //VOIPILBCDECFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCEncoderIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPILBCEncoderIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPILBCENCFORMATINTFCIMPL_H
-#define __VOIPILBCENCFORMATINTFCIMPL_H
+#ifndef VOIPILBCENCFORMATINTFCIMPL_H
+#define VOIPILBCENCFORMATINTFCIMPL_H
 
 #include <voipilbcencoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
@@ -29,12 +28,12 @@
 // CVoIPILBCEncoderIntfc class
 // -----------------------------------------------------------------------------
 NONSHARABLE_CLASS(CVoIPILBCEncoderIntfcImpl) : public CBase,
-                                               public CVoIPILBCEncoderIntfc,
-                                               public CVoIPFormatIntfcImpl
+        public CVoIPILBCEncoderIntfc,
+        public CVoIPFormatIntfcImpl
     {
 public:
     static CVoIPILBCEncoderIntfcImpl*
-           NewL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
+    NewL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
 
     virtual ~CVoIPILBCEncoderIntfcImpl();
 
@@ -44,10 +43,8 @@
 private:
     CVoIPILBCEncoderIntfcImpl();
     void ConstructL(CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl);
-
     };
 
-
-#endif //__VOIPILBCENCFORMATINTFCIMPL_H
+#endif //VOIPILBCENCFORMATINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJBDataBufferImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJBDataBufferImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,31 +1,29 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services  Defines jitter buffer type for VoIP data streaming.
-*
-*/
+ * Copyright (c) 2008 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:  VOIP Audio Services  Defines jitter buffer type for VoIP
+ *               data streaming.
+ *
+ */
 
-
-#ifndef __VOIPJBDATABUFFERIMPL_H
-#define __VOIPJBDATABUFFERIMPL_H
+#ifndef VOIPJBDATABUFFERIMPL_H
+#define VOIPJBDATABUFFERIMPL_H
 
 #include "VoIPDataBufferImpl.h"
 
-
 /**
  *  CVoIPJBDataBufferImpl
- *  ?description
- *  @since S60 v5.0
+ *
  */
 NONSHARABLE_CLASS(CVoIPJBDataBufferImpl) : public CVoIPDataBufferImpl
     {
@@ -33,7 +31,7 @@
     /**
      * 2-phased constructor
      *
-     * @since S60 v5.0
+     *
      * @param TInt
      * @return none
      */
@@ -42,7 +40,7 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -51,7 +49,7 @@
     /**
      * SetBufferSequence
      *
-     * @since S60 v5.0
+     *
      * @param const TUint
      * @return none
      */
@@ -61,7 +59,7 @@
     /**
      * GetBufferSequence
      *
-     * @since S60 v5.0
+     *
      * @param TUint&
      * @return none
      */
@@ -71,7 +69,7 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -80,7 +78,7 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
+     *
      * @param TInt
      * @return void
      */
@@ -91,7 +89,6 @@
     TUint iBufferSequence;
     };
 
-#endif //__VOIPJBDATABUFFERIMPL_H
-
+#endif //VOIPJBDATABUFFERIMPL_H
 
 //End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJitterBufferIntfcImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPJitterBufferIntfcImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,30 +1,28 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPJITTERBUFFERINTFCIMPL_H
-#define __VOIPJITTERBUFFERINTFCIMPL_H
+#ifndef VOIPJITTERBUFFERINTFCIMPL_H
+#define VOIPJITTERBUFFERINTFCIMPL_H
 
 #include <voipjitterbufferintfc.h>
 
 // FORWARD DECLARATIONS
 class RVoIPAudioSession;
 
-
 // -----------------------------------------------------------------------------
 // CVoIPJitterBufferIntfcImpl base class
 // -----------------------------------------------------------------------------
@@ -32,7 +30,8 @@
                                                 public CVoIPJitterBufferIntfc
     {
 public:
-    static CVoIPJitterBufferIntfcImpl* NewL(RVoIPAudioSession* aVoIPAudioSession);
+    static CVoIPJitterBufferIntfcImpl* NewL(
+            RVoIPAudioSession* aVoIPAudioSession);
 
     virtual ~CVoIPJitterBufferIntfcImpl();
 
@@ -42,19 +41,19 @@
     TInt DelayDown();
     TInt DelayUp();
 
+#ifdef __FEATURE_NOT_SUPPORTED__
     void SendEventToObserver(TInt aEvent);
+#endif //__FEATURE_NOT_SUPPORTED__
 
 protected:
     CVoIPJitterBufferIntfcImpl();
     void ConstructL(RVoIPAudioSession* aVoIPAudioSession);
 
 protected:
-    RVoIPAudioSession*         iVoIPAudioSession;
+    RVoIPAudioSession* iVoIPAudioSession;
     MVoIPJitterBufferObserver* iObserver;
-
     };
 
-#endif //__VOIPJITTERBUFFERINTFCIMPL_H
-
+#endif //VOIPJITTERBUFFERINTFCIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingToneFactoryImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingToneFactoryImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,36 +1,30 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __RINGTONEFACTORYIMPL_H
-#define __RINGTONEFACTORYIMPL_H
-
+#ifndef RINGTONEFACTORYIMPL_H
+#define RINGTONEFACTORYIMPL_H
 
 // FORWARD DECLARATIONS
 class CRingTonePlayer;
 
-
 /**
  *  CRingToneFactoryImpl class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CRingToneFactoryImpl) : public CBase
     {
@@ -39,7 +33,7 @@
     /**
      * 2-phase constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return CRingToneFactoryImpl* -
      */
@@ -48,7 +42,7 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -56,8 +50,6 @@
 
     /**
      *
-     *
-     * @since S60 v5.0
      * @param CRingTonePlayer*&
      * @return TInt
      */
@@ -68,7 +60,7 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -77,16 +69,13 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
     void ConstructL();
-
-private:
-
     };
 
-#endif //__RINGTONEFACTORYIMPL_H
+#endif //RINGTONEFACTORYIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingTonePlayerImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPRingTonePlayerImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,29 +1,27 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __RINGTONEPLAYERIMPL_H
-#define __RINGTONEPLAYERIMPL_H
+#ifndef RINGTONEPLAYERIMPL_H
+#define RINGTONEPLAYERIMPL_H
 
 #include <voipringtoneplayer.h>
 #include "VoIPAudioSession.h"
 #include "VoIPQueueHandler.h"
 
-
 // FORWARD DECLARATIONS
 class RFile;
 class RVoIPAudioSession;
@@ -38,18 +36,17 @@
  *  Ring Tone Player class
  *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CRingTonePlayerImpl) : public CBase,
-                                         public CRingTonePlayer,
-                                         public MQueueHandlerObserver
+        public CRingTonePlayer,
+        public MQueueHandlerObserver
     {
 public:
 
     /**
      * 2-phase constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return CRingTonePlayerImpl* -
      */
@@ -58,7 +55,7 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -67,7 +64,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param MRingToneObserver&
      * @return TInt
      */
@@ -76,7 +73,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param MRingToneObserver&
      * @param TPtr
      * @return TInt
@@ -86,7 +83,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param MRingToneObserver&
      * @param RFile&
      * @return TInt
@@ -96,7 +93,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param MRingToneObserver&
      * @param TPtr8
      * @param TPtr8
@@ -107,7 +104,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -116,7 +113,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -125,7 +122,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -134,7 +131,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
@@ -143,18 +140,18 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return TInt
      */
     void Close();
 
-// From MQueueHandlerObserver
+    // From MQueueHandlerObserver
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TPtr8
      * @return void
      */
@@ -163,7 +160,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TPtr8
      * @return void
      */
@@ -172,7 +169,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TInt
      * @param TInt
      * @return void
@@ -184,7 +181,7 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -193,21 +190,21 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
     void ConstructL();
 
     /**
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
     void StartMsgQueueL();
 
     /**
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -215,15 +212,14 @@
 
 private:
 
-// Communication queue
+    // Communication queue
     RMsgQueue<TVoIPMsgBuf> iMsgComQueue;
-    CQueueHandler*         iMsgQComHandler;
+    CQueueHandler* iMsgQComHandler;
 
-    MRingToneObserver*     iObserver;
-    RVoIPAudioSession      iVoIPAudioSession;
-
+    MRingToneObserver* iObserver;
+    RVoIPAudioSession iVoIPAudioSession;
     };
 
-#endif //__RINGTONEPLAYERIMPL_H
+#endif //RINGTONEPLAYERIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUplinkStreamImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUplinkStreamImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,22 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPUPLINKSTREAMIMPL_H
-#define __VOIPUPLINKSTREAMIMPL_H
+#ifndef VOIPUPLINKSTREAMIMPL_H
+#define VOIPUPLINKSTREAMIMPL_H
 
 // INCLUDES
 #include <voipformatintfc.h>
@@ -25,20 +24,16 @@
 #include "VoIPAudioSession.h"
 #include "VoIPQueueHandler.h"
 
-
 /**
  *  CVoIPAudioUplinkStreamImpl class
  *
- *  ?more_complete_description
- *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CVoIPAudioUplinkStreamImpl) : public CBase,
-                                                public CVoIPAudioUplinkStream,
-                                                public MQueueHandlerObserver,
-                                                public MVoIPFormatObserver
+        public CVoIPAudioUplinkStream,
+        public MQueueHandlerObserver
     {
+protected:
     enum TQueueType
         {
         EMsgBufQueue,
@@ -50,17 +45,15 @@
     /**
      * 2-phased constructor
      *
-     * @since S60 v5.0
      * @param none
      * @return CVoIPAudioUplinkStreamImpl*
      */
     static CVoIPAudioUplinkStreamImpl* NewL(
-                const TMMFPrioritySettings aPriority);
+            const TMMFPrioritySettings aPriority);
 
     /**
      * Destructor
      *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -69,7 +62,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param MVoIPUplinkObserver&
      * @return TInt
      */
@@ -78,7 +70,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVersion&
      * @return TInt
      */
@@ -87,7 +78,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt&
      * @return TInt
      */
@@ -96,7 +86,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt
      * @return TInt
      */
@@ -105,7 +94,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TInt&
      * @return TInt
      */
@@ -114,18 +102,16 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TMMFPrioritySettings
      * @param RArray<TVoIPCodecFormat>&
      * @return void
      */
     void GetSupportedFormatsL(const TMMFPrioritySettings aPriority,
-                              RArray<TVoIPCodecFormat>& aFormats);
+            RArray<TVoIPCodecFormat>& aFormats);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @param CVoIPFormatIntfc&
      * @return void
@@ -135,16 +121,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
-     * @param none
-     * @return TVoIPCodecFormat
-     */
-    TVoIPCodecFormat GetFormat();
-
-    /**
-     * ?description
-     *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -153,7 +129,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -162,7 +137,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -171,7 +145,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer*
      * @return TInt
      */
@@ -180,19 +153,16 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return RVoIPAudioSession*
      */
     RVoIPAudioSession* GetSession();
 
-
-// From MQueueHandlerObserver
+    // From MQueueHandlerObserver
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer*
      * @return void
      */
@@ -201,7 +171,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param CVoIPDataBuffer*
      * @return void
      */
@@ -210,31 +179,17 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param aEventType
      * @param TInt
      * @return void
      */
     virtual void Event(TInt aEventType, TInt aError);
 
-// From MVoIPFormatObserver
-
-    /**
-     * ?description
-     *
-     * @since S60 v5.0
-     * @param CVoIPFormatIntfc&
-     * @param TInt
-     * @return void
-     */
-    virtual void Event(const CVoIPFormatIntfc& aSrc, TInt aEventType);
-
 private:
 
     /**
      * Constructor
      *
-     * @since S60 v5.0
      * @param none
      * @return none
      */
@@ -243,7 +198,6 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -252,20 +206,17 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TDesC&
      * @param TInt
      * @param TQueueType
      * @return TInt
      */
-    TInt CreateQueue(const TDesC& aQueueName,
-                     const TInt aNumSlots,
-                     const TQueueType aQueueType);
+    TInt CreateQueue(const TDesC& aQueueName, const TInt aNumSlots,
+            const TQueueType aQueueType);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -274,7 +225,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -283,7 +233,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TFourCC
      */
@@ -292,7 +241,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TUint32
      * @return TVoIPCodecFormat
      */
@@ -301,7 +249,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TBool
      */
@@ -310,7 +257,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TVoIPCodecFormat
      * @return TBool
      */
@@ -318,30 +264,29 @@
 
 private:
 
-// Client side VoIP server session
-    RVoIPAudioSession         iVoIPAudioSession;
+    // Client side VoIP server session
+    RVoIPAudioSession iVoIPAudioSession;
 
-    MVoIPUplinkObserver*      iObserver;
+    MVoIPUplinkObserver* iObserver;
 
-// Message queues
-    RMsgQueue<TVoIPMsgBuf>    iMsgQueue;
-    RMsgQueue<TVoIPMsgBuf>    iMsgComQueue;
+    // Message queues
+    RMsgQueue<TVoIPMsgBuf> iMsgQueue;
+    RMsgQueue<TVoIPMsgBuf> iMsgComQueue;
 
-// Message queue handlers
-    CQueueHandler*            iMsgQHandler;
-    CQueueHandler*            iMsgQComHandler;
+    // Message queue handlers
+    CQueueHandler* iMsgQHandler;
+    CQueueHandler* iMsgQComHandler;
 
-    TMMFPrioritySettings      iPriority;
-    TPtr8                     iBufferPtr;
-    TInt                      iBufferLen;
-    TInt                      iG711FrameSize;
-    TBool                     iIsClosing;
+    TMMFPrioritySettings iPriority;
+    TPtr8 iBufferPtr;
+    TInt iBufferLen;
+    TInt iG711FrameSize;
+    TBool iIsClosing;
 
-    TVoIPCodecFormat          iFormat;
-    RArray<TVoIPCodecFormat>* iCodecFormats;
-
+    TVoIPCodecFormat iFormat;
+    RArray<TVoIPCodecFormat> iCodecFormats;
     };
 
-#endif //__VOIPUPLINKSTREAMIMPL_H
+#endif //VOIPUPLINKSTREAMIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUtilityFactoryImpl.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/inc/VoIPUtilityFactoryImpl.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,38 +1,33 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
-
-#ifndef __VOIPUTILITYFACTORYIMPL_H
-#define __VOIPUTILITYFACTORYIMPL_H
+#ifndef VOIPUTILITYFACTORYIMPL_H
+#define VOIPUTILITYFACTORYIMPL_H
 
 #include <mmfbase.h>
 #include <voipaudiocommon.h>
 #include <voiputilityfactory.h>
 
-// FORWARD DECLARATIONS
-
-
 /**
  *  CVoIPUtilityFactoryImpl class
  *
  *  ?more_complete_description
  *
  *  @lib VoIPAudioIntfc.dll
- *  @since S60 v5.0
  */
 NONSHARABLE_CLASS(CVoIPUtilityFactoryImpl) : public CBase
     {
@@ -47,7 +42,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return CVoIPUtilityFactoryImpl*
      */
@@ -56,7 +51,7 @@
     /**
      * Destructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -65,46 +60,46 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TVersion
      * @param TCallType
      * @param CVoIPAudioDownlinkStream*&
      * @return void
      */
     void CreateDownlinkStreamL(TVersion aVersion,
-                               CVoIPUtilityFactory::TVoIPCallType aCallType,
-                               CVoIPAudioDownlinkStream*& aDnLink);
+            CVoIPUtilityFactory::TVoIPCallType aCallType,
+            CVoIPAudioDownlinkStream*& aDnLink);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TVersion
      * @param CVoIPJitterBufferIntfc*&
      * @param CVoIPAudioDownlinkStream*&
      * @return void
      */
     void CreateDownlinkStreamL(TVersion aVersion,
-                               CVoIPJitterBufferIntfc*& aJBIntfc,
-                               CVoIPAudioDownlinkStream*& aDnLink);
+            CVoIPJitterBufferIntfc*& aJBIntfc,
+            CVoIPAudioDownlinkStream*& aDnLink);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TVersion
      * @param TCallType
      * @param CVoIPAudioUplinkStream*&
      * @return void
      */
     void CreateUplinkStreamL(TVersion aVersion,
-                             CVoIPUtilityFactory::TVoIPCallType aCallType,
-                             CVoIPAudioUplinkStream*& aUpLink);
+            CVoIPUtilityFactory::TVoIPCallType aCallType,
+            CVoIPAudioUplinkStream*& aUpLink);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CDTMFTonePlayer*&
      * @return void
      */
@@ -113,20 +108,20 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param CVoIPDataBuffer*&
      * @param const CVoIPDataBuffer::TVoIPBufferType
      * @param const TVoIPCodecFormat
      * @return void
      */
     void CreateBufferL(CVoIPDataBuffer*& aBuffer,
-                       const CVoIPDataBuffer::TVoIPBufferType aType,
-                       const TVoIPCodecFormat aCodecFormat);
+            const CVoIPDataBuffer::TVoIPBufferType aType,
+            const TVoIPCodecFormat aCodecFormat);
 
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param RArray<TVoIPCodecFormat>&
      * @return TInt -
      */
@@ -135,7 +130,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param RArray<TVoIPCodecFormat>&
      * @return TInt -
      */
@@ -148,7 +143,7 @@
     /**
      * Constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return none
      */
@@ -157,7 +152,7 @@
     /**
      * Symbian constructor
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -166,12 +161,11 @@
 private:
 
     CVoIPAudioDownlinkStreamImpl* iDownLink; // not owned!
-    CVoIPAudioUplinkStreamImpl*   iUpLink;   // not owned!
-    TMMFPrioritySettings          iPriorityUp;
-    TMMFPrioritySettings          iPriorityDn;
-
+    CVoIPAudioUplinkStreamImpl* iUpLink; // not owned!
+    TMMFPrioritySettings iPriorityUp;
+    TMMFPrioritySettings iPriorityDn;
     };
 
-#endif //__VOIPUTILITYFACTORYIMPL_H
+#endif //VOIPUTILITYFACTORYIMPL_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPBaseCodecIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPBaseCodecIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,33 +1,31 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Services
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPDownlinkStreamImpl.h"
 #include "VoIPUplinkStreamImpl.h"
 #include "VoIPBaseCodecIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPBaseCodecIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPBaseCodecIntfcImpl* CVoIPBaseCodecIntfcImpl::NewL(
-                         CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     CVoIPBaseCodecIntfcImpl* self = new (ELeave) CVoIPBaseCodecIntfcImpl();
     CleanupStack::PushL(self);
@@ -41,7 +39,7 @@
 // ---------------------------------------------------------------------------
 //
 CVoIPBaseCodecIntfcImpl* CVoIPBaseCodecIntfcImpl::NewL(
-                         CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
     CVoIPBaseCodecIntfcImpl* self = new (ELeave) CVoIPBaseCodecIntfcImpl();
     CleanupStack::PushL(self);
@@ -71,7 +69,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPBaseCodecIntfcImpl::ConstructL(
-    CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     iVoIPAudioSession = aDnLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -83,12 +81,11 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPBaseCodecIntfcImpl::ConstructL(
-    CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
     iVoIPAudioSession = aUpLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
     CVoIPFormatIntfc::ConstructL(this);
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBuffer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBuffer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,24 +1,22 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPDataBufferImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // Contructor
 // ---------------------------------------------------------------------------
@@ -67,10 +65,9 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C void CVoIPDataBuffer::GetBufferType(
-                               CVoIPDataBuffer::TVoIPBufferType& aType)
+        CVoIPDataBuffer::TVoIPBufferType& aType)
     {
     iVoIPDataBufferImpl->GetBufferType(aType);
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBufferImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDataBufferImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,25 +1,23 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPSharedData.h"
 #include "VoIPDataBufferImpl.h"
 
-
 // -----------------------------------------------------------------------------
 // CVoIPDataBufferImpl::NewL
 // -----------------------------------------------------------------------------
@@ -38,7 +36,7 @@
 // -----------------------------------------------------------------------------
 //
 CVoIPDataBufferImpl::CVoIPDataBufferImpl() :
-    iPayloadPtr(0,0,0)
+    iPayloadPtr(0, 0, 0)
     {
     iType = CVoIPDataBuffer::EStandard;
     }
@@ -85,10 +83,10 @@
 // CVoIPDataBufferImpl::GetBufferType
 // -----------------------------------------------------------------------------
 //
-void CVoIPDataBufferImpl::GetBufferType(CVoIPDataBuffer::TVoIPBufferType& aType)
+void CVoIPDataBufferImpl::GetBufferType(
+        CVoIPDataBuffer::TVoIPBufferType& aType)
     {
     aType = iType;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDownlinkStreamImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDownlinkStreamImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -52,6 +52,7 @@
 CVoIPAudioDownlinkStreamImpl::~CVoIPAudioDownlinkStreamImpl()
     {
     Close();
+    iCodecFormats.Close();
 
     if (iMsgQHandler)
         {
@@ -178,7 +179,16 @@
         const TMMFPrioritySettings aPriority,
         RArray<TVoIPCodecFormat>& aFormats)
     {
-    if (!iCodecFormats || aFormats.Count() <= 0)
+    TInt count = iCodecFormats.Count();
+    aFormats.Reset();
+    if (count > 0)
+        {
+        for (TInt i = 0; i < count; i++)
+            {
+            aFormats.Append(iCodecFormats[i]);
+            }
+        }
+    else
         {
         RArray<TUint32> codecIDs;
         CleanupClosePushL(codecIDs);
@@ -186,10 +196,14 @@
         iVoIPAudioSession.GetSupportedDecoders(aPriority, codecIDs,
                 iG711FrameSize);
 
+#ifdef _DEBUG
+        RDebug::Print(_L("G711 Frame Size=%d"), iG711FrameSize);
+#endif
+
         TUint32 codec = 0;
         TInt count = codecIDs.Count();
         TVoIPCodecFormat format;
-        aFormats.Reset();
+        iCodecFormats.Reset();
 
         for (TInt i = 0; i < count; i++)
             {
@@ -205,11 +219,10 @@
             format = ConvertFourCC(codec);
             if (format != ENULL)
                 {
+                iCodecFormats.Append(format);
                 aFormats.Append(format);
                 }
             }
-
-        iCodecFormats = &aFormats;
         CleanupStack::PopAndDestroy(&codecIDs);
         }
     }
@@ -277,15 +290,6 @@
     }
 
 // ---------------------------------------------------------------------------
-// CVoIPAudioDownlinkStreamImpl::GetFormat
-// ---------------------------------------------------------------------------
-//
-TVoIPCodecFormat CVoIPAudioDownlinkStreamImpl::GetFormat()
-    {
-    return iFormat;
-    }
-
-// ---------------------------------------------------------------------------
 // CVoIPAudioDownlinkStreamImpl::SetAudioDevice
 // ---------------------------------------------------------------------------
 //
@@ -548,7 +552,11 @@
     {
     TBool status = EFalse;
 
-    if (!iCodecFormats)
+    if (iCodecFormats.Count() > 0)
+        {
+        status = FindFormat(aFormat);
+        }
+    else
         {
         // Client hasn't called GetSupportedFormatsL
         RArray<TVoIPCodecFormat> codecs;
@@ -557,11 +565,6 @@
         GetSupportedFormatsL(iPriority, codecs); //sets iCodecFormats
         status = FindFormat(aFormat);
         CleanupStack::PopAndDestroy(&codecs);
-        iCodecFormats = NULL;
-        }
-    else
-        {
-        status = FindFormat(aFormat);
         }
 
     return status;
@@ -575,28 +578,33 @@
     {
     TBool found = EFalse;
 
-    if (iCodecFormats)
+    if (iCodecFormats.Count() > 0)
         {
-        if (iCodecFormats->Count() > 0)
+        if (iCodecFormats.Find(aFormat) == KErrNotFound)
             {
-            if (iCodecFormats->Find(aFormat) == KErrNotFound)
+            // For backward compatibility with VAS 1.0
+            if (aFormat == EG711)
                 {
-                // For backward compatibility with VAS 1.0
-                if (aFormat == EG711)
+                if (iCodecFormats.Find(EG711_10MS) != KErrNotFound)
                     {
-                    if (iCodecFormats->Find(EG711_10MS) != KErrNotFound)
-                        {
-                        iFormat = EG711_10MS;
-                        found = ETrue;
-                        }
+                    iFormat = EG711_10MS;
+                    found = ETrue;
                     }
                 }
-            else
+            else if (aFormat == EG711_10MS)
                 {
-                iFormat = aFormat;
-                found = ETrue;
+                if (iCodecFormats.Find(EG711) != KErrNotFound)
+                    {
+                    iFormat = EG711;
+                    found = ETrue;
+                    }
                 }
             }
+        else
+            {
+            iFormat = aFormat;
+            found = ETrue;
+            }
         }
 
     return found;
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-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"
+ * 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: VOIP Audio Service
+ *
+ */
 
 #include <e32base.h>
 #include <voipdtmftoneplayer.h>
@@ -23,7 +22,6 @@
 #include "VoIPUplinkStreamImpl.h"
 #include "VoIPDtmfTonePlayerImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CDTMFTonePlayer::~CDTMFTonePlayer
 // ---------------------------------------------------------------------------
@@ -93,12 +91,15 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CDTMFTonePlayer::AddVoIPAudioUplinkStream(
-                               CVoIPAudioUplinkStream& aStream)
+        CVoIPAudioUplinkStream& aStream)
     {
-    RVoIPAudioSession* session =
-                       aStream.iVoIPAudioUplinkStreamImpl->GetSession();
-
-    TInt err = iDTMFTonePlayerImpl->AddVoIPAudioUplinkStream(aStream, session);
+    TInt err = KErrArgument;
+    if (&aStream)
+        {
+        RVoIPAudioSession* session =
+                aStream.iVoIPAudioUplinkStreamImpl->GetSession();
+        err = iDTMFTonePlayerImpl->AddVoIPAudioUplinkStream(aStream, session);
+        }
     return err;
     }
 
@@ -107,7 +108,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CDTMFTonePlayer::RemoveVoIPAudioUplinkStream(
-                               CVoIPAudioUplinkStream& aStream)
+        CVoIPAudioUplinkStream& aStream)
     {
     TInt err = iDTMFTonePlayerImpl->RemoveVoIPAudioUplinkStream(aStream);
     return err;
@@ -118,13 +119,15 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CDTMFTonePlayer::AddVoIPAudioDownlinkStream(
-                               CVoIPAudioDownlinkStream& aStream)
+        CVoIPAudioDownlinkStream& aStream)
     {
-    RVoIPAudioSession* session =
-                       aStream.iVoIPAudioDownlinkStreamImpl->GetSession();
-
-    TInt err = iDTMFTonePlayerImpl->AddVoIPAudioDownlinkStream(aStream,
-                                                               session);
+    TInt err = KErrArgument;
+    if (&aStream)
+        {
+        RVoIPAudioSession* session =
+                aStream.iVoIPAudioDownlinkStreamImpl->GetSession();
+        err = iDTMFTonePlayerImpl->AddVoIPAudioDownlinkStream(aStream, session);
+        }
     return err;
     }
 
@@ -133,11 +136,10 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CDTMFTonePlayer::RemoveVoIPAudioDownlinkStream(
-                               CVoIPAudioDownlinkStream& aStream)
+        CVoIPAudioDownlinkStream& aStream)
     {
     TInt err = iDTMFTonePlayerImpl->RemoveVoIPAudioDownlinkStream(aStream);
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayerImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPDtmfTonePlayerImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipuplinkstream.h>
@@ -22,7 +21,6 @@
 #include "VoIPAudioSession.h"
 #include "VoIPDtmfTonePlayerImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CDTMFTonePlayerImpl::NewL
 // ---------------------------------------------------------------------------
@@ -141,8 +139,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CDTMFTonePlayerImpl::AddVoIPAudioUplinkStream(
-                          CVoIPAudioUplinkStream& /*aStream*/,
-                          RVoIPAudioSession* aSession)
+        CVoIPAudioUplinkStream& /*aStream*/, RVoIPAudioSession* aSession)
     {
     TInt err = KErrNone;
     iVoIPAudioSession = aSession;
@@ -164,7 +161,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CDTMFTonePlayerImpl::RemoveVoIPAudioUplinkStream(
-                          CVoIPAudioUplinkStream& /*aStream*/)
+        CVoIPAudioUplinkStream& /*aStream*/)
     {
     iVoIPAudioSession = NULL;
     return KErrNone;
@@ -175,8 +172,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CDTMFTonePlayerImpl::AddVoIPAudioDownlinkStream(
-                          CVoIPAudioDownlinkStream& /*aStream*/,
-                          RVoIPAudioSession* aSession)
+        CVoIPAudioDownlinkStream& /*aStream*/, RVoIPAudioSession* aSession)
     {
     TInt err = KErrNone;
     iVoIPAudioSession = aSession;
@@ -198,7 +194,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CDTMFTonePlayerImpl::RemoveVoIPAudioDownlinkStream(
-                          CVoIPAudioDownlinkStream& /*aStream*/)
+        CVoIPAudioDownlinkStream& /*aStream*/)
     {
     iVoIPAudioSession = NULL;
     return KErrNone;
@@ -218,12 +214,12 @@
         if (iStreamType == EDownlink)
             {
             err = iMsgComQueue.CreateGlobal(KDTMFToneComQueueDNL,
-                                            KVoIPMsgComQSlots);
+                    KVoIPMsgComQSlots);
             }
         else
             {
             err = iMsgComQueue.CreateGlobal(KDTMFToneComQueueUPL,
-                                            KVoIPMsgComQSlots);
+                    KVoIPMsgComQSlots);
             }
 
         User::LeaveIfError(err);
@@ -251,7 +247,6 @@
     iMsgQComHandler->Start();
     }
 
-
 // ======== CALLBACK FUNCTIONS ========
 
 
@@ -266,5 +261,4 @@
     iObserver->Event(*this, aEventType, aError);
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,25 +1,23 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <voipformatintfc.h>
 #include "VoIPFormatIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPFormatIntfc::~CVoIPFormatIntfc
 // ---------------------------------------------------------------------------
@@ -110,9 +108,10 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPFormatIntfc::FrameModeRequiredForErrorConcealment(
-                                TBool& aMode)
+        TBool& aMode)
     {
-    TInt err = iVoIPFormatIntfcImpl->FrameModeRequiredForErrorConcealment(aMode);
+    TInt err = iVoIPFormatIntfcImpl->FrameModeRequiredForErrorConcealment(
+            aMode);
     return err;
     }
 
@@ -146,5 +145,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPFormatIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include "VoIPAudioSession.h"
 #include "VoIPFormatIntfcImpl.h"
 
-
 // -----------------------------------------------------------------------------
 // CVoIPFormatIntfcImpl::~CVoIPFormatIntfcImpl
 // -----------------------------------------------------------------------------
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,28 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <voipg711decoderintfc.h>
 #include "VoIPFormatIntfcImpl.h"
 #include "VoIPG711DecoderIntfcImpl.h"
 
-
-// ======== MEMBER FUNCTIONS ========
-
 // ---------------------------------------------------------------------------
 // CVoIPG711DecoderIntfc::~CVoIPG711DecoderIntfc
 // ---------------------------------------------------------------------------
@@ -44,7 +40,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG711DecoderIntfc::ConstructL(
-                            CVoIPG711DecoderIntfcImpl* aFormatIntfcImpl)
+        CVoIPG711DecoderIntfcImpl* aFormatIntfcImpl)
     {
     iFormatIntfcImpl = aFormatIntfcImpl;
     CVoIPFormatIntfc::ConstructL(iFormatIntfcImpl);
@@ -110,5 +106,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711DecoderIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,32 +1,30 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Service
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPDownlinkStreamImpl.h"
 #include "VoIPG711DecoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPG711DecoderIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPG711DecoderIntfcImpl* CVoIPG711DecoderIntfcImpl::NewL(
-                           CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     CVoIPG711DecoderIntfcImpl* self = new (ELeave) CVoIPG711DecoderIntfcImpl();
     CleanupStack::PushL(self);
@@ -56,7 +54,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG711DecoderIntfcImpl::ConstructL(
-    CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     iVoIPAudioSession = aDnLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -68,7 +66,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPG711DecoderIntfcImpl::SetMode(
-                                CVoIPFormatIntfc::TG711CodecMode aMode)
+        CVoIPFormatIntfc::TG711CodecMode aMode)
     {
     TInt err = iVoIPAudioSession->SetMode(aMode);
     return err;
@@ -79,7 +77,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPG711DecoderIntfcImpl::GetMode(
-                                CVoIPFormatIntfc::TG711CodecMode& aMode)
+        CVoIPFormatIntfc::TG711CodecMode& aMode)
     {
     TInt err = iVoIPAudioSession->GetMode(aMode);
     return err;
@@ -125,5 +123,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,27 +1,25 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipformatintfc.h>
 #include <voipg711encoderintfc.h>
 #include "VoIPG711EncoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPG711EncoderIntfc::~CVoIPG711EncoderIntfc
 // ---------------------------------------------------------------------------
@@ -43,7 +41,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG711EncoderIntfc::ConstructL(
-                            CVoIPG711EncoderIntfcImpl* aFormatIntfcImpl)
+        CVoIPG711EncoderIntfcImpl* aFormatIntfcImpl)
     {
     iFormatIntfcImpl = aFormatIntfcImpl;
     CVoIPFormatIntfc::ConstructL(iFormatIntfcImpl);
@@ -69,5 +67,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG711EncoderIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,34 +1,33 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPUplinkStreamImpl.h"
 #include "VoIPG711EncoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPG711EncoderIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPG711EncoderIntfcImpl* CVoIPG711EncoderIntfcImpl::NewL(
-                           CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
-    CVoIPG711EncoderIntfcImpl* self = new (ELeave) CVoIPG711EncoderIntfcImpl();
+    CVoIPG711EncoderIntfcImpl* self =
+            new (ELeave) CVoIPG711EncoderIntfcImpl();
     CleanupStack::PushL(self);
     self->ConstructL(aUpLinkStreamImpl);
     CleanupStack::Pop(self);
@@ -56,7 +55,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG711EncoderIntfcImpl::ConstructL(
-    CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
     iVoIPAudioSession = aUpLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -68,7 +67,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPG711EncoderIntfcImpl::SetMode(
-                                CVoIPFormatIntfc::TG711CodecMode aMode)
+        CVoIPFormatIntfc::TG711CodecMode aMode)
     {
     TInt err = iVoIPAudioSession->SetMode(aMode);
     return err;
@@ -79,11 +78,10 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPG711EncoderIntfcImpl::GetMode(
-                                CVoIPFormatIntfc::TG711CodecMode& aMode)
+        CVoIPFormatIntfc::TG711CodecMode& aMode)
     {
     TInt err = iVoIPAudioSession->GetMode(aMode);
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipg729decoderintfc.h>
 #include "VoIPG729DecoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPG729DecoderIntfc::~CVoIPG729DecoderIntfc
 // ---------------------------------------------------------------------------
@@ -42,7 +40,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG729DecoderIntfc::ConstructL(
-                            CVoIPG729DecoderIntfcImpl* aFormatIntfcImpl)
+        CVoIPG729DecoderIntfcImpl* aFormatIntfcImpl)
     {
     iFormatIntfcImpl = aFormatIntfcImpl;
     CVoIPFormatIntfc::ConstructL(iFormatIntfcImpl);
@@ -58,5 +56,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPG729DecoderIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,32 +1,30 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Service
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPDownlinkStreamImpl.h"
 #include "VoIPG729DecoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPG729DecoderIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPG729DecoderIntfcImpl* CVoIPG729DecoderIntfcImpl::NewL(
-                           CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     CVoIPG729DecoderIntfcImpl* self = new (ELeave) CVoIPG729DecoderIntfcImpl();
     CleanupStack::PushL(self);
@@ -56,7 +54,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPG729DecoderIntfcImpl::ConstructL(
-    CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     iVoIPAudioSession = aDnLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -73,5 +71,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Service
+ *
+ */
 
 #include <e32base.h>
 #include <voipilbcdecoderintfc.h>
 #include "VoIPILBCDecoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPILBCDecoderIntfc::~CVoIPILBCDecoderIntfc
 // ---------------------------------------------------------------------------
@@ -42,7 +40,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPILBCDecoderIntfc::ConstructL(
-                            CVoIPILBCDecoderIntfcImpl* aFormatIntfcImpl)
+        CVoIPILBCDecoderIntfcImpl* aFormatIntfcImpl)
     {
     iFormatIntfcImpl = aFormatIntfcImpl;
     CVoIPFormatIntfc::ConstructL(iFormatIntfcImpl);
@@ -53,7 +51,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPILBCDecoderIntfc::SetMode(
-                                     CVoIPFormatIntfc::TILBCCodecMode aMode)
+        CVoIPFormatIntfc::TILBCCodecMode aMode)
     {
     TInt err = iFormatIntfcImpl->SetMode(aMode);
     return err;
@@ -64,7 +62,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPILBCDecoderIntfc::GetMode(
-                                     CVoIPFormatIntfc::TILBCCodecMode& aMode)
+        CVoIPFormatIntfc::TILBCCodecMode& aMode)
     {
     TInt err = iFormatIntfcImpl->GetMode(aMode);
     return err;
@@ -90,5 +88,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCDecoderIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,32 +1,30 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPDownlinkStreamImpl.h"
 #include "VoIPILBCDecoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPILBCDecoderIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPILBCDecoderIntfcImpl* CVoIPILBCDecoderIntfcImpl::NewL(
-                           CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     CVoIPILBCDecoderIntfcImpl* self = new (ELeave) CVoIPILBCDecoderIntfcImpl();
     CleanupStack::PushL(self);
@@ -56,7 +54,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPILBCDecoderIntfcImpl::ConstructL(
-    CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
+        CVoIPAudioDownlinkStreamImpl* aDnLinkStreamImpl)
     {
     iVoIPAudioSession = aDnLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -103,5 +101,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipilbcencoderintfc.h>
 #include "VoIPILBCEncoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPILBCEncoderIntfc::~CVoIPILBCEncoderIntfc
 // ---------------------------------------------------------------------------
@@ -42,7 +40,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPILBCEncoderIntfc::ConstructL(
-                            CVoIPILBCEncoderIntfcImpl* aFormatIntfcImpl)
+        CVoIPILBCEncoderIntfcImpl* aFormatIntfcImpl)
     {
     iFormatIntfcImpl = aFormatIntfcImpl;
     CVoIPFormatIntfc::ConstructL(iFormatIntfcImpl);
@@ -68,5 +66,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPILBCEncoderIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,32 +1,30 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPAudioSession.h"
 #include "VoIPUplinkStreamImpl.h"
 #include "VoIPILBCEncoderIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPILBCEncoderIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPILBCEncoderIntfcImpl* CVoIPILBCEncoderIntfcImpl::NewL(
-                           CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
     CVoIPILBCEncoderIntfcImpl* self = new (ELeave) CVoIPILBCEncoderIntfcImpl();
     CleanupStack::PushL(self);
@@ -56,7 +54,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPILBCEncoderIntfcImpl::ConstructL(
-    CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
+        CVoIPAudioUplinkStreamImpl* aUpLinkStreamImpl)
     {
     iVoIPAudioSession = aUpLinkStreamImpl->GetSession();
     CVoIPFormatIntfcImpl::ConstructL(iVoIPAudioSession);
@@ -83,5 +81,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBuffer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBuffer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,24 +1,22 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPJBDataBufferImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // Constructor
 // ---------------------------------------------------------------------------
@@ -62,5 +60,4 @@
     iVoIPJBDataBufferImpl->GetBufferSequence(aBufferSeq);
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBufferImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJBDataBufferImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,24 +1,22 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
 #include "VoIPJBDataBufferImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPJBDataBufferImpl::NewL
 // ---------------------------------------------------------------------------
@@ -77,6 +75,5 @@
     aBufferSeq = iBufferSequence;
     }
 
-
 // End of file
 
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfc.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfc.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,25 +1,23 @@
 /*
-* Copyright (c) 2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2008 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: VOIP Audio Service
+ *
+ */
 
 #include <voipjitterbufferintfc.h>
 #include "VoIPJitterBufferIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPJitterBufferIntfc::~CVoIPJitterBufferIntfc
 // ---------------------------------------------------------------------------
@@ -41,7 +39,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPJitterBufferIntfc::ConstructL(
-    CVoIPJitterBufferIntfcImpl* aVoIPJitterBufferIntfcImpl)
+        CVoIPJitterBufferIntfcImpl* aVoIPJitterBufferIntfcImpl)
     {
     iVoIPJitterBufferIntfcImpl = aVoIPJitterBufferIntfcImpl;
     }
@@ -51,7 +49,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPJitterBufferIntfc::SetObserver(
-    MVoIPJitterBufferObserver& aObserver)
+        MVoIPJitterBufferObserver& aObserver)
     {
     TInt err = iVoIPJitterBufferIntfcImpl->SetObserver(aObserver);
     return err;
@@ -62,7 +60,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPJitterBufferIntfc::ConfigureJitterBuffer(
-                                      const TVoIPJBConfig& aJbConfig)
+        const TVoIPJBConfig& aJbConfig)
     {
     TInt err = iVoIPJitterBufferIntfcImpl->ConfigureJitterBuffer(aJbConfig);
     return err;
@@ -98,5 +96,4 @@
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfcImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPJitterBufferIntfcImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,35 +1,33 @@
 /*
-* Copyright (c) 2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include "VoIPAudioSession.h"
 #include "VoIPJitterBufferIntfcImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPJitterBufferIntfcImpl::NewL
 // ---------------------------------------------------------------------------
 //
 CVoIPJitterBufferIntfcImpl* CVoIPJitterBufferIntfcImpl::NewL(
-    RVoIPAudioSession* aVoIPAudioSession)
+        RVoIPAudioSession* aVoIPAudioSession)
     {
     CVoIPJitterBufferIntfcImpl* self =
-                                new (ELeave) CVoIPJitterBufferIntfcImpl();
+            new (ELeave) CVoIPJitterBufferIntfcImpl();
     CleanupStack::PushL(self);
     self->ConstructL(aVoIPAudioSession);
     CleanupStack::Pop(self);
@@ -57,7 +55,7 @@
 // ---------------------------------------------------------------------------
 //
 void CVoIPJitterBufferIntfcImpl::ConstructL(
-                                 RVoIPAudioSession* aVoIPAudioSession)
+        RVoIPAudioSession* aVoIPAudioSession)
     {
     CVoIPJitterBufferIntfc::ConstructL(this);
     iVoIPAudioSession = aVoIPAudioSession;
@@ -68,7 +66,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPJitterBufferIntfcImpl::SetObserver(
-                                 MVoIPJitterBufferObserver& aObserver)
+        MVoIPJitterBufferObserver& aObserver)
     {
     iObserver = &aObserver;
     return KErrNone;
@@ -79,7 +77,7 @@
 // ---------------------------------------------------------------------------
 //
 TInt CVoIPJitterBufferIntfcImpl::ConfigureJitterBuffer(
-                                 const TVoIPJBConfig& aJbConfig)
+        const TVoIPJBConfig& aJbConfig)
     {
     TInt err = iVoIPAudioSession->ConfigureJitterBuffer(aJbConfig);
     return err;
@@ -115,6 +113,7 @@
     return err;
     }
 
+#ifdef __FEATURE_NOT_SUPPORTED__
 // ---------------------------------------------------------------------------
 // CVoIPJitterBufferIntfcImpl::SendEventToObserver
 // ---------------------------------------------------------------------------
@@ -123,5 +122,7 @@
     {
     iObserver->Event(*this, aEvent);
     }
+#endif //__FEATURE_NOT_SUPPORTED__
+
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactory.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactory.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipringtoneplayer.h>
@@ -22,7 +21,6 @@
 #include "VoIPQueueHandler.h"
 #include "VoIPRingToneFactoryImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CRingToneFactory::CreateFactory
 // ---------------------------------------------------------------------------
@@ -79,11 +77,10 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CRingToneFactory::CreateRingTonePlayer(
-                                CRingTonePlayer*& aRingTonePlayer)
+        CRingTonePlayer*& aRingTonePlayer)
     {
     TInt err = iRingToneFactoryImpl->CreateRingTonePlayer(aRingTonePlayer);
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactoryImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingToneFactoryImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Service
+ *
+ */
 
 #include <e32base.h>
 #include "VoIPRingTonePlayerImpl.h"
 #include "VoIPRingToneFactoryImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CRingToneFactoryImpl::NewL
 // ---------------------------------------------------------------------------
@@ -63,11 +61,10 @@
 // ---------------------------------------------------------------------------
 //
 TInt CRingToneFactoryImpl::CreateRingTonePlayer(
-                           CRingTonePlayer*& aRingTonePlayer)
+        CRingTonePlayer*& aRingTonePlayer)
     {
     TRAPD(err, aRingTonePlayer = CRingTonePlayerImpl::NewL());
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayer.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayer.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,26 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipringtoneplayer.h>
 #include "VoIPRingTonePlayerImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CRingTonePlayer::~CRingTonePlayer
 // ---------------------------------------------------------------------------
@@ -65,7 +63,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CRingTonePlayer::Open(MRingToneObserver& aObserver,
-                                    TPtr aFileName)
+        TPtr aFileName)
     {
     TRAPD(err, iRingTonePlayerImpl->OpenL(aObserver, aFileName));
     return err;
@@ -76,7 +74,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CRingTonePlayer::Open(MRingToneObserver& aObserver,
-                                    RFile& aFileHandle)
+        RFile& aFileHandle)
     {
     TRAPD(err, iRingTonePlayerImpl->OpenL(aObserver, aFileHandle));
     return err;
@@ -87,8 +85,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CRingTonePlayer::Open(MRingToneObserver& aObserver,
-                                    TPtr8 aDesTone,
-                                    TPtr8 aMimeType)
+        TPtr8 aDesTone, TPtr8 aMimeType)
     {
     TRAPD(err, iRingTonePlayerImpl->OpenL(aObserver, aDesTone, aMimeType));
     return err;
@@ -143,5 +140,4 @@
     iRingTonePlayerImpl->Close();
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayerImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPRingTonePlayerImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,29 +1,24 @@
 /*
-* Copyright (c) 2007-2008 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: VOIP Audio Service
-*
-*/
-
+ * Copyright (c) 2007-2008 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: VOIP Audio Service
+ *
+ */
 
 #include <e32base.h>
 #include "VoIPAudioSession.h"
 #include "VoIPRingTonePlayerImpl.h"
 
-// CONSTANTS
-//_LIT8(KMimetypeMP3, "audio/mpeg");
-
-
 // ---------------------------------------------------------------------------
 // CRingTonePlayerImpl::NewL
 // ---------------------------------------------------------------------------
@@ -119,7 +114,7 @@
 // ---------------------------------------------------------------------------
 //
 void CRingTonePlayerImpl::OpenL(MRingToneObserver& aObserver,
-                                RFile& aFileHandle)
+        RFile& aFileHandle)
     {
     iObserver = &aObserver;
     StartMsgQueueL();
@@ -133,9 +128,8 @@
 // Plays ring tone from a descriptor string based on its MIME type
 // ---------------------------------------------------------------------------
 //
-void CRingTonePlayerImpl::OpenL(MRingToneObserver& aObserver,
-                                TPtr8 aDesTone,
-                                TPtr8 /*aMimeType*/)
+void CRingTonePlayerImpl::OpenL(MRingToneObserver& aObserver, TPtr8 aDesTone,
+        TPtr8 /*aMimeType*/)
     {
     iObserver = &aObserver;
     StartMsgQueueL();
@@ -148,22 +142,9 @@
         }
     else
         {
-//        size += aMimeType.Size();
-
         HBufC8* tone = HBufC8::NewLC(size);
         TPtr8 ptr = tone->Des();
-/*
-        if (aMimeType.Compare(KMimetypeMP3) == 0)
-            {
-            // MP3 requires mime header
-            ptr.Copy(aMimeType);
-            ptr.Append(aDesTone);
-            }
-        else
-            {*/
-            ptr.Copy(aDesTone);
-//            }
-
+        ptr.Copy(aDesTone);
         TInt err = iVoIPAudioSession.OpenRingTonePlayer(*tone);
         CleanupStack::PopAndDestroy(tone);
         User::LeaveIfError(err); //return error via trap mechanism
@@ -229,7 +210,7 @@
     if (iMsgComQueue.Handle() <= 0)
         {
         TInt err = iMsgComQueue.CreateGlobal(KRingToneComQueue,
-                                             KVoIPMsgComQSlots);
+                KVoIPMsgComQSlots);
         User::LeaveIfError(err);
         }
 
@@ -255,7 +236,6 @@
     iMsgQComHandler->Start();
     }
 
-
 // ======== CALLBACK FUNCTIONS ========
 
 
@@ -270,5 +250,4 @@
     iObserver->Event(*this, aEventType, aError);
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUplinkStreamImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUplinkStreamImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -22,7 +22,6 @@
 #include "VoIPAudioSession.h"
 #include "VoIPAudioClientServer.h"
 #include "VoIPFormatIntfcImpl.h"
-#include "VoIPFormatIntfcImpl.h"
 #include "VoIPBaseCodecIntfcImpl.h"
 #include "VoIPILBCEncoderIntfcImpl.h"
 #include "VoIPG711EncoderIntfcImpl.h"
@@ -51,6 +50,7 @@
 CVoIPAudioUplinkStreamImpl::~CVoIPAudioUplinkStreamImpl()
     {
     Close();
+    iCodecFormats.Close();
 
     if (iMsgQHandler)
         {
@@ -176,7 +176,16 @@
         const TMMFPrioritySettings aPriority,
         RArray<TVoIPCodecFormat>& aFormats)
     {
-    if (!iCodecFormats || aFormats.Count() <= 0)
+    TInt count = iCodecFormats.Count();
+    aFormats.Reset();
+    if (count > 0)
+        {
+        for (TInt i = 0; i < count; i++)
+            {
+            aFormats.Append(iCodecFormats[i]);
+            }
+        }
+    else
         {
         RArray<TUint32> codecIDs;
         CleanupClosePushL(codecIDs);
@@ -184,10 +193,14 @@
         iVoIPAudioSession.GetSupportedEncoders(aPriority, codecIDs,
                 iG711FrameSize);
 
+#ifdef _DEBUG
+        RDebug::Print(_L("G711 Frame Size=%d"), iG711FrameSize);
+#endif
+
         TUint32 codec = 0;
         TInt count = codecIDs.Count();
         TVoIPCodecFormat format;
-        aFormats.Reset();
+        iCodecFormats.Reset();
 
         for (TInt i = 0; i < count; i++)
             {
@@ -203,11 +216,10 @@
             format = ConvertFourCC(codec);
             if (format != ENULL)
                 {
+                iCodecFormats.Append(format);
                 aFormats.Append(format);
                 }
             }
-
-        iCodecFormats = &aFormats;
         CleanupStack::PopAndDestroy(&codecIDs);
         }
     }
@@ -270,20 +282,11 @@
             }
         }
 
-    TUint32 codecFourCC = CodecFourCC(aFormat);
+    TUint32 codecFourCC = CodecFourCC(iFormat);
     iVoIPAudioSession.SetEncoder(codecFourCC);
     }
 
 // ---------------------------------------------------------------------------
-// CVoIPAudioUplinkStreamImpl::GetFormat
-// ---------------------------------------------------------------------------
-//
-TVoIPCodecFormat CVoIPAudioUplinkStreamImpl::GetFormat()
-    {
-    return iFormat;
-    }
-
-// ---------------------------------------------------------------------------
 // CVoIPAudioUplinkStreamImpl::Start
 // ---------------------------------------------------------------------------
 //
@@ -507,7 +510,11 @@
     {
     TBool status = EFalse;
 
-    if (!iCodecFormats)
+    if (iCodecFormats.Count() > 0)
+        {
+        status = FindFormat(aFormat);
+        }
+    else
         {
         // Client hasn't called GetSupportedFormatsL
         RArray<TVoIPCodecFormat> codecs;
@@ -516,11 +523,6 @@
         GetSupportedFormatsL(iPriority, codecs); //sets iCodecFormats
         status = FindFormat(aFormat);
         CleanupStack::PopAndDestroy(&codecs);
-        iCodecFormats = NULL;
-        }
-    else
-        {
-        status = FindFormat(aFormat);
         }
 
     return status;
@@ -534,28 +536,33 @@
     {
     TBool found = EFalse;
 
-    if (iCodecFormats)
+    if (iCodecFormats.Count() > 0)
         {
-        if (iCodecFormats->Count() > 0)
+        if (iCodecFormats.Find(aFormat) == KErrNotFound)
             {
-            if (iCodecFormats->Find(aFormat) == KErrNotFound)
+            // For backward compatibility with VAS 1.0
+            if (aFormat == EG711)
                 {
-                // For backward compatibility with VAS 1.0
-                if (aFormat == EG711)
+                if (iCodecFormats.Find(EG711_10MS) != KErrNotFound)
                     {
-                    if (iCodecFormats->Find(EG711_10MS) != KErrNotFound)
-                        {
-                        iFormat = EG711_10MS;
-                        found = ETrue;
-                        }
+                    iFormat = EG711_10MS;
+                    found = ETrue;
                     }
                 }
-            else
+            else if (aFormat == EG711_10MS)
                 {
-                iFormat = aFormat;
-                found = ETrue;
+                if (iCodecFormats.Find(EG711) != KErrNotFound)
+                    {
+                    iFormat = EG711;
+                    found = ETrue;
+                    }
                 }
             }
+        else
+            {
+            iFormat = aFormat;
+            found = ETrue;
+            }
         }
 
     return found;
@@ -586,14 +593,4 @@
     iObserver->Event(*this, aEventType, aError);
     }
 
-// ---------------------------------------------------------------------------
-// CVoIPAudioUplinkStreamImpl::Event
-// From MVoIPFormatObserver
-// ---------------------------------------------------------------------------
-//
-void CVoIPAudioUplinkStreamImpl::Event(const CVoIPFormatIntfc& /*aSrc*/,
-        TInt /*aEventType*/)
-    {
-    }
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactory.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactory.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -1,20 +1,19 @@
 /*
-* Copyright (c) 2007-2008 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:  VOIP Audio Services
-*
-*/
-
+ * Copyright (c) 2007-2008 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:  VOIP Audio Services
+ *
+ */
 
 #include <e32base.h>
 #include <voipdownlinkstream.h>
@@ -25,13 +24,12 @@
 #include "VoIPQueueHandler.h"
 #include "VoIPUtilityFactoryImpl.h"
 
-
 // ---------------------------------------------------------------------------
 // CVoIPUtilityFactory::CreateFactory
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::CreateFactory(
-                                   CVoIPUtilityFactory*& aFactory)
+        CVoIPUtilityFactory*& aFactory)
     {
     TInt err = KErrNone;
     CVoIPUtilityFactory* factory = NULL;
@@ -83,14 +81,12 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::CreateDownlinkStream(
-                                   const TVersion aVersion,
-                                   const TVoIPCallType aCallType,
-                                   CVoIPAudioDownlinkStream*& aDnLink)
+        const TVersion aVersion, const TVoIPCallType aCallType,
+        CVoIPAudioDownlinkStream*& aDnLink)
     {
     // Push Over Cellular (PoC) implementation will be added in the future.
-
-    TRAPD(err,
-    iVoIPUtilityFactoryImpl->CreateDownlinkStreamL(aVersion, aCallType, aDnLink));
+    TRAPD(err, iVoIPUtilityFactoryImpl->CreateDownlinkStreamL(aVersion,
+            aCallType, aDnLink));
     return err;
     }
 
@@ -99,12 +95,11 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::CreateDownlinkStream(
-                                   const TVersion aVersion,
-                                   CVoIPJitterBufferIntfc*& aJBIntfc,
-                                   CVoIPAudioDownlinkStream*& aDnLink)
+        const TVersion aVersion, CVoIPJitterBufferIntfc*& aJBIntfc,
+        CVoIPAudioDownlinkStream*& aDnLink)
     {
-    TRAPD(err,
-    iVoIPUtilityFactoryImpl->CreateDownlinkStreamL(aVersion, aJBIntfc, aDnLink));
+    TRAPD(err, iVoIPUtilityFactoryImpl->CreateDownlinkStreamL(aVersion,
+            aJBIntfc, aDnLink));
     return err;
     }
 
@@ -113,14 +108,12 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::CreateUplinkStream(
-                                   const TVersion aVersion,
-                                   const TVoIPCallType aCallType,
-                                   CVoIPAudioUplinkStream*& aUpLink)
+        const TVersion aVersion, const TVoIPCallType aCallType,
+        CVoIPAudioUplinkStream*& aUpLink)
     {
     //TODO: What should we do different for PoC call here?
-
-    TRAPD(err,
-    iVoIPUtilityFactoryImpl->CreateUplinkStreamL(aVersion, aCallType, aUpLink));
+    TRAPD(err, iVoIPUtilityFactoryImpl->CreateUplinkStreamL(aVersion,
+            aCallType, aUpLink));
     return err;
     }
 
@@ -129,7 +122,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::CreateDTMFTonePlayer(
-                                   CDTMFTonePlayer*& aDtmfPlayer)
+        CDTMFTonePlayer*& aDtmfPlayer)
     {
     TRAPD(err, iVoIPUtilityFactoryImpl->CreateDTMFTonePlayerL(aDtmfPlayer));
     return err;
@@ -139,13 +132,12 @@
 // CVoIPUtilityFactory::CreateBuffer
 // ---------------------------------------------------------------------------
 //
-EXPORT_C TInt CVoIPUtilityFactory::CreateBuffer(
-                                   CVoIPDataBuffer*& aBuffer,
-                                   const CVoIPDataBuffer::TVoIPBufferType aType,
-                                   const TVoIPCodecFormat aCodecFormat)
+EXPORT_C TInt CVoIPUtilityFactory::CreateBuffer(CVoIPDataBuffer*& aBuffer,
+        const CVoIPDataBuffer::TVoIPBufferType aType,
+        const TVoIPCodecFormat aCodecFormat)
     {
-    TRAPD(err,
-    iVoIPUtilityFactoryImpl->CreateBufferL(aBuffer, aType, aCodecFormat));
+    TRAPD(err, iVoIPUtilityFactoryImpl->CreateBufferL(aBuffer, aType,
+            aCodecFormat));
     return err;
     }
 
@@ -154,7 +146,7 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::GetSupportedDownlinkFormats(
-                                   RArray<TVoIPCodecFormat>& aFormats)
+        RArray<TVoIPCodecFormat>& aFormats)
     {
     TInt err = iVoIPUtilityFactoryImpl->GetSupportedDownlinkFormats(aFormats);
     return err;
@@ -165,11 +157,10 @@
 // ---------------------------------------------------------------------------
 //
 EXPORT_C TInt CVoIPUtilityFactory::GetSupportedUplinkFormats(
-                                   RArray<TVoIPCodecFormat>& aFormats)
+        RArray<TVoIPCodecFormat>& aFormats)
     {
     TInt err = iVoIPUtilityFactoryImpl->GetSupportedUplinkFormats(aFormats);
     return err;
     }
 
-
 // End of file
--- a/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactoryImpl.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPIntfc/src/VoIPUtilityFactoryImpl.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -85,10 +85,7 @@
         CVoIPAudioDownlinkStream*& aDnLink)
     {
     iDownLink = CVoIPAudioDownlinkStreamImpl::NewL(iPriorityDn);
-    if (iDownLink)
-        {
-        aDnLink = iDownLink;
-        }
+    aDnLink = iDownLink;
     }
 
 // ---------------------------------------------------------------------------
@@ -100,11 +97,11 @@
         CVoIPAudioDownlinkStream*& aDnLink)
     {
     iDownLink = CVoIPAudioDownlinkStreamImpl::NewL(iPriorityDn);
+    aDnLink = iDownLink;
 
     if (iDownLink)
         {
         iDownLink->CreateJitterBufferIntfcL(aJBIntfc);
-        aDnLink = iDownLink;
         }
     }
 
@@ -166,7 +163,11 @@
         }
 
     // Create buffer type- and codec-dependent
-    if (aType == CVoIPDataBuffer::EJitterBuffer && aCodecFormat != EPCM16)
+    if (aType == CVoIPDataBuffer::EJitterBuffer && aCodecFormat == EPCM16)
+        {
+        User::Leave(KErrNotSupported);
+        }
+    else if (aType == CVoIPDataBuffer::EJitterBuffer)
         {
         aBuffer = CVoIPJBDataBufferImpl::NewL(bufLen);
         }
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPQueueHandlerSrv.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPQueueHandlerSrv.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPSERVERCALLBACKHANDLERSRV_H
-#define __VOIPSERVERCALLBACKHANDLERSRV_H
+#ifndef VOIPSERVERCALLBACKHANDLERSRV_H
+#define VOIPSERVERCALLBACKHANDLERSRV_H
 
 // INCLUDES
 #include <e32base.h>
@@ -35,7 +35,6 @@
 
 /**
  *  CQueueHandler
- *
  */
 class CQueueHandlerSrv : public CActive
     {
@@ -44,7 +43,6 @@
     /**
      * NewL()
      * Contructor that takes single queue pointer
-     *
      */
     static CQueueHandlerSrv* NewL(MQueueHandlerObserverSrv* aObserver,
             RMsgQueue<TVoIPMsgBuf>* aMsgQueue);
@@ -57,7 +55,6 @@
     /**
      * Start
      * Starts listening for events.
-     *
      */
     void Start();
 
@@ -88,6 +85,6 @@
 
     };
 
-#endif      // __VOIPSERVERCALLBACKHANDLERSRV_H
+#endif // VOIPSERVERCALLBACKHANDLERSRV_H
 
 // End of File
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPServer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPServer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPAUDIOSERVER_H
-#define __VOIPAUDIOSERVER_H
+#ifndef VOIPAUDIOSERVER_H
+#define VOIPAUDIOSERVER_H
 
 #include <e32base.h>
 
@@ -62,6 +62,6 @@
     CVoIPAudioServerSession* iUplinkSession;
     };
 
-#endif //__VOIPAUDIOSERVER_H
+#endif //VOIPAUDIOSERVER_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerAO.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerAO.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPSERVERAO_H__
-#define __VOIPSERVERAO_H__
+#ifndef VOIPSERVERAO_H
+#define VOIPSERVERAO_H
 
 // INCLUDES
 #include <e32std.h>
@@ -58,6 +58,6 @@
     TThreadId iID;
     };
 
-#endif // __VOIPSERVERAO_H__
+#endif // VOIPSERVERAO_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerSession.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerSession.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPSERVERSESSION_H
-#define __VOIPSERVERSESSION_H
+#ifndef VOIPSERVERSESSION_H
+#define VOIPSERVERSESSION_H
 
 // INCLUDES
 #include <e32msgqueue.h>
@@ -39,9 +39,9 @@
 //  VoIP server session class.
 // -----------------------------------------------------------------------------
 class CVoIPAudioServerSession : public CSession2,
-                                public MThreadComObserver,
-                                public MDevSoundObserver,
-                                public MMdaAudioPlayerCallback
+        public MThreadComObserver,
+        public MDevSoundObserver,
+        public MMdaAudioPlayerCallback
     {
     // Each session is designated as one of these types
     enum TSessionType
@@ -63,7 +63,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -71,7 +71,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -79,7 +79,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -87,7 +87,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -95,7 +95,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -103,7 +103,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -111,7 +111,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -119,7 +119,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -127,7 +127,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -135,7 +135,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -143,7 +143,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -151,7 +151,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -159,7 +159,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -167,7 +167,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -175,7 +175,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -183,7 +183,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -191,7 +191,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -199,7 +199,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -207,7 +207,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -215,7 +215,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -223,7 +223,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -231,7 +231,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -239,7 +239,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RThread&
      * @param TUserCommand
      * @return void
@@ -248,7 +248,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -256,7 +256,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -264,7 +264,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -272,7 +272,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -280,7 +280,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -288,7 +288,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -296,7 +296,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -304,7 +304,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -312,7 +312,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -320,7 +320,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -328,7 +328,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -336,7 +336,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -344,7 +344,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -352,7 +352,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -360,7 +360,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -368,7 +368,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -376,7 +376,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -384,7 +384,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -392,7 +392,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -400,7 +400,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -408,7 +408,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -416,7 +416,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -424,7 +424,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -432,7 +432,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -440,7 +440,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param RMessage2&
      * @return void
      */
@@ -449,7 +449,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -458,7 +458,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -467,7 +467,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -476,7 +476,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -485,7 +485,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -494,7 +494,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param const RMessage2&
      * @return void
      */
@@ -503,7 +503,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -512,7 +512,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -521,7 +521,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -530,7 +530,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -539,7 +539,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -548,7 +548,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TInt
      * @return void
      */
@@ -560,7 +560,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param TInt
      * @param const TTimeIntervalMicroSeconds&
      * @return void
@@ -570,7 +570,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param TInt
      * @return void
      */
@@ -580,7 +580,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param TExcType
      * @return void
      */
@@ -588,7 +588,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param TInt
      * @return void
      */
@@ -662,7 +662,6 @@
 
     TInt iMaxVolume;
     TInt iMaxGain;
-    RArray<TUint> iBitrateArray;
     RArray<TFourCC> iCodecsUp;
     RArray<TFourCC> iCodecsDn;
     TInt iCodecsCountUp;
@@ -682,6 +681,6 @@
     HBufC8* iToneBuf;
     };
 
-#endif //__VOIPSERVERSESSION_H
+#endif //VOIPSERVERSESSION_H
 
 // End of file
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerShutdown.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerShutdown.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef __VOIPSERVERSHUTDOWN_H
-#define __VOIPSERVERSHUTDOWN_H
+#ifndef VOIPSERVERSHUTDOWN_H
+#define VOIPSERVERSHUTDOWN_H
 
 //  INCLUDES
 //#include <e32base.h>
@@ -29,7 +29,6 @@
  *  Shutdown timer after the last client has disconnected.
  *
  *  @lib CVoIPAudioServer.exe
- *  @since Series 60 3.0
  */
 
 /**
@@ -60,6 +59,6 @@
     RTimer iShutDownTimer; // Has
     };
 
-#endif //__VOIPSERVERSHUTDOWN_H
+#endif //VOIPSERVERSHUTDOWN_H
 
 // End of File
--- a/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerThread.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/inc/VoIPServerThread.h	Mon Oct 04 00:51:56 2010 +0300
@@ -45,8 +45,8 @@
 //  Base abstract class for creating VoIP uplink and downlink threads.
 // -----------------------------------------------------------------------------
 class CVoIPThreadBase : public CBase,
-                        public MDevSoundObserver,
-                        public MQueueHandlerObserverSrv
+        public MDevSoundObserver,
+        public MQueueHandlerObserverSrv
     {
 public:
     enum TStreamState
@@ -73,8 +73,9 @@
     void InitMsgQueuesL(const TDesC& aBufferQ, const TDesC& aComQ);
     TInt DoChunk(const TDesC& aChunkName, const TInt aChunkLen,
             const TInt aChunkMaxLen);
-    TInt DetermineMaxBufferLen(TVoIPCodecSettings::TG711FrameRate
-            aG711FrameRate = TVoIPCodecSettings::E20MS);
+    TInt DetermineMaxBufferLen(
+            TVoIPCodecSettings::TG711FrameRate aG711FrameRate =
+                    TVoIPCodecSettings::E20MS);
 
     // From MDevSoundObserver
     virtual void InitializeComplete(TInt aError) = 0;
@@ -105,7 +106,6 @@
 
     CVoIPFormatIntfc::TG711CodecMode iG711CodecMode;
     CVoIPFormatIntfc::TILBCCodecMode iILBCCodecMode;
-
     };
 
 // -----------------------------------------------------------------------------
@@ -114,7 +114,7 @@
 //  Class handling VoIP downlink in a separate thread.
 // -----------------------------------------------------------------------------
 class CVoIPDownlinkThread : public CVoIPThreadBase,
-                            public MJitterBufferObserver
+        public MJitterBufferObserver
     {
 public:
     static TInt ThreadFunction(TAny* aData);
@@ -154,7 +154,7 @@
     // For Jitter Buffer
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param  none
      * @return void
      */
@@ -162,7 +162,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -170,7 +170,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -178,7 +178,7 @@
 
     /**
      * ?description
-     * @since S60 v5.0
+     *
      * @param none
      * @return void
      */
@@ -215,7 +215,6 @@
 #ifdef _DEBUG
     TInt iSamplesPlayedCount;
 #endif
-
     };
 
 // -----------------------------------------------------------------------------
@@ -269,6 +268,7 @@
 
     TSharedData& iShared;
     TBool iVad;
+    RArray<TUint> iBitrates;
 
     CSpeechEncoderConfig* iSpeechEncoderConfig;
     CG711EncoderIntfc* iG711EncoderIntfc;
@@ -278,7 +278,6 @@
 #ifdef _DEBUG
     TInt iSamplesRecCount;
 #endif
-
     };
 
 #endif  // VOIPAUDIOSERVERTHREAD_H
--- a/mmserv/voipaudioservices/VoIPServer/src/VoIPDownlinkThread.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/src/VoIPDownlinkThread.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -50,7 +50,6 @@
     delete iJitterBuffer;
     delete iAddJBuffer;
     delete iGetJBuffer;
-
     delete iAudioOutput;
     delete iErrConcealmentIntfc;
     delete iG711DecoderIntfc;
@@ -462,6 +461,11 @@
             }
         }
 
+    if (!iAudioOutput)
+        {
+        iAudioOutput = CAudioOutput::NewL(*iDevSound);
+        }
+
     TRACE_PRN_FN_EXT;
     }
 
@@ -506,11 +510,6 @@
     TUint device = iShared.iAudioDevice;
     iShared.iMutex.Signal();
 
-    if (!iAudioOutput)
-        {
-        iAudioOutput = CAudioOutput::NewL(*iDevSound);
-        }
-
     if (iAudioOutput)
         {
         // ENoPreference=0, EAll=1, ENoOutput=2, EPrivate=3, EPublic=4
@@ -529,9 +528,10 @@
         else // Use default device routing
             {
             outputDev = CAudioOutput::ENoPreference;
-            } //make sure doesn't break loudspeaker audio
+            }
 
         iAudioOutput->SetAudioOutputL(outputDev);
+        TRACE_PRN_N1(_L("Output device set=[%d]"), outputDev);
         }
 
     TRACE_PRN_FN_EXT;
@@ -546,17 +546,12 @@
     {
     TRACE_PRN_FN_ENT;
 
-    if (!iAudioOutput)
-        {
-        iAudioOutput = CAudioOutput::NewL(*iDevSound);
-        }
-
     if (iAudioOutput)
         {
+        CVoIPAudioDownlinkStream::TVoIPOutputDevice device;
         CAudioOutput::TAudioOutputPreference outputDev =
                 iAudioOutput->AudioOutput();
-
-        CVoIPAudioDownlinkStream::TVoIPOutputDevice device;
+        TRACE_PRN_N1(_L("VoIP->DNL GetAudioDeviceL [%d]"), outputDev);
 
         switch (outputDev)
             {
@@ -940,7 +935,7 @@
 //
 void CVoIPDownlinkThread::ConfigureJitterBufferL()
     {
-    TInt err = KErrNone;
+    TInt err = KErrNotSupported;
 
     if (iCodecID != KMMFFourCCCodePCM16)
         {
@@ -1269,8 +1264,8 @@
             break;
             }
         case MJitterBufferObserver::EGeneralError:
-//        case MJitterBufferObserver::EBufferUnderflow:
-//        case MJitterBufferObserver::EBufferOverflow:
+//      case MJitterBufferObserver::EBufferUnderflow:
+//      case MJitterBufferObserver::EBufferOverflow:
         default:
             {
             SendCmd(ECmdDnLinkJBError, aError);
--- a/mmserv/voipaudioservices/VoIPServer/src/VoIPServerSession.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/src/VoIPServerSession.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -97,8 +97,6 @@
         }
 
     iShared.iMutex.Close();
-    iShared.iCodecSettings.iArrBitrates.Reset();
-
     iVoIPServer.DropSession(); // will start shutdown if no more sessions left
 
     // Release memory and close handles to unused plug-ins held by the DevSound
@@ -128,6 +126,7 @@
     iAO = new (ELeave) CVoIPServerAO(this, tID);
     iShared.iMnThreadStatus = &(this->iAO->iStatus);
     iShared.iCodecSettings.iG711FrameRate = TVoIPCodecSettings::E20MS;
+    iShared.iCodecSettings.iArrBitrates = NULL;
     iShared.iMutex.Signal();
     iAO->Request();
     iSessionType = ENone;
@@ -412,16 +411,16 @@
     p().iInt = 0;
 
     // Is codecs info already available?
-    if (iCodecsCountUp > 0 &&
-       (iSessionType == EQueryEnc || iSessionType == EUplink))
+    if (iCodecsCountUp > 0 && (iSessionType == EQueryEnc ||
+            iSessionType == EUplink))
         {
         p().iInt = iCodecsCountUp;
         iShared.iMutex.Wait();
         p().iUint = iShared.iCodecSettings.iG711FrameRate; //TODO:
         iShared.iMutex.Signal();
         }
-    else if (iCodecsCountDn > 0 &&
-            (iSessionType == EQueryDec || iSessionType == EDnlink))
+    else if (iCodecsCountDn > 0 && (iSessionType == EQueryDec ||
+            iSessionType == EDnlink))
         {
         p().iInt = iCodecsCountDn;
         iShared.iMutex.Wait();
@@ -481,8 +480,8 @@
     stream.Open(*dataCopyBuffer);
     CleanupClosePushL(stream);
 
-    if (iCodecsCountUp > 0 &&
-       (iSessionType == EQueryEnc || iSessionType == EUplink))
+    if (iCodecsCountUp > 0 && (iSessionType == EQueryEnc ||
+            iSessionType == EUplink))
         {
         for (TInt i = 0; i < iCodecsCountUp; i++)
             {
@@ -490,8 +489,8 @@
             TRACE_PRN_N2(_L("VoIP->CodecUP[%d]==[0x%x]"), i+1, iCodecsUp[i].FourCC());
             }
         }
-    else if (iCodecsCountDn > 0 &&
-            (iSessionType == EQueryDec || iSessionType == EDnlink))
+    else if (iCodecsCountDn > 0 && (iSessionType == EQueryDec ||
+            iSessionType == EDnlink))
         {
         for (TInt i = 0; i < iCodecsCountDn; i++)
             {
@@ -535,11 +534,9 @@
     if (iThread.Handle() <= 0)
         {
         err = iThread.Create(_L("VoIPDownlinkThread"),
-                             CVoIPDownlinkThread::ThreadFunction,
-                             KDefaultStackSize,
-                             KMinHeapSize,
-                             KMinHeapSize << 12, //1MB
-                             &iShared);
+                CVoIPDownlinkThread::ThreadFunction, KDefaultStackSize,
+                KMinHeapSize, KMinHeapSize << 12, //1MB
+                &iShared);
         if (err == KErrNone)
             {
             iThread.SetPriority(EPriorityRealTime);
@@ -594,11 +591,9 @@
     if (iThread.Handle() <= 0)
         {
         err = iThread.Create(_L("VoIPUplinkThread"),
-                             CVoIPUplinkThread::ThreadFunction,
-                             KDefaultStackSize,
-                             KMinHeapSize,
-                             KMinHeapSize << 12, //1MB
-                             &iShared);
+                CVoIPUplinkThread::ThreadFunction, KDefaultStackSize,
+                KMinHeapSize, KMinHeapSize << 12, //1MB
+                &iShared);
         if (err == KErrNone)
             {
             iThread.SetPriority(EPriorityRealTime);
@@ -989,14 +984,13 @@
 
     RArray<TUint> bitrates;
     iShared.iMutex.Wait();
-    bitrates = iShared.iCodecSettings.iArrBitrates;
+    bitrates = *iShared.iCodecSettings.iArrBitrates;
     iShared.iMutex.Signal();
     TInt numOfItems = bitrates.Count();
 
     for (TInt i = 0; i < numOfItems; i++)
         {
         stream.WriteUint32L(bitrates[i]);
-
         TRACE_PRN_N1(_L("VoIP->SRV-SESSION: BR: [%d]"), bitrates[i]);
         }
 
@@ -1677,9 +1671,14 @@
     TRACE_PRN_IF_ERR(aError);
 
     TVoIPMsgBufPckg p;
+    p().iInt = 0;
+    p().iStatus = aError;
+
     iShared.iMutex.Wait();
-    p().iInt = iShared.iCodecSettings.iArrBitrates.Count();
-    p().iStatus = aError;
+    if (iShared.iCodecSettings.iArrBitrates)
+        {
+        p().iInt = iShared.iCodecSettings.iArrBitrates->Count();
+        }
     iShared.iMutex.Signal();
     TRAPD(err, iMessage.WriteL(0, p));
     iMessage.Complete(err);
@@ -2042,7 +2041,6 @@
 void CVoIPAudioServerSession::ToneFinished(TInt aError)
     {
     TRACE_PRN_IF_ERR(aError);
-
     NotifyDtmfClient(ECmdDTMFTonePlayFinished, aError);
     }
 
--- a/mmserv/voipaudioservices/VoIPServer/src/VoIPUplinkThread.cpp	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/VoIPServer/src/VoIPUplinkThread.cpp	Mon Oct 04 00:51:56 2010 +0300
@@ -44,6 +44,8 @@
     TRACE_PRN_FN_ENT;
 
     Stop();
+    iBitrates.Close();
+    iShared.iCodecSettings.iArrBitrates = NULL;
     delete iSpeechEncoderConfig;
     delete iG711EncoderIntfc;
     delete iG729EncoderIntfc;
@@ -526,10 +528,10 @@
 
     if (iSpeechEncoderConfig)
         {
-        RArray<TUint> bitrates;
-        err = iSpeechEncoderConfig->GetSupportedBitrates(bitrates);
+        iBitrates.Reset();
+        err = iSpeechEncoderConfig->GetSupportedBitrates(iBitrates);
         iShared.iMutex.Wait();
-        iShared.iCodecSettings.iArrBitrates = bitrates;
+        iShared.iCodecSettings.iArrBitrates = &iBitrates;
         iShared.iMutex.Signal();
         }
 
--- a/mmserv/voipaudioservices/group/bld.inf	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/group/bld.inf	Mon Oct 04 00:51:56 2010 +0300
@@ -29,6 +29,5 @@
 #include "../VoIPServer/group/bld.inf"
 #include "../VoIPClient/group/bld.inf"
 #include "../VoIPIntfc/group/bld.inf"
-//#include "../internal/VoIPTestApp/group/bld.inf"
 
 // End of file
--- a/mmserv/voipaudioservices/inc/JitterBuffer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/JitterBuffer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -11,13 +11,13 @@
  *
  * Contributors:
  *
- * Description:  Jitter buffer for audio frames.
- *  Interface   : VoIPJitterBuffer.lib
+ * Description: Jitter buffer for audio frames.
+ * Interface  : VoIPJitterBuffer.lib
  *
  */
 
-#ifndef __VOIPJITTERBUFFER_H
-#define __VOIPJITTERBUFFER_H
+#ifndef VOIPJITTERBUFFER_H
+#define VOIPJITTERBUFFER_H
 
 // DATA TYPES
 
@@ -33,7 +33,6 @@
  *  Jitter buffer.
  *
  *  @lib VoIPJitterBuffer.lib
- *  @since Series 60 5.0
  */
 class CVoIPJitterBuffer : public CActive
     {
@@ -54,7 +53,7 @@
     enum TJBTransitionState
         {
         EWait,
-        //    ENeedData,
+        //ENeedData,
         EEmptyData
         };
 
@@ -77,7 +76,7 @@
     /**
      * SetupL
      * Sets codec information and initializes JB.
-     * @since Series 60 5.0
+     *
      * @param TFourCC - codec's fourcc
      * @param TVoIPJBConfig& - JB configuraion parameters
      * @return void
@@ -87,7 +86,7 @@
     /**
      * ResetBuffer
      * Resets JB to its original state with no data.
-     * @since Series 60 5.0
+     *
      * @param TBool - ETrue == tone is to be played
      * @return void
      */
@@ -96,7 +95,6 @@
     /**
      * Delay Down
      *
-     * @since Series 60 5.0
      * @param none
      * @return void
      */
@@ -105,7 +103,6 @@
     /**
      * Delay Up
      *
-     * @since Series 60 5.0
      * @param none
      * @return void
      */
@@ -114,7 +111,6 @@
     /**
      * Play
      *
-     * @since Series 60 5.0
      * @param none
      * @return void
      */
@@ -123,7 +119,6 @@
     /**
      * Pause
      *
-     * @since Series 60 5.0
      * @param none
      * @return void
      */
@@ -132,7 +127,6 @@
     /**
      * Stop
      *
-     * @since Series 60 5.0
      * @param none
      * @return void
      */
@@ -141,7 +135,7 @@
     /**
      * FillBuffer
      * Retrieves next frame from JB queue.
-     * @since Series 60 5.0
+     *
      * @param CMMFBuffer* - buffer to be filled with data from the JB
      * @return TInt
      */
@@ -150,7 +144,7 @@
     /**
      * EmptyBufferL
      * Queues received frame in JB.
-     * @since Series 60 5.0
+     *
      * @param CMMFBuffer* - buffer to be queued in the JB
      * @return TInt
      */
@@ -188,7 +182,7 @@
 
     /**
      * Play current frame from JB.
-     * @since Series 60 5.0
+     *
      * @param none
      * @return void
      */
@@ -196,7 +190,7 @@
 
     /**
      * TransitionState
-     * @since Series 60 5.0
+     *
      * @param TJBTransitionState
      * @param TUint32
      * @return void
@@ -207,7 +201,7 @@
     /**
      * Calculates the time interval at which data rate should be slowed down
      * when subsequent EmptyBufferL calls are coming too fast.
-     * @since Series 60 5.0
+     *
      * @param none
      * @return Suggested delay in microseconds.
      */
@@ -240,9 +234,8 @@
 
     // Current request size of the buffer
     TInt iRequestSize;
-
     };
 
-#endif  //__VOIPJITTERBUFFER_H
+#endif //VOIPJITTERBUFFER_H
 
 // End of file
--- a/mmserv/voipaudioservices/inc/JitterBufferObserver.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/JitterBufferObserver.h	Mon Oct 04 00:51:56 2010 +0300
@@ -15,8 +15,8 @@
  *
  */
 
-#ifndef JITTERBUFFER_OBS_H
-#define JITTERBUFFER_OBS_H
+#ifndef JITTERBUFFEROBSERVER_H
+#define JITTERBUFFEROBSERVER_H
 
 class MJitterBufferObserver
     {
@@ -39,13 +39,12 @@
     /**
      * Callback function for codec reconfiguration for dynamic
      * buffer size adjustment.
-     * @since S60 v5.0
      * @param aBufferSize Buffer size request in samples.
      *
      virtual void DynamicBufferChangeRequest(TInt aBufferSize) = 0;
      */
-
     };
 
-#endif  // JITTERBUFFER_OBS_H
+#endif //JITTERBUFFEROBSERVER_H
+
 // End of file
--- a/mmserv/voipaudioservices/inc/VoIPAudioClientServer.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/VoIPAudioClientServer.h	Mon Oct 04 00:51:56 2010 +0300
@@ -16,8 +16,8 @@
  *
  */
 
-#ifndef __VOIPAUDIOCLIENTSERVER_H
-#define __VOIPAUDIOCLIENTSERVER_H
+#ifndef VOIPAUDIOCLIENTSERVER_H
+#define VOIPAUDIOCLIENTSERVER_H
 
 #include <e32base.h>
 #include <f32file.h> //for RFile
@@ -90,7 +90,6 @@
     EVoIPResetJitterBuffer,
     EVoIPJBDelayDown,
     EVoIPJBDelayUp,
-
     EVoIPSessionClose
     };
 
@@ -169,6 +168,6 @@
 
 typedef TPckgBuf<TTonesMsgBuf> TTonesMsgBufPckg;
 
-#endif //__VOIPAUDIOCLIENTSERVER_H
+#endif //VOIPAUDIOCLIENTSERVER_H
 
 // End of file
--- a/mmserv/voipaudioservices/inc/VoIPAudioSession.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/VoIPAudioSession.h	Mon Oct 04 00:51:56 2010 +0300
@@ -16,8 +16,8 @@
  *
  */
 
-#ifndef __VOIPAUDIOSESSION_H
-#define __VOIPAUDIOSESSION_H
+#ifndef VOIPAUDIOSESSION_H
+#define VOIPAUDIOSESSION_H
 
 // INCLUDES
 #include <mmfbase.h>
@@ -60,7 +60,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -69,7 +68,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -78,7 +76,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -87,7 +84,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -96,7 +92,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TMMFPrioritySettings
      * @param RArray<TUint32>&
      * @param TInt&
@@ -108,7 +103,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -117,7 +111,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -127,7 +120,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -137,7 +129,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -146,7 +137,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -155,7 +145,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -164,7 +153,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TPtr8
      * @param const TInt64
      * @return TInt
@@ -176,7 +164,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TMMFPrioritySettings
      * @return TInt
      */
@@ -185,7 +172,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -194,7 +180,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -203,7 +188,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -212,7 +196,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TMMFPrioritySettings
      * @param RArray<TUint32>&
      * @param TInt&
@@ -224,7 +207,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -233,7 +215,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -242,7 +223,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -251,7 +231,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -260,7 +239,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TPtr8
      * @return TInt
      */
@@ -271,7 +249,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TArray<TUint>&
      * @return void
      */
@@ -280,7 +257,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param const TUint
      * @return TInt
      */
@@ -289,7 +265,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TUint&
      * @return TInt
      */
@@ -298,7 +273,7 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
+     *
      * @param TBool
      * @return TInt
      */
@@ -307,7 +282,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool&
      * @return TInt
      */
@@ -316,7 +290,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool&
      * @return TInt
      */
@@ -325,7 +298,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool
      * @return TInt
      */
@@ -334,7 +306,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool&
      * @return TInt
      */
@@ -343,7 +314,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -352,7 +322,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TG711CodecMode
      * @return TInt
      */
@@ -361,7 +330,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TG711CodecMode&
      * @return TInt
      */
@@ -370,7 +338,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TILBCCodecMode
      * @return TInt
      */
@@ -379,7 +346,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TILBCCodecMode&
      * @return TInt
      */
@@ -388,7 +354,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool
      * @return TInt
      */
@@ -397,7 +362,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool&
      * @return TInt
      */
@@ -406,7 +370,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool
      * @return TInt
      */
@@ -415,7 +378,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TBool&
      * @return TInt
      */
@@ -424,7 +386,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -433,7 +394,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -442,7 +402,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -451,7 +410,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -460,7 +418,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -469,7 +426,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -478,7 +434,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TDesC&
      * @return TInt
      */
@@ -487,7 +442,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param RFile&
      * @return TInt
      */
@@ -496,7 +450,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param TDes&
      * @param TDes&
      * @return TInt
@@ -506,7 +459,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -515,7 +467,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -524,7 +475,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -533,7 +483,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -542,7 +491,6 @@
     /**
      * ?description
      *
-     * @since S60 v5.0
      * @param none
      * @return void
      */
@@ -551,7 +499,6 @@
     /**
      * ConfigureJitterBuffer
      *
-     * @since S60 v5.0
      * @param const TVoIPJBConfig&
      * @return TInt
      */
@@ -560,7 +507,6 @@
     /**
      * ResetJitterBuffer
      *
-     * @since S60 v5.0
      * @param const TBool
      * @return TInt
      */
@@ -569,7 +515,6 @@
     /**
      * DelayDown
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -578,7 +523,6 @@
     /**
      * DelayUp
      *
-     * @since S60 v5.0
      * @param none
      * @return TInt
      */
@@ -588,7 +532,6 @@
     /**
      * PopulateArrayL
      *
-     * @since S60 v5.0
      * @param TVoIPAudioClientServerRequest
      * @param RArray<TUint32>&
      * @param TInt
@@ -599,9 +542,8 @@
 
     TInt SendClientRequest(TVoIPAudioClientServerRequest aRequest,
             const TIpcArgs& aArgs) const;
-
     };
 
-#endif // __VOIPAUDIOSESSION_H
+#endif //VOIPAUDIOSESSION_H
 
 // End of file
--- a/mmserv/voipaudioservices/inc/VoIPQueueHandler.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/VoIPQueueHandler.h	Mon Oct 04 00:51:56 2010 +0300
@@ -1,39 +1,35 @@
 /*
-* Copyright (c) 2007-2008 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:  Declares CQueueHandler class which handles VoIP client/server
-*                messaging.
-*
-*/
+ * Copyright (c) 2007-2008 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:  Declares CQueueHandler class which handles VoIP client/server
+ *               messaging.
+ *
+ */
 
-
-#ifndef __VOIPQUEUEHANDLER_H
-#define __VOIPQUEUEHANDLER_H
-
+#ifndef VOIPQUEUEHANDLER_H
+#define VOIPQUEUEHANDLER_H
 
 // INCLUDES
 #include <e32base.h>
 #include <e32msgqueue.h>
 #include "VoIPAudioClientServer.h"   // for TVoIPMsgBuf
-
 // FORWARD DECLARATIONS
 class CVoIPDataBuffer;
 
-
 /**
-*  MQueueHandlerObserver
-*  Responsible for sending callbacks to the VoIP client app
-*/
+ *  MQueueHandlerObserver
+ *  Responsible for sending callbacks to the VoIP client app
+ */
 class MQueueHandlerObserver
     {
 public:
@@ -42,46 +38,44 @@
     virtual void Event(TInt aEventType, TInt aError) = 0;
     };
 
-
 /**
-*  CQueueHandler
-*
-*/
+ *  CQueueHandler
+ *
+ */
 NONSHARABLE_CLASS(CQueueHandler) : public CActive
     {
 public:
 
     /**
-    * NewL()
-    * Contructor
-    *
-    */
+     * NewL()
+     * Contructor
+     *
+     */
     static CQueueHandler* NewL(MQueueHandlerObserver* aObserver,
-                               RMsgQueue<TVoIPMsgBuf>* aMsgQueue,
-                               TInt aBufferLen = 0);
+            RMsgQueue<TVoIPMsgBuf>* aMsgQueue, TInt aBufferLen = 0);
 
     /**
-    * destructor
-    */
+     * destructor
+     */
     virtual ~CQueueHandler();
 
     /**
-    * Start
-    * Starts listening for events.
-    *
-    */
+     * Start
+     * Starts listening for events.
+     *
+     */
     void Start();
 
     /**
-    * Returns request status.
-    */
+     * Returns request status.
+     */
     TRequestStatus* Status();
 
 private:
 
     /**
-    * constructor
-    */
+     * constructor
+     */
     CQueueHandler(RMsgQueue<TVoIPMsgBuf>* aMsgQueue);
 
     void ConstructL(MQueueHandlerObserver* aObserver, TInt aBufferLen);
@@ -93,19 +87,17 @@
     void DoFillBuffer(TInt aBufLen, TInt aStatus);
     void DoEmptyBuffer(TInt aBufLen, TInt aStatus);
 
-private: // data
-
-    MQueueHandlerObserver*   iObserver; // (not owned)
-    RMsgQueue<TVoIPMsgBuf>*  iMsgQueue;
+private:
+    // data
 
-    RChunk                   iChunk;
-    TPtr8                    iChunkDataPtr;
-    CVoIPDataBuffer*         iBuffer;
+    MQueueHandlerObserver* iObserver; // (not owned)
+    RMsgQueue<TVoIPMsgBuf>* iMsgQueue;
 
+    RChunk iChunk;
+    TPtr8 iChunkDataPtr;
+    CVoIPDataBuffer* iBuffer;
     };
 
-
-#endif      // __VOIPQUEUEHANDLER_H
+#endif //VOIPQUEUEHANDLER_H
 
-
-// End of File
\ No newline at end of file
+// End of File
--- a/mmserv/voipaudioservices/inc/VoIPSharedData.h	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/inc/VoIPSharedData.h	Mon Oct 04 00:51:56 2010 +0300
@@ -16,8 +16,8 @@
  *
  */
 
-#ifndef __VOIPSHAREDDATA_H
-#define __VOIPSHAREDDATA_H
+#ifndef VOIPSHAREDDATA_H
+#define VOIPSHAREDDATA_H
 
 // INCLUDES
 #include <e32std.h>
@@ -149,7 +149,7 @@
     TBool iFrameMode;
     TBool iFrameModeReqForEC;
     TUint iBitrate;
-    RArray<TUint> iArrBitrates;
+    RArray<TUint>* iArrBitrates;
     };
 
 // -----------------------------------------------------------------------------
@@ -195,9 +195,8 @@
     TInt iInt;
     TUint iUint;
     TBool iBool;
-
     };
 
-#endif  // __VOIPSHAREDDATA_H
+#endif  //VOIPSHAREDDATA_H
 
 // End of file
--- a/mmserv/voipaudioservices/rom/VoIPAudioServices.iby	Fri Sep 17 08:33:15 2010 +0300
+++ b/mmserv/voipaudioservices/rom/VoIPAudioServices.iby	Mon Oct 04 00:51:56 2010 +0300
@@ -1,23 +1,23 @@
 /*
-* Copyright (c) 2007-2008 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:  Contains exported components included in the image.
-*
-*/
+ * Copyright (c) 2007-2008 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:  Contains exported components included in the image.
+ *
+ */
 
 
-#ifndef __VOIPAUDIOSERVICES_IBY__
-#define __VOIPAUDIOSERVICES_IBY__
+#ifndef VOIPAUDIOSERVICES_IBY
+#define VOIPAUDIOSERVICES_IBY
 
 file=ABI_DIR\BUILD_DIR\VoIPJitterBuffer.dll  SHARED_LIB_DIR\VoIPJitterBuffer.dll
 file=ABI_DIR\BUILD_DIR\VoIPAudioServer.exe   SHARED_LIB_DIR\VoIPAudioServer.exe
Binary file mmserv/voipaudioservices/sis/VoIPAudioSrvc.sis has changed
Binary file mmserv/voipaudioservices/sis/VoIPAudioSrvc.sisx has changed
Binary file mmserv/voipaudioservices/sis/VoIPAudioSrvc_32.sis has changed
Binary file mmserv/voipaudioservices/sis/VoIPAudioSrvc_32.sisx has changed