개발일지 시리즈
직접 만드는 녹화·녹음 프로그램
화면 녹화와 회의 녹음을 프로그램 두 개로 나눠 쓰던 일을 하나로 합쳤다. 그 과정을 회차로 나눠 적는다.
- 1회녹화 프로그램과 녹음 프로그램을 하나로 · v1.0.0.0확인 6/8녹화 프로그램을 만들고자 한다. 화면 녹화, 회의 녹음의 기능을 하나의 프로그램에서 구현하고자 한다. 프로그램 개발 초기부터 다른 소프트웨어와의 차별적 기능을 다루지는 않겠다. 그저 녹화·녹음·저장이 제대로 기능하는 프로그램을 만들고자 한다.
- 2회소리가 0.15초 앞서 있었다 · v1.0.0.1확인 8/9첫 판의 시험은 전부 통과했지만 결함이 남아 있었다. 시험은 결과 파일의 길이만 확인하였고 소리와 영상이 맞는지는 확인하지 않았기 때문이다. 이 판에서는 코드를 처음부터 다시 읽어 결함 셋과 보완 넷을 찾아 고친다. Windows 실행 파일도 이 판에서 처음 만든다.
- 3회기존 것보다 나쁘지는 않아야 한다 · v1.0.0.2확인 8/10기존 녹화·녹음 프로그램을 옆에 놓고 이 프로그램에 없는 기능을 하나씩 센다. 열두 가지를 넣고, 그 과정에서 느린 PC 에서만 생기는 결함 하나를 더 잡는다. 기존 프로그램보다 못하지 않은 상태가 이 판의 목표다.
- 4회핵심기능 아홉 가지를 정한다 · v1.0.1.0 계획확인 5/7세 판을 만들고 나서 개발 방향을 정한다. 본편 화면의 핵심기능 칸이 아홉 개이므로, 무엇을 핵심기능으로 둘지 후보를 모으고 기준을 세워 아홉으로 줄인다. 이 회차는 코드를 쓰지 않고, 다음 판에서 무엇을 먼저 만들지를 정한다.
- 5회후보를 쉰아홉까지 세고 이름을 CatchCatch 로 정한다 · v1.0.1.0 계획확인 6/84편에서 핵심기능 아홉을 정한 뒤, 기존 녹화·녹음·전사 프로그램 스물일곱 가지의 기능을 공식 문서로 조사하였다. 후보가 열여섯에서 쉰아홉으로 늘었고, 기준에 「PC 안에서 끝나는가」를 더하였다. 다음 판부터 프로그램 이름을 CatchCatch 로 한다. 핵심기능의 최종 결정은 아직 남아 있다.
- 6회이름 변경 및 원천 보완 · v1.0.1.0확인 9/10프로그램 이름을 CatchCatch 로 바꾸고, 5편의 비교표에서 비어 있던 원천 네 가지를 채웠으며, 배포를 설치 파일 하나로 바꾸었다. 4편과 5편에서 미뤄 온 핵심기능을 아홉으로 확정하였다. 마우스 주변 따라가기, 모든 모니터 동시 녹화, 전체화면 앱 캡처, 웹캠 겹치기다. 장치 없는 환경에서 엔진 시험 8묶음과 실행 파일 실기를 통과하였다.
- 7회화면 재구성과 필기·스크린샷·고주사율 · v1.0.2.0확인 14/15주 창을 세 탭(화면 녹화·음성 녹음·스크린샷)과 카드 중심으로 다시 짜고, 녹화 중 화면 위에 그리는 필기 덧창을 넣었다. 스크린샷을 녹화와 무관한 셋째 모드로 세우고, 120·144·240fps 와 8K 출력, HEVC·AV1 과 하드웨어 인코더 고르기를 넣었다. 필기 덧창과 도구 막대는 녹화에 찍히지 않으며, 획은 프레임에 직접 합성된다. 장치 없는 환경에서 엔진 시험 9묶음 81항목과 실기 41항목을 통과하였고, 실행 파일과 설치 파일의 실기를 wine 에서 하였다.