1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| import numpy
import cv2
from ffpyplayer.player import MediaPlayer
#initialise la vidéo
cap = cv2.VideoCapture('1.mp4')
#initialise le sons
soundPlayer = MediaPlayer('1.mp4')
run = True
while run:
# recupére le nombre de fps
fps = cap.get(cv2.CAP_PROP_FPS)
# recupére la frames suivante
ret, frame = cap.read()
# affiche la frame en fenetre
cv2.imshow('output', frame)
# WaitKey verifie l'entrée du clavier est prend en paramétre
# un delay d'attente avant la suite de l'execution
if (cv2.waitKey(int(1/fps*1000)) & 0xFF == ord('q')):
run = False
if (cv2.waitKey(int(1/fps*1000)) & 0xFF == ord('l')):
#recupére le temps écouler en ms de la video
t_ms = cap.get(cv2.CAP_PROP_POS_MSEC)
#enleve 10000 ms
t_ms = t_ms - 10000
#set le temps de la video avec 10s de moins
cap.set(cv2.CAP_PROP_POS_MSEC, t_ms)
#enleve 10s au son
soundPlayer.seek(-10.0)
if (cv2.waitKey(int(1/fps*1000)) & 0xFF == ord('m')):
#recupére le temps écouler en ms de la video
t_ms = cap.get(cv2.CAP_PROP_POS_MSEC)
#rajoute 10000 ms
t_ms = t_ms + 10000
#set le temps de la video avec 10s de plus
cap.set(cv2.CAP_PROP_POS_MSEC, t_ms)
#rajoute 10s au son
soundPlayer.seek(10.0)
#détruit la fenetre
cap.release()
cv2.destroyAllWindows() |
Partager