2024-1 공개 SW 프로젝트 3분반 7조 <포7l를 모르조 >의 레포입니다.
- LIBROSA 라이브러리 기반 사용자 최고음, 최저음, 음역대, 성향을 기반으로 정보를 분석
- 사용자의 목소리를 분석하여 사용자에게 어울리는 노래를 추천
- 보컬 트레이닝보다 시간적, 금전적으로 효율적인 효과를 내는 서비스
MyV 배포 URL : http://3.38.255.99:8000/
├── .github
│ ├── ISSUE_TEMPLATE
│ └── pull_request_template.md
│
├── MyV
│ ├── ..
│ ├── MyV
│ ├── login
│ ├── main
│ ├── media/maxminSrc
│ ├── modal
│ ├── myauth
│ ├── signup
│ ├── .gitignore
│ ├── db.sqlite3
│ └── manage.py
│
├── algorithm
│ ├── ..
│ ├── accuaracy_analyze.py
│ ├── audio_analysis.py
│ ├── get_recommendations.py
│ ├── text.txt
│ └── tmp_img.png
│
└── frontend
│ ├── ..
│ ├── howtouse
│ ├── login
│ ├── main
│ ├── mypage
│ ├── signup
│ ├── signup_Maxmin
│ ├── team
│ ├── vocalreport
│ └── wavetest
│
├── README.md
│
├── db.sqlite3
- 사용자 음역대와 성향 분석과 그에 어울리는 노래 추천
- 추천한 노래 PlayList 관리
- 보컬 평가 및 피드백 보고서 제공
시연 영상 : https://www.youtube.com/watch?v=Ut4T77BXsFk
MyV의 기능 구조도는 다음과 같다.
MyV를 이용하는 사람의 음악 성향 정보를 회원 가입에서 확보하고, 사용자가 업로드 하는 음원 파일로 Python 라이브러리 Librosa를 활용하여 사용자의 음역대를 분석한다. 분석된 정보를 이용하여, Spotify API를 기반으로 사용자의 성향에 맞는 음악을 3곡 추천한다. 곡 추천과 동시에 사용자 성향 및 음역대 정보를 제공함으로써, 사용자가 MyV 서비스를 이용하여 자신에게 어울리는 노래의 성향을 알 수 있게 한다.
- 회원가입 시, 사용자가 직접 자신의 음악 성향 정보를 입력한다.
- MyV의 메인 화면에서 음역대 파일을 제출한다.
- 음역대 정보와 사용자 성향 기반 추천 노래를 확인한다.
사용자 성향을 기반으로 추천받은 노래 3곡 중 마음에 드는 곡을 선택해 사용자의 플레이리스트에 저장할 수 있다. 곡 미리듣기 서비스를 제공하고, 앨범 커버 클릭 시 Spotify의 곡 정보 페이지로 이동하여 곡에 대한 정보를 충분히 제공함으로써 사용자가 플레이리스트에 추가할 곡을 선택하는 것을 돕는다.
사용자 플레이리스트 페이지로 이동하면 사용자가 선택한 곡들이 저장되어 있다. 다른 곡을 추천받고 싶다면 "다시 추천 받기" 버튼을 클릭하여 곡 추천을 추가적으로 받을 수 있다. 마음에 들지 않는 곡은 "삭제" 버튼으로 삭제할 수 있도록 하여 플레이리스트 관리의 편의성을 제공한다.
-
추천 노래 확인 후, 3곡 중 1곡을 선택해 나만의 플레이리스트에 저장할 수 있다.
-
플레이리스트에 저장된 곡은 삭제가 가능하다.
-
곡을 새로 추천받을 수 있어, 사용자를 위한 플레이리스트를 만들 수 있다.
사용자가 노래를 불러 녹음한 파일을 업로드 하면 파이썬 라이브러리 Librosa를 기반으로 녹음 파일의 최고, 최저음, 가장 잘 부른 구간, 음정 정확도 등 사용자의 노래 녹음 파일을 분석한다. 이를 기반으로 사용자 보컬 피드백 보고서를 제공함으로써 사용자가 자신의 노래 실력을 효율적으로 알 수 있게 한다.
- 사용자의 노래 녹음 파일을 업로드한다.
- 제공된 보컬 분석 보고서로 보컬 분석 결과를 확인한다.
이성준 | 이승연 | 이시우 |
---|---|---|
@skckem | @seungyeone | @2cu-1001 |
동국대학교 컴퓨터공학과 21학번 |
동국대학교 AI융합학부 22학번 |
동국대학교 컴퓨터공학과 22학번 |
김지민 | 최예인 |
---|---|
@J1miin | @Yeahout |
동국대학교 컴퓨터공학과 22학번 |
동국대학교 컴퓨터공학과 22학번 |
This project is licensed under the MIT License - see the LICENSE file for details.
This project uses the following libraries, each with their own licenses:
- Librosa: BSD 3-Clause License. See the LICENSE file for details.