2023 계 모각소 

음성데이터를 이용한 음원 생성 서비스 

활동내용 및 발표자료

<팀원>

사이버보안학과 김우영

사이버보안학과 최준태

사이버보안학과 정동구

사이버보안학과 최경주


<팀원별 활동내용>

김우영

스프링 프레임워크에 대한 이해 및 aws서버를 사용해보았다.

최준태

Android 분야를 공부하며 프로젝트를 진행했다. kotlin 언어를 사용했고, Android Studio를 통해 개발했다. 

기본적인 app 개발 과정은 패스트컴퍼스에서 강의를 들으며 배웠고, 그 후에 필요한 기능은 구글링을 통해 해결했다. 

그리고 github에서 적용가능한 오픈소스가 있는지 찾아 사용했다.

정동구

타입스크립트, 리액트, styled-component 를 사용하여 웹 페이지를 구현하였다. 쿠키를 통해 토큰을 확인하여, 토큰이 없다면 마이페이지에 접근하지 못하도록 만들었다

최경주

SVC(Singing Voice Conversion) Task에 대한 이해를 위해 Diff-SVC에 대한 논문을 읽고, 추가적으로 DDSP-SVC 논문을 리뷰하고 모델을 직접 구현하였다. 

그 과정에서 음성 샘플은 AI-Hub와 Youtube converter를 활용하여 데이터를 추출하고 Goldwave tool를 사용하여 음성 데이터를 전처리하여 

학습에 용이하도록 정제하여 모델에 학습시켰다.

<팀원별 최종성과>

김우영

스프링프레임워크에서의 MongoDB, Mysql의 사용법을 익혔다. 

접근 권한 설정 및 MVC패턴을 어떻게 구현해야될지 배웠다. 공부하며 OAuth와 Jwt를 어떻게 구현해야 될지 이해했다.

최준태

필요한 앱 기능을 통해 전체적인 app 디자인과 상호작용을 설계하며 전체적인 안드로이드 개발과정에 대한 이해도가 높아졌다. 

그리고 처음으로 백엔드와 협업해 개발하며 Retrofit으로 API 통신으로 앱이 가벼워지고 성능이 개선된 것을 느낄 수 있었다.

정동구

백엔드에서 만들어주는 api를 사용해보며, 프론트엔드와 백엔드가 협력하는 방법에 대해 알게되었다. 

또한 여러 웹 페이지 디자인 사이트들을 참고하며 디자인에서 색 대비와 입체감이 중요하다는 것을 알게되었다.

최경주

DDSP-SVC 모델 환경을 구축해봤으며, 1시간 길이의 음성 샘플을 사용하여 모델을 학습시켜 좋은 퀄리티의 음성 데이터를 생성하였다. 

모델 학습 과정 및 전처리는 활동 기록에 상세히 기록하였다.


<팀원별 향후계획>

김우영

transaction과 security를 고려한 백엔드 설정, Vocoder 모델을 멀티스레드로 동작시키기위해 Django서버 구축, 로그아웃구현을 위한 RedisDB사용법 숙지.

최준태

Hilt&Dagger와 같은 DI를 통해 앱의 최적화를 진행시켜 오류와 속도를 개선하는 작업을 진행하고 싶다. 

그리고 푸리에 변환을 통한 음성 데이터를 시각화하는 작업을 진행할 예정이다.

정동구

web audio api를 이용한 사용자의 음정을 인식하고, canvas를 이용하여 퍼펙트 스코어처럼 음정을 표시하는 기능을 구현할 예정이다.

최경주

학습에 필요한 최소 시간(3시간)을 단축할 수 있는 방법들을 연구하고, Inpainting(음보정) 작업을 추가하여 생성된 음성 데이터의 퀄리티를 높이는 것을 계획 중이다. 

이를 위해 관련 연구들을 리딩하고 있으며 대표적으로 “THE SINGING VOICE CONVERSION CHALLENGE 2023”, 

“Self-Supervised Representations for Singing Voice Conversion”을 통해 SVC task의 필요한 기능들을 이해하고 활용하려고 한다.


<발표자료>