From 5c44ffbc4a68bc23014c2cbf1e04b97243f3a8ca Mon Sep 17 00:00:00 2001 From: lyswhut Date: Fri, 24 Mar 2023 09:01:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B0=83=E6=95=B4=E6=92=AD?= =?UTF-8?q?=E6=94=BE=E9=80=9F=E7=8E=87=E6=97=B6=E6=A1=8C=E9=9D=A2=E6=AD=8C?= =?UTF-8?q?=E8=AF=8D=E5=AF=BC=E8=87=B4=E7=9A=84=E5=B4=A9=E6=BA=83=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/cn/toside/music/mobile/lyric/Lyric.java | 2 +- .../java/cn/toside/music/mobile/lyric/LyricModule.java | 4 ++-- .../java/cn/toside/music/mobile/lyric/LyricPlayer.java | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/android/app/src/main/java/cn/toside/music/mobile/lyric/Lyric.java b/android/app/src/main/java/cn/toside/music/mobile/lyric/Lyric.java index 385fd2a..99eb38c 100644 --- a/android/app/src/main/java/cn/toside/music/mobile/lyric/Lyric.java +++ b/android/app/src/main/java/cn/toside/music/mobile/lyric/Lyric.java @@ -29,7 +29,7 @@ public class Lyric extends LyricPlayer { String translationText = ""; String romaLyricText = ""; - Lyric(ReactApplicationContext reactContext, boolean isShowTranslation, boolean isShowRoma, int playbackRate) { + Lyric(ReactApplicationContext reactContext, boolean isShowTranslation, boolean isShowRoma, float playbackRate) { this.reactAppContext = reactContext; this.isShowTranslation = isShowTranslation; this.isShowRoma = isShowRoma; diff --git a/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricModule.java b/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricModule.java index 8ea9387..05a29b0 100644 --- a/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricModule.java +++ b/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricModule.java @@ -20,7 +20,7 @@ public class LyricModule extends ReactContextBaseJavaModule { boolean isShowTranslation = false; boolean isShowRoma = false; - int playbackRate = 1; + float playbackRate = 1; private int listenerCount = 0; @@ -87,7 +87,7 @@ public class LyricModule extends ReactContextBaseJavaModule { } @ReactMethod - public void setPlaybackRate(int playbackRate, Promise promise) { + public void setPlaybackRate(float playbackRate, Promise promise) { this.playbackRate = playbackRate; if (lyric != null) lyric.setPlaybackRate(playbackRate); promise.resolve(null); diff --git a/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricPlayer.java b/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricPlayer.java index 8f46bcc..2235405 100644 --- a/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricPlayer.java +++ b/android/app/src/main/java/cn/toside/music/mobile/lyric/LyricPlayer.java @@ -27,7 +27,7 @@ public class LyricPlayer { List lines = new ArrayList<>(); HashMap tags = new HashMap(); boolean isPlay = false; - int playbackRate = 1; + float playbackRate = 1; int curLineNum = 0; int maxLine = 0; int offset = 150; @@ -89,7 +89,7 @@ public class LyricPlayer { } private int getCurrentTime() { - return (getNow() - this.performanceTime) * this.playbackRate + startPlayTime; + return (int)((getNow() - this.performanceTime) * this.playbackRate) + startPlayTime; } private void initTag() { @@ -297,7 +297,7 @@ public class LyricPlayer { if (driftTime >= 0 || curLineNum == 0) { HashMap nextLine = lines.get(curLineNum + 1); - int delay = ((int) nextLine.get("time") - (int) curLine.get("time") - driftTime) / this.playbackRate; + int delay = (int)(((int)nextLine.get("time") - (int)curLine.get("time") - driftTime) / this.playbackRate); // Log.d("Lyric", "delay: " + delay + " driftTime: " + driftTime); if (delay > 0) { if (isPlay) { @@ -331,7 +331,7 @@ public class LyricPlayer { init(); } - public void setPlaybackRate(int playbackRate) { + public void setPlaybackRate(float playbackRate) { this.playbackRate = playbackRate; if (this.lines.size() == 0) return; if (!this.isPlay) return;