[python] 파이썬에서 키 입력으로 동영상 제어하기
이번에는 파이썬을 사용하여 키 입력을 통해 동영상을 제어하는 방법에 대해 알아보겠습니다. 동영상을 제어하기 위해 OpenCV 라이브러리를 사용할 것입니다.
OpenCV 라이브러리 설치하기
먼저, OpenCV 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.
pip install opencv-python
동영상 재생하기
먼저, 동영상을 재생하는 기능을 구현해보겠습니다. 아래의 코드를 사용하여 동영상 파일을 열고 재생할 수 있습니다.
import cv2
# 동영상 파일 열기
video = cv2.VideoCapture('video.mp4')
while True:
# 프레임 읽기
ret, frame = video.read()
# 프레임이 없다면 종료
if not ret:
break
# 화면에 프레임 출력
cv2.imshow('Video', frame)
# 'q' 키를 누르면 종료
if cv2.waitKey(1) == ord('q'):
break
# 동영상 파일 닫기
video.release()
cv2.destroyAllWindows()
위의 코드에서는 cv2.VideoCapture를 사용하여 동영상 파일을 열고, while 루프를 사용하여 프레임을 읽어와 화면에 출력합니다. ‘q’ 키를 누르면 동영상 재생이 종료됩니다.
키 입력으로 제어하기
이제 키 입력을 사용하여 동영상을 제어하는 기능을 구현해보겠습니다. 아래의 코드를 사용하여 키 입력에 따라 동영상을 제어할 수 있습니다.
import cv2
# 동영상 파일 열기
video = cv2.VideoCapture('video.mp4')
while True:
ret, frame = video.read()
if not ret:
break
cv2.imshow('Video', frame)
# 키 입력 대기
key = cv2.waitKey(1)
# 'q' 키를 누르면 종료
if key == ord('q'):
break
# 'p' 키를 누르면 재생/일시정지
elif key == ord('p'):
while True:
key = cv2.waitKey(1)
# 'p' 키를 누르면 다시 재생
if key == ord('p'):
break
# 'r' 키를 누르면 이전으로 되감기
elif key == ord('r'):
video.set(cv2.CAP_PROP_POS_FRAMES, 0)
# 'f' 키를 누르면 다음으로 빨리감기
elif key == ord('f'):
video.set(cv2.CAP_PROP_POS_FRAMES, video.get(cv2.CAP_PROP_POS_FRAMES) + 60)
# 동영상 파일 닫기
video.release()
cv2.destroyAllWindows()
위의 코드에서는 ‘p’ 키를 누르면 재생/일시정지를 전환하고, ‘r’ 키를 누르면 이전으로 되감기하며, ‘f’ 키를 누르면 다음으로 빨리감기합니다. ‘q’ 키를 누르면 동영상 재생이 종료됩니다.
이렇게 파이썬을 사용하여 키 입력으로 동영상을 제어하는 방법을 알아보았습니다. 동영상 재생 및 이동 기능을 구현할 때 유용하게 사용할 수 있습니다.