diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp | 7 | ||||
| -rw-r--r-- | src/plugins/Transports/http/downloader.cpp | 11 |
2 files changed, 12 insertions, 6 deletions
diff --git a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp index edf830893..95f3244fa 100644 --- a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp +++ b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp @@ -91,6 +91,8 @@ bool DecoderFFmpegFactory::canDecode(QIODevice *i) const } if(filters.contains("*.mp3") && !memcmp(fmt->name, "mp3", 3)) return TRUE; + if(filters.contains("*.aac") && !memcmp(fmt->name, "aac", 3)) + return TRUE; return FALSE; } @@ -112,12 +114,15 @@ const DecoderProperties DecoderFFmpegFactory::properties() const properties.contentType += "audio/x-ms-wma"; if(filters.contains("*.mp3")) properties.contentType += " audio/mpeg"; + if(filters.contains("*.aac")) + properties.contentType += " audio/aac audio/aacp"; + if(filters.contains("*.m4a")) + properties.contentType += " audio/3gpp audio/3gpp2 audio/mp4 audio/MP4A-LATM audio/mpeg4-generic"; properties.contentType = properties.contentType.trimmed(); properties.shortName = "ffmpeg"; properties.hasAbout = TRUE; properties.hasSettings = TRUE; properties.noInput = FALSE; - //properties.protocols = "file"; return properties; } diff --git a/src/plugins/Transports/http/downloader.cpp b/src/plugins/Transports/http/downloader.cpp index e47eeb4b9..2ac5a65a3 100644 --- a/src/plugins/Transports/http/downloader.cpp +++ b/src/plugins/Transports/http/downloader.cpp @@ -348,13 +348,14 @@ void Downloader::parseICYMetaData(char *data) { line = line.right(line.size() - line.indexOf("=") - 1).trimmed(); m_title = line.remove("'"); + QMap<Qmmp::MetaData, QString> metaData; if (!m_title.isEmpty()) - { - QMap<Qmmp::MetaData, QString> metaData; metaData.insert(Qmmp::TITLE, m_title); - metaData.insert(Qmmp::URL, m_url); - StateHandler::instance()->dispatch(metaData); - } + else + metaData.insert(Qmmp::TITLE, m_stream.header.value("icy-name")); + metaData.insert(Qmmp::GENRE, m_stream.header.value("icy-genre")); + metaData.insert(Qmmp::URL, m_url); + StateHandler::instance()->dispatch(metaData); break; } } |
