mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-08 13:20:57 +00:00
Merge remote-tracking branch 'server/master'
This commit is contained in:
commit
dd6c8eee42
4 files changed
+15
-7
No files matched your search
+5
-5
@@ -250,12 +250,12 @@ public class MediaSelector implements PlayStateListener, TimeListener,
|
||||
}
|
||||
|
||||
private void startPlaying() {
|
||||
if (activeAudioPlayer != null) {
|
||||
if ((activeAudioPlayer != null) && activeAudioPlayer.isCoveringCurrentRaceTime()) {
|
||||
activeAudioPlayer.playMedia();
|
||||
}
|
||||
for (MediaPlayer player : videoPlayers.values()) {
|
||||
if (player.isMediaPaused()) {
|
||||
player.playMedia();
|
||||
for (MediaPlayer videoPlayer : videoPlayers.values()) {
|
||||
if (videoPlayer.isMediaPaused() && videoPlayer.isCoveringCurrentRaceTime()) {
|
||||
videoPlayer.playMedia();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -458,7 +458,7 @@ public class MediaSelector implements PlayStateListener, TimeListener,
|
||||
private void ensurePlayState(final MediaPlayer mediaPlayer) {
|
||||
switch (this.currentPlayState) {
|
||||
case Playing:
|
||||
if (mediaPlayer.isMediaPaused()) {
|
||||
if (mediaPlayer.isMediaPaused() && mediaPlayer.isCoveringCurrentRaceTime()) {
|
||||
mediaPlayer.playMedia();
|
||||
}
|
||||
break;
|
||||
|
||||
+8
-2
@@ -7,7 +7,7 @@ import com.sap.sailing.domain.common.media.MediaTrack;
|
||||
|
||||
public abstract class AbstractMediaPlayer implements MediaPlayer {
|
||||
|
||||
private static final int TOLERATED_LAG_IN_MILLISECONDS = 2000;
|
||||
private static final int TOLERATED_LAG_IN_MILLISECONDS = 4000;
|
||||
private final MediaTrack mediaTrack;
|
||||
private long raceTimeInMillis;
|
||||
|
||||
@@ -15,7 +15,7 @@ public abstract class AbstractMediaPlayer implements MediaPlayer {
|
||||
this.mediaTrack = mediaTrack;
|
||||
}
|
||||
|
||||
public MediaTrack getMediaTrack() {
|
||||
public MediaTrack getMediaTrack() {
|
||||
return mediaTrack;
|
||||
}
|
||||
|
||||
@@ -37,6 +37,12 @@ public abstract class AbstractMediaPlayer implements MediaPlayer {
|
||||
return Math.round(getCurrentMediaTime() * 1000);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isCoveringCurrentRaceTime() {
|
||||
double mediaTime = (raceTimeInMillis - mediaTrack.startTime.getTime()) / 1000d;
|
||||
return (mediaTime >= 0) && (mediaTime <= getDuration());
|
||||
}
|
||||
|
||||
protected void alignTime() {
|
||||
long mediaStartTimeInMillis = mediaTrack.startTime.getTime();
|
||||
long mediaTimeInMillis = mediaStartTimeInMillis + getCurrentMediaTimeMillis();
|
||||
|
||||
+2
@@ -31,4 +31,6 @@ public interface MediaPlayer {
|
||||
|
||||
void close();
|
||||
|
||||
boolean isCoveringCurrentRaceTime();
|
||||
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 79 KiB |
Reference in new issue
Block a user