aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/inputPlugins/ogg_plugin.c3
-rw-r--r--src/playlist.c10
2 files changed, 8 insertions, 5 deletions
diff --git a/src/inputPlugins/ogg_plugin.c b/src/inputPlugins/ogg_plugin.c
index c5197f132..b50ea5ea1 100644
--- a/src/inputPlugins/ogg_plugin.c
+++ b/src/inputPlugins/ogg_plugin.c
@@ -318,7 +318,8 @@ int ogg_decode(OutputBuffer * cb, DecoderControl * dc, InputStream * inStream)
sendDataToOutputBuffer(cb, inStream, dc,
inStream->seekable,
chunk, chunkpos,
- ov_time_tell(&vf),
+ ov_pcm_tell(&vf)/
+ dc->audioFormat.sampleRate,
bitRate);
if(dc->stop) break;
diff --git a/src/playlist.c b/src/playlist.c
index 31dc31fc5..a18f85dee 100644
--- a/src/playlist.c
+++ b/src/playlist.c
@@ -1165,14 +1165,16 @@ int setPlaylistRandomStatus(FILE * fp, int status) {
}
int previousSongInPlaylist(FILE * fp) {
+ static time_t lastTime = 0;
+ time_t diff = time(NULL) - lastTime;
+
+ lastTime += diff;
+
if(playlist_state!=PLAYLIST_STATE_PLAY) return 0;
syncPlaylistWithQueue(0);
- if (getPlayerElapsedTime()>PLAYLIST_PREV_UNLESS_ELAPSED &&
- playlist.songs[playlist.order[playlist.current]]->type
- != SONG_TYPE_URL)
- {
+ if (diff && getPlayerElapsedTime() > PLAYLIST_PREV_UNLESS_ELAPSED) {
return playPlaylistOrderNumber(fp,playlist.current);
}
else {