diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2013-04-28 06:18:14 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2013-04-28 06:18:14 +0000 |
| commit | a8ca945c11589553f6550d26c40d7d82f8f38421 (patch) | |
| tree | 041ac64869173ef30d187d0a23feebde37ccde3a /src/plugins/Input/sid/decoder_sid.cpp | |
| parent | 9eded5482f3ede2d0fa26437c395bd1c2cf3f1a8 (diff) | |
| download | qmmp-a8ca945c11589553f6550d26c40d7d82f8f38421.tar.gz qmmp-a8ca945c11589553f6550d26c40d7d82f8f38421.tar.bz2 qmmp-a8ca945c11589553f6550d26c40d7d82f8f38421.zip | |
sid plugin: added song length database support
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3421 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/sid/decoder_sid.cpp')
| -rw-r--r-- | src/plugins/Input/sid/decoder_sid.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/plugins/Input/sid/decoder_sid.cpp b/src/plugins/Input/sid/decoder_sid.cpp index 320fba03d..89e05feac 100644 --- a/src/plugins/Input/sid/decoder_sid.cpp +++ b/src/plugins/Input/sid/decoder_sid.cpp @@ -26,6 +26,7 @@ #include <sidplayfp/builders/residfp.h> #include <sidplayfp/SidInfo.h> #include <sidplayfp/SidTuneInfo.h> +#include <sidplayfp/SidDatabase.h> #include "decoder_sid.h" // Decoder class @@ -106,6 +107,21 @@ bool DecoderSID::initialize() configure(44100, 2); qDebug("DecoderSID: initialize succes"); + + + char md5[SidTune::MD5_LENGTH]; + tune->createMD5(md5); + + SidDatabase database; + + database.open("/home/user/.qmmp/Songlengths.txt"); + + + + qDebug("length = %d", database.length(md5, track)); + m_length = database.length(md5, track); + + return true; } @@ -126,5 +142,7 @@ int DecoderSID::bitrate() qint64 DecoderSID::read(char *data, qint64 size) { + if(m_player->time() > m_length) + return 0; return m_player->play((short *)data, size/2) * 2; } |
