diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2010-11-24 18:17:51 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2010-11-24 18:17:51 +0000 |
| commit | aa3f57c0236c77f2fd90415fc1f3062a93b25b93 (patch) | |
| tree | d9ab905b952cf9289239b95db99f39321a54e65b /src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp | |
| parent | 5c2f5798c6222d35e08fa0853812e2390181e735 (diff) | |
| download | qmmp-aa3f57c0236c77f2fd90415fc1f3062a93b25b93.tar.gz qmmp-aa3f57c0236c77f2fd90415fc1f3062a93b25b93.tar.bz2 qmmp-aa3f57c0236c77f2fd90415fc1f3062a93b25b93.zip | |
some api changes, partial mpris 2.0 implementation
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1991 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp')
| -rw-r--r-- | src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp | 37 |
1 files changed, 11 insertions, 26 deletions
diff --git a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp index 2e6f163a1..d126d714b 100644 --- a/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp +++ b/src/plugins/Input/ffmpeg/decoderffmpegfactory.cpp @@ -51,14 +51,7 @@ extern "C" bool DecoderFFmpegFactory::supports(const QString &source) const { - QSettings settings(Qmmp::configFile(), QSettings::IniFormat); - QStringList filters; - filters << "*.wma" << "*.ape"; -#if (LIBAVCODEC_VERSION_INT >= ((52<<16)+(20<<8)+0)) - filters << "*.shn"; -#endif - filters = settings.value("FFMPEG/filters", filters).toStringList(); - foreach(QString filter, filters) + foreach(QString filter, properties().filters) { QRegExp regexp(filter, Qt::CaseInsensitive, QRegExp::Wildcard); if (regexp.exactMatch(source)) @@ -70,17 +63,7 @@ bool DecoderFFmpegFactory::supports(const QString &source) const bool DecoderFFmpegFactory::canDecode(QIODevice *i) const { av_register_all(); - QSettings settings(Qmmp::configFile(), QSettings::IniFormat); - QStringList filters; -#if (LIBAVCODEC_VERSION_INT >= ((51<<16)+(44<<8)+0)) - filters << "*.wma" << "*.ape"; -#else - filters << "*.wma"; -#endif -#if (LIBAVCODEC_VERSION_INT >= ((52<<16)+(20<<8)+0)) - filters << "*.shn"; -#endif - filters = settings.value("FFMPEG/filters", filters).toStringList(); + QStringList filters = properties().filters; AVProbeData pd; uint8_t buf[8192 + AVPROBE_PADDING_SIZE]; @@ -119,19 +102,21 @@ const DecoderProperties DecoderFFmpegFactory::properties() const filters = settings.value("FFMPEG/filters", filters).toStringList(); DecoderProperties properties; properties.name = tr("FFmpeg Plugin"); - properties.filter = filters.join(" "); + properties.filters = filters; properties.description = tr("FFmpeg Formats"); if(filters.contains("*.wma")) - properties.contentType += "audio/x-ms-wma"; + properties.contentTypes << "audio/x-ms-wma"; if(filters.contains("*.mp3")) - properties.contentType += " audio/mpeg"; + properties.contentTypes << "audio/mpeg"; if(filters.contains("*.aac")) - properties.contentType += " audio/aac audio/aacp"; + properties.contentTypes << "audio/aac" << "audio/aacp"; if(filters.contains("*.m4a")) - properties.contentType += " audio/x-ffmpeg-shorten"; + properties.contentTypes << "audio/x-ffmpeg-shorten"; if(filters.contains("*.shn")) - properties.contentType += " audio/3gpp audio/3gpp2 audio/mp4 audio/MP4A-LATM audio/mpeg4-generic"; - properties.contentType = properties.contentType.trimmed(); + { + properties.contentTypes << "audio/3gpp" << "audio/3gpp2" << "audio/mp4"; + properties.contentTypes << "audio/MP4A-LATM" << "audio/mpeg4-generic"; + } properties.shortName = "ffmpeg"; properties.hasAbout = true; properties.hasSettings = true; |
