Hi
I am developong an audioplayer application which can record and playback wav files. While playing I have to display the information about the audio file on the playback screen(metadata:artistname,albumname,titlename,etc). I have used CMdaAudioRecorderUtility to record and play the recorded file. To get the metadata information I have used the methods GetNumberOfMetaDataEntries() and GetMetaDataEntryL() provided by CMdaAudioRecorderUtility class. I have written a function GetMetaDataL() to extract the metadata values of the audio file and calling it after the PlayL(). I am getting the error "Feature not Supported (-5)" error. If any one knows how to resolve this error please let me know. Attached is the code snippet.
GetMetaDataL() function:
void CAudioRecorder:: GetMetaDataL(TDes& aTitle,TDes& aAlbum,TDes& aArtist,TDes& aGenre,CMdaAudioRecorderUtility& aUtility)
{
TInt MDNumEntries(0);
User::LeaveIfError(aUtility.GetNumberOfMetaDataEntries(MDNumEntries));
for ( TInt j = 0; j < MDNumEntries; j++ )
{
CMMFMetaDataEntry* entry = aUtility.GetMetaDataEntryL(j);
CleanupStack::PushL(entry);
//if(errorValue == KErrNone)
//{
if (entry->Name().CompareF(KMMFMetaEntrySongTitle) == KErrNone)
{
aTitle.Copy(entry->Value());
}
else if (entry->Name().CompareF(KMMFMetaEntryAlbum) == KErrNone)
{
aAlbum.Copy(entry->Value());
}
else if (entry->Name().CompareF(KMMFMetaEntryArtist) == KErrNone)
{
aArtist.Copy(entry->Value());
}
else if (entry->Name().CompareF(KMMFMetaEntryGenre) == KErrNone)
{
aGenre.Copy(entry->Value());
}
//}
CleanupStack::PopAndDestroy(entry);
}
}
The above function is called inside a function after play function is called,
iToneUtility->PlayL();
GetMetaDataL(iTitle,iAlbum,iArtist,iGenere,*iToneUtility);
*** iToneUtility is an instance of aGenre,CMdaAudioRecorderUtility



