[python] PyInstaller를 사용하여 작성한 프로그램에서 동영상 녹화 기능을 추가하는 방법은?
  1. 필요한 라이브러리 설치 터미널 또는 명령 프롬프트를 열고 다음 명령어를 사용하여 필요한 라이브러리를 설치합니다.

     pip install opencv-python pyautogui
    
  2. 동영상 녹화를 위한 코드 작성 다음과 같은 코드를 사용하여 동영상 녹화를 수행하는 함수를 작성합니다.

     import cv2
     import pyautogui
    
     def record_screen(file_name):
         # 화면 크기 가져오기
         screen = (1920, 1080)  # 화면 크기에 맞게 변경해주세요
    
         # 동영상 코덱 설정 및 녹화 객체 생성
         fourcc = cv2.VideoWriter_fourcc(*'XVID')
         out = cv2.VideoWriter(file_name, fourcc, 20.0, screen)
    
         # 녹화 시작
         while True:
             # 현재 화면 캡처
             img = pyautogui.screenshot()
    
             # OpenCV 형식으로 변환
             frame = cv2.cvtColor(np.array(img), cv2.COLOR_RGB2BGR)
    
             # 화면에 표시
             cv2.imshow("Screen Recorder", frame)
             out.write(frame)
    
             # "q" 키를 누르면 녹화 중지
             if cv2.waitKey(1) == ord('q'):
                 break
    
         # 리소스 해제
         out.release()
         cv2.destroyAllWindows()
    

    이 함수는 현재 화면을 캡처해서 동영상 파일로 저장합니다. 녹화를 중지하려면 “q” 키를 누르면 됩니다.

  3. 프로그램에 녹화 기능 추가 프로그램에 녹화 기능을 추가하기 위해 다음과 같은 코드를 사용합니다.

     import threading
    
     def start_recording():
         threading.Thread(target=record_screen, args=('recorded_video.avi',)).start()
    
     # 녹화 시작
     start_recording()
    

    위의 코드는 녹화를 시작하는 함수를 별도의 스레드에서 실행하여 프로그램의 메인 로직과 함께 동작하도록 합니다. 녹화된 동영상은 “recorded_video.avi”라는 파일로 저장됩니다.

이제 PyInstaller로 이 프로그램을 패키징하고 실행하면 동영상 녹화 기능이 작동하는 것을 확인할 수 있습니다.

참고 자료: