
내 맘대로 연주
- ROLE
- 입력 병렬 처리, 멜로디 작성, 악보 공유
- DURATION
- 2019.10 ~ 2019.11
- TEAM
- 팀 프로젝트 (3인)
- TECH STACK
- C++, MFC
프로젝트 요약
- 프로그램 시작 시 악기는 스레드로 백그라운드에서 대기하며 동시 입력을 받을 수 있다.
- 멜로디는 배열화하여 행은 시간 열은 음의 높낮이로 구분하여 재생 시 Timer가 마디 시간 단위(재생속도) 기준으로 재생한다.
- TCP/IP 소켓 통신을 통해 서버에 멜로디를 배열로 저장하고 다른 클라이언트에서 해당 멜로디를 재생할 수 있다.
개발 문제 및 해결
작성한 멜로디를 출력시켰을 시 한마디가 여러 번 출력되는 문제가 발생하였다.
해당 문제는 멜로디 출력 당시 배열을 읽는 기능의 순서를 변경하여 중복 출력되지 않도록 하였다.
소켓 통신 시 멜로디가 정상적으로 공유되지 않는 경우가 발생하였다.
해당 문제는 멜로디 공유 시에 배열을 문자열로 변환하고 내려받을 때 문자열을 배열로 변환하여 해결하였다.
시각 자료

프로그램 UI

악보 제작 및 서버 저장