diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-03-07 22:43:26 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2009-03-07 22:43:26 +0000 |
| commit | 0b46e2db06ec1bbfc3aee819787386ace9dad66c (patch) | |
| tree | 109f4bbf3a7227262a280f00731f0767d331a811 /src/plugins/Input/modplug/decoder_modplug.cpp | |
| parent | 5896c5ae40726637cbfc5605f5f659791ff569c7 (diff) | |
| download | qmmp-0b46e2db06ec1bbfc3aee819787386ace9dad66c.tar.gz qmmp-0b46e2db06ec1bbfc3aee819787386ace9dad66c.tar.bz2 qmmp-0b46e2db06ec1bbfc3aee819787386ace9dad66c.zip | |
improved seeking accuracy
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@827 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input/modplug/decoder_modplug.cpp')
| -rw-r--r-- | src/plugins/Input/modplug/decoder_modplug.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/plugins/Input/modplug/decoder_modplug.cpp b/src/plugins/Input/modplug/decoder_modplug.cpp index c0e5bc380..adb11daed 100644 --- a/src/plugins/Input/modplug/decoder_modplug.cpp +++ b/src/plugins/Input/modplug/decoder_modplug.cpp @@ -169,13 +169,13 @@ bool DecoderModPlug::initialize() return FALSE; }*/ - m_totalTime = (qint64) m_soundFile->GetSongTime(); + m_totalTime = (qint64) m_soundFile->GetSongTime() * 1000; configure(m_freq, m_chan, m_bps); m_inited = TRUE; return TRUE; } -qint64 DecoderModPlug::lengthInSeconds() +qint64 DecoderModPlug::totalTime() { if (! m_inited) return 0; @@ -230,11 +230,11 @@ void DecoderModPlug::run() quint32 lMaxtime; double lPostime; - if (m_seekTime > (lMaxtime = m_soundFile->GetSongTime())) - m_seekTime = lMaxtime; + if (m_seekTime > (lMaxtime = m_soundFile->GetSongTime()) * 1000) + m_seekTime = lMaxtime * 1000; lMax = m_soundFile->GetMaxPosition(); lPostime = float(lMax) / lMaxtime; - m_soundFile->SetCurrentPos(int(m_seekTime * lPostime)); + m_soundFile->SetCurrentPos(int(m_seekTime * lPostime / 1000)); m_seekTime = -1.0; } |
