Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Массив видео-кадров (https://javascript.ru/forum/misc/86276-massiv-video-kadrov.html)

cupoma58 27.01.2025 15:55

Массив видео-кадров
 
Привет. Пытаюсь сканировать момент выбора, на шкале прогресса видео-плеера:
.....
choos.addEventListener('mousemove', (e) => {
    var skipTo = Math.round((e.offsetX / e.target.clientWidth) * parseInt(e.target.getAttribute('max'), 10));      
    canvas.getContext('2d').drawImage(video, 0, 0, canvas.width, canvas.height);    
    canvas.setAttribute('data-canvas', skipTo);    
    var rect = video.getBoundingClientRect();
    canvas.style.left = `${e.pageX - rect.left}px`;
});
.....

За курсором движется окошко...с не меняющейся картинкой, отображённой, в данный момент, на экране. Допустимо предположить, что видео имеет 24 кадра в секунду. Можно определить - общее количество кадров. Как, через currentTime, выйти на выбранный кадр?

Nexus 28.01.2025 04:15

Цитата:

Сообщение от cupoma58
Как, через currentTime, выйти на выбранный кадр?

Цитата:

Сообщение от https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/currentTime
The HTMLMediaElement interface's currentTime property specifies the current playback time in seconds.

current-frame-number = frames-per-second * max(0, current-time - 1) + 1

cupoma58 04.02.2025 11:30

Цитата:

Сообщение от Nexus (Сообщение 556874)
current-frame-number = frames-per-second * max(0, current-time - 1) + 1

Мой бро - с "max" не знаком, что это?
И почему "current-time", а не "currentTime"?

Nexus 04.02.2025 12:36

Цитата:

Сообщение от cupoma58
Мой бро - с "max" не знаком, что это?

max - функция в js.
Цитата:

Сообщение от cupoma58
И почему "current-time", а не "currentTime"?

Потому что это просто формула, у вас и переменных «current-frame-number» и «frames-per-second» в kebab case быть не может.


Часовой пояс GMT +3, время: 12:07.