diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2009-10-20 21:36:58 +0200 |
|---|---|---|
| committer | ghost <andreas.monzner@multimedia-labs.de> | 2009-10-23 11:04:20 +0200 |
| commit | 9b9ac227931a2f378e45bddd5d3917816181b9b9 (patch) | |
| tree | 7c81369ed051888fde8f25fc1ce5380197d98af8 | |
| parent | 1bfe1e6e7d9b0b3f2f1aee47b3fc803651fdb149 (diff) | |
| download | enigma2-9b9ac227931a2f378e45bddd5d3917816181b9b9.tar.gz enigma2-9b9ac227931a2f378e45bddd5d3917816181b9b9.zip | |
fix audio track selection (also needs a small fix in gst-plugin-audiosink)
| -rw-r--r-- | lib/service/servicemp3.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp index 95ec274d..a1c035ba 100644 --- a/lib/service/servicemp3.cpp +++ b/lib/service/servicemp3.cpp @@ -952,11 +952,17 @@ int eServiceMP3::getCurrentTrack() RESULT eServiceMP3::selectTrack(unsigned int i) { - int ret = selectAudioStream(i); - /* flush */ pts_t ppos; getPlayPosition(ppos); - seekTo(ppos); + ppos -= 90000; + if (ppos < 0) + ppos = 0; + + int ret = selectAudioStream(i); + if (!ret) { + /* flush */ + seekTo(ppos); + } return ret; } |
