새로운 동영상 파일을 만들려면 먼저 VideoWriter 클래스 객체를 생성해야 합니다. VideoWriter 기본 생성자를 이용하여 VideoWriter 객체를 생성하려면 단순히 VideoWriter 타입의 변수를 선언하면 됩니다.
VideoWriter video;
VideoWriter 객체를 생성하였으면 VideoWriter::open() 멤버 함수를 이용하여 저장할 동영상 파일을 쓰기 모드로 열어야 합니다. VideoWriter::open() 함수 원형은 다음과 같습니다.
VideoWriter::VideoWriter(const String& filename, int fourcc, double fps, Size frameSize, bool isColor = true); bool VideoWriter::open(const String& filename, int fourcc, double fps, Size frameSize, bool isColor = true); |
|
• filename |
저장할 동영상 파일 이름 |
• fourcc |
동영상 압축 코덱을 표현하는 4-문자 코드 |
• fps |
저장할 동영상의 초당 프레임 수 |
• frameSize |
동영상 프레임의 가로 및 세로 크기 |
• isColor |
이 값이 true이면 컬러 동영상으로 저장하고, false이면 그레이스케일 동영상으로 저장합니다. 이 플래그는 Windows 운영 체제에서만 지원합니다. |
• 반환값 |
(VideoWriter::open() 함수) 열기가 성공하면 true, 실패하면 false |
VideoWriter::open() 함수의 두 번째 인자의 이름 fourcc는 4-문자 코드(four character code)의 약자이며, 말 그대로 네 개의 문자로 구성된 코드입니다. fourcc는 동영상 파일의 코덱, 압축 방식, 색상 혹은 픽셀 포맷 등을 정의하는 정수 값이며, 코덱을 표현하는 네 개의 문자를 묶어서 fourcc를 생성합니다. fourcc에 해당하는 정수 값은 VideoWriter::fourcc() 함수를 사용하여 생성할 수 있습니다.
static int VideoWriter::fourcc(char c1, char c2, char c3, char c4); |
|
• c1, c2, c3, c4 |
코덱을 표현하는 1byte 문자 네 개 |
• 반환값 |
정수형 4-문자 코드 |