• 3행 시스템 기본 카메라를 사용합니다.
• 10~12행 카메라 프레임의 가로, 세로 크기, 카메라의 FPS 값을 받아 옵니다.
• 14행 DivX MPEG-4 코덱에 해당하는 fourcc 코드를 생성합니다.
• 15행 FPS 값으로부터 매 프레임 사이의 시간 간격을 밀리초 단위로 계산합니다.
• 17행 저장할 동영상 파일을 생성합니다. 동영상 파일의 이름은 output.avi입니다.
• 26행 카메라로부터 한 프레임을 받아 와 frame에 저장합니다.
• 30행 카메라 프레임을 반전하여 inversed에 저장합니다.
• 31행 반전된 카메라 프레임 영상 inversed를 출력 동영상에 추가합니다.
코드 4-5의 camera_in_video_out() 함수를 실행하면 화면에 frame과 inversed 이름을 가진 창이 나타나고, 각각 카메라 입력 프레임과 반전된 프레임 영상을 출력합니다. 그리고 사용자가 키보드의 Esc 키를 누르면 창이 사라지면서 함수가 종료됩니다. 함수가 종료된 후 Windows 파일 탐색기를 이용하여 프로그램 실행 폴더로 이동하면 output.avi 파일이 생성된 것을 확인할 수 있습니다. 이 파일은 DivX 코덱을 사용하여 저장된 동영상 파일이며, 일반적인 동영상 재생 프로그램에서 재생할 수 있습니다. 그림 4-3은 녹화된 output.avi 파일을 Windows Media Player에서 재생하는 화면입니다.
▲ 그림 4-3 녹화된 output.avi 파일을 Windows Media Player에서 재생하기