이 블로그의 이름이 모던웹과 음악이 된 이유가 있는데, 새롭게 준비한 웹서비스에서 이 음악이론과 코드진행을 데이터화하고 그 의미를 파악하고 사용자가 알고 싶어하고 알아야 할 정보로 재포장을 해야 했기 때문이다.
작업에는 생각보다 오랜 시간이 걸렸다. 작업을 하는 중에 이 악보라는 데이터는 문자 정보 보다는 이미지에 가깝다는 것을 알게 되었고, 검색과 가공을 위한 데이터 편집, 재가공에 많은 시간이 소요되었다. 시간은 걸렸지만 어느 정도 해야할 작업들과 가능한 아이디어의 윤곽이 그려졌고, 이 결과물이 생각보다 음악을 공부하는 입장에서 상당한 도움이 될 것이라는 결론을 내리게 되었다.
그 과정에서 고려하고 고민하게 된, 그리고 선택된 작업들에 대한 대략적인 윤곽을 여기에 서술하고자 한다.
1. 악보 표기는 완전한 하나 표준만을 가지고 있는 것은 아니다.
사람이 보는 것에는 별 문제가 안된다고 하지만 방대한 데이터를 디지털화 하는 것에는 큰 문제가 된다.
누구나 음악을 공부하기 시작하면 악보를 보는 법을 배우고, 심지어 필수교육 과정에 음악을 학습하고 악보를 보는 것에 큰 문제가 없다고 해도 막상 디지털화 하기 시작하면 이 하나의 방식이 아니라는 것 때문에 예외적인 조건문들이 추가되기 시작했다.
또, 당연하겠지만 서비스에 표시될 때는 단 하나의 통일된 방식으로 표현하고 싶었기에 작업에 소요되는 시간이 자꾸 길어지고 데이터를 몇번이나 삭제하고 다시 넣는 작업을 되풀이 하게 되었다.
심지어 이것은 현실 세계에서 같은 음악적 표기를 부를때 조차 하프디미니쉬를 마이너플랫파이브로 호칭할 수 있는 것처럼 여러가지 alias(대명)을 가지고 있다는 것을 쉽게 알수 있다.
2. 분석을 위해서 수집해야 할 요소를 할수 있는 한 모두 수집하자.
3. 화성학에 대한 조금더 원초적인 이해가 필요하다.
4. 화성적인 분석을 수행하는 것은 쉽지 않다.
5. 악보를 랜더링 하는 것은 쉽지 않다.
6. 브라우저의 웹오디오에 대한 지원의 미비함.
목표로 하는 것이 이미지가 아니라 데이터를 기반으로 한 악보를 웹에 동적으로 뿌리고, 코드 악보를 기반으로 반주기로 구동하며, 멜로디 패턴을 릭으로 적용하여 확인하고, 키나 템포의 조절이 가능하고, 각 엘리먼트의 정보를 쉽게 확인 가능한 보기 편한 새로운 악보의 형태를 구현이었기에 쉽지 않았지만 미숙한 결과물이지만 공개를 준비중이기에 미리 몇가지 고려해야 할 정보들과 관련 기술에 대한 기록을 종종 남겨보겠다.
'프로그래밍' 카테고리의 다른 글
MacOS(OSX) 개발을 swift로 해보자. Hello World! 1 (0) | 2018.07.08 |
---|---|
mantis와 intellij로 하는 이슈 관리 (0) | 2018.07.03 |
ubuntu에서 springboot 내장 tomcat과 apache 연동 (0) | 2018.06.28 |
jpa entity와 관련된 문제들 (0) | 2018.06.28 |
vultr, cloudflare 웹서비스 오픈하기 (1) | 2018.06.28 |