gui/audioplayer.cpp: add urls from m3u

This commit is contained in:
[CST] Focus
2012-06-18 15:04:31 +04:00
parent 5dd54caf54
commit 4c2ad26dea

View File

@@ -1294,6 +1294,7 @@ bool CAudioPlayerGui::openFilebrowser(void)
std::string sPath = files->Name.substr(0, files->Name.rfind('/')); std::string sPath = files->Name.substr(0, files->Name.rfind('/'));
std::ifstream infile; std::ifstream infile;
char cLine[256]; char cLine[256];
char name[255] = { 0 };
infile.open(files->Name.c_str(), std::ifstream::in); infile.open(files->Name.c_str(), std::ifstream::in);
while (infile.good()) while (infile.good())
{ {
@@ -1301,12 +1302,16 @@ bool CAudioPlayerGui::openFilebrowser(void)
// remove CR // remove CR
if (cLine[strlen(cLine)-1]=='\r') if (cLine[strlen(cLine)-1]=='\r')
cLine[strlen(cLine)-1]=0; cLine[strlen(cLine)-1]=0;
int duration;
sscanf(cLine, "#EXTINF:%d,%[^\n]\n", &duration, name);
if (strlen(cLine) > 0 && cLine[0]!='#') if (strlen(cLine) > 0 && cLine[0]!='#')
{ {
char *url = strstr(cLine, "http://"); char *url = strstr(cLine, "http://");
if (url != NULL) { if (url != NULL) {
if (strstr(url, ".m3u") || strstr(url, ".pls")) if (strstr(url, ".m3u") || strstr(url, ".pls"))
processPlaylistUrl(url); processPlaylistUrl(url);
else
addUrl2Playlist(url, name, duration);
} else if ((url = strstr(cLine, "icy://")) != NULL) { } else if ((url = strstr(cLine, "icy://")) != NULL) {
addUrl2Playlist(url); addUrl2Playlist(url);
} else if ((url = strstr(cLine, "scast:://")) != NULL) { } else if ((url = strstr(cLine, "scast:://")) != NULL) {