Fix player bug (#912)
* fix player cannot play at the first time * fix sentence seek
This commit is contained in:
@@ -57,9 +57,7 @@ export const MediaPlayerControls = () => {
|
||||
setTranscriptionDraft,
|
||||
} = useContext(MediaPlayerProviderContext);
|
||||
const { EnjoyApp } = useContext(AppSettingsProviderContext);
|
||||
const { currentHotkeys } = useContext(
|
||||
HotKeysSettingsProviderContext
|
||||
);
|
||||
const { currentHotkeys } = useContext(HotKeysSettingsProviderContext);
|
||||
const [playMode, setPlayMode] = useState<"loop" | "single" | "all">("single");
|
||||
const [playbackRate, setPlaybackRate] = useState<number>(1);
|
||||
const [grouping, setGrouping] = useState(false);
|
||||
@@ -332,9 +330,8 @@ export const MediaPlayerControls = () => {
|
||||
setCurrentSegmentIndex(0);
|
||||
return;
|
||||
}
|
||||
wavesurfer.seekTo(
|
||||
Math.ceil((segment.startTime / wavesurfer.getDuration()) * 1e8) / 1e8
|
||||
);
|
||||
wavesurfer.setScrollTime(segment.startTime);
|
||||
wavesurfer.setTime(parseFloat(segment.startTime.toFixed(6)));
|
||||
}, [decoded, transcription?.id, wavesurfer]);
|
||||
|
||||
useEffect(() => {
|
||||
@@ -372,9 +369,7 @@ export const MediaPlayerControls = () => {
|
||||
|
||||
if (currentTime < activeRegion.start || currentTime > activeRegion.end) {
|
||||
wavesurfer.setScrollTime(activeRegion.start);
|
||||
wavesurfer.seekTo(
|
||||
Math.ceil((activeRegion.start / wavesurfer.getDuration()) * 1e8) / 1e8
|
||||
);
|
||||
wavesurfer.setTime(parseFloat(activeRegion.start.toFixed(6)));
|
||||
}
|
||||
}, [wavesurfer, decoded, playMode, activeRegion, currentTime]);
|
||||
|
||||
|
||||
@@ -182,10 +182,7 @@ export const MediaTranscription = (props: { display?: boolean }) => {
|
||||
currentSegmentIndex === index ? "bg-yellow-400/25" : ""
|
||||
}`}
|
||||
onClick={() => {
|
||||
const duration = wavesurfer.getDuration();
|
||||
wavesurfer.seekTo(
|
||||
Math.floor((sentence.startTime / duration) * 1e8) / 1e8
|
||||
);
|
||||
wavesurfer.setTime(parseFloat(sentence.startTime.toFixed(6)));
|
||||
wavesurfer.setScrollTime(sentence.startTime);
|
||||
setCurrentSegmentIndex(index);
|
||||
}}
|
||||
|
||||
@@ -102,7 +102,7 @@ export const RecordingPlayer = (props: {
|
||||
if (!wavesurfer) return;
|
||||
if (!seek?.seekTo) return;
|
||||
|
||||
wavesurfer.seekTo(seek.seekTo / wavesurfer.getDuration());
|
||||
wavesurfer.setTime(parseFloat(seek.seekTo.toFixed(6)));
|
||||
}, [seek, wavesurfer]);
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
Reference in New Issue
Block a user