TSS001461
设备, 软件 版本: S60 3rd Edition FP1, S60 3rd Edition FP2
S60标准的音乐播放器支持M3U格式的播放列表(Moving Picture Experts Group Audio Layer 3 Uniform Resource Locator)
这样我们可以通过程序来生成列表。我们需要将每个track的文件名写入到播放列表中(M3U文件),文件路径可以是相对路径
M3U文件示例:
#EXTM3U
Audio1.mp3
Audio2.mp3
Audio3.mp3
Audio4.mp3
生成一个.m3u后缀的文件,并将歌曲名和路径使用RFile::Write()写入。我们需要采用UTF8格式
(CnvUtfConverter::ConvertFromUnicodeToUtf8)
//Creating a pre-defined playlist
RFile file;
TInt nRetVal;
TInt err;
RFs fs;
TBuf<500> string;
//Header
string.Copy(_L("#EXTM3U\n"));
//Songs relative paths
string.Append(_L("song1.mp3\n"));
string.Append(_L("song2.mp3\n"));
string.Append(_L("song3.mp3"));
User::LeaveIfError(fs.Connect());
CleanupClosePushL(fs);
_LIT(KLogFile,"c:\\data\\MyPlayList.m3u");
err = file.Create(fs, KLogFile, EFileWrite);
if( err == KErrAlreadyExists)
file.Open(fs, KLogFile, EFileWrite);
TPtrC8 representation((TUint8*)(&string)->Ptr(), (&string)->Size());
TInt pos;
nRetVal = file.Size(pos);
TBuf8<500> stringutf;
CnvUtfConverter::ConvertFromUnicodeToUtf8(stringutf, string);
nRetVal = file.Write(stringutf);
nRetVal = file.Flush();
file.Close();
CleanupStack::PopAndDestroy();
音乐播放器需要刷新一下,才能显示
No related wiki articles found