티스토리 뷰
요즘 공을 들여 개발 중인 오픈소스 영상 자막 편집 응용 프로그램을 만들고 있다.
https://github.com/iqpizza6349/subtitulus-flow
해당 프로젝트의 목표는 8가지이다.
- 혼자 자막 넣은 영상을 볼 정도의 퀄리티
- Java 90%이상
- 모든 OS에서 동작
- 사용 메모리 4GB 이하
- 영상 완성본 파일 내보내기
- 영상 편집 및 자막 넣기
- 영상 효과, 음향 넣기
- 깃허브 스타 10개이상
자바 응용 프로그램을 만들 때 대게 3가지 프레임워크 중 한 가지를 사용한다. AWT, Swing, 그리고 JavaFX. (물론 많고 많은 프레임워크들이 존재한다.) 이 중에서 필자는 JavaFX를 택했다. (CloverYoutubeDownloader는 Swing으로 구현되었다.)
그렇다면 필자가 JavaFX를 택한 이유를 설명하겠다.
우선 AWT는 경량 프로그램 혹은 사용자의 입력이 많이 없는 경우에 적합하다. 하지만 영상 편집 프로그램은 결코 경량이기 되기 싶지않으며, 무엇보다도 사용자의 입력이 무척이나 많다.
Swing은 AWT를 기반으로 하고 있으며, TreeTable 구성 요소나 필터링/검색 요소가 없어서 확장성을 고려하여 배제하였습니다. SWT는 JNI기반으로 만들어져 빠르나, Eclipse용으로 만들어지기도 했고, API가 상당히 투박해서 배제했습니다.
SwingX는 Swing으로 기반으로 되었고, 아직까지 개발 중이기에 배제했습니다. 그래서 최종적으로 남은 JavaFX로 하게 되었습니다. (jdk 11이후부터 설정이 무척이나 까다로워지긴 했으나, 그래도 정보가 풍부해서 괜찮습니다.)
현재까지는 기본적인 틀을 잡고 있습니다.
앞으로 해당 메뉴마다 클릭할 경우 특정 처리를 하도록 할 것이고, 저 십자 버튼을 누르면 영상을 추가할 수 있도록 할 예정입니다.