Crescendo Project Python
- python 3.10.xx 버전
- 가상환경 작동전 설치할것
pip install django
pip install djangorestframework
pip install django-cors-headers
-
가상환경 작동하기
myserver\Scripts\activate
이런식으로 보이면 가상환경 로딩성공
) 가상환경 작동이 안되면 관리자 powershell에 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned실행 -
가상환경 작동후 설치할것
pip install pytube
pip install music21
pip install basic_pitch
pip install pydub
- ffempeg 설치
cmd켜고
choco(or winget, scoop) install ffmpeg
chocolatey 설치 방법
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
커맨드에 입력후 나오는 질문에 y입력
++. base.py 에 전역변수 설정-> 실행환경에 맞게 바꾸기
- todo 저장소 링크 따로 저장하는 파이썬 파일 만들기 스프링포트로 내보낼수 있게 하기 ai api 구축하기-> api로 음악생성하면 만들어뒀던 notation돌려서 musicxml파일 만들기
http://127.0.0.1:8181/youtube/youtube post 방식으로 url 보내기
- youtube 다운안될때 pytube 충돌 문제 일수 있음 pip uninstall pytube pip uninstall pytube3 실행후 pip install pytube 다시 깔기
============================================
LINK 👉 크레센도 스프링 (백엔드) https://github.com/TeamCrescendo/Crescendo-Spring
LINK 👉 크레센도 파이썬 (백엔드) https://github.com/TeamCrescendo/Crescendo_React
LINK 👉 크레센도 리액트 (프론트) https://github.com/TeamCrescendo/Crescendo_python
※메인 테마 자료
크레센도는 좋은 음악을 알고는 있지만 해당 음악의 악보를 찾을 수 없는 경우에 도움이 될 수 있습니다.
초보 음악러들이 악보를 간편하게 만드는 서비스를 이용하여 더욱 음악에 흥미를 가지도록 제작했습니다.
또한, AI 음악 생성기능을 통해 작곡체험을 할 수 있습니다.
| 이름 | 담당 | GITHUB |
|---|---|---|
| 👨💻 한태용 | PM, ✨BACK | https://github.com/xodyd12 |
| 👨💻 김다빈 | ✨FRONT | https://github.com/daveen99 |
| 👨💻 경규현 | FRONT, ✨BACK | https://github.com/rudrbgus |
| 👩💻 장선경 | BACK, ✨AI | https://github.com/sunk-dev |
| 👨💻 원용제 | ✨FRONT | https://github.com/Y-ja |
- 회원은 일반, 구글 계정을 통해 회원가입 및 로그인이 가능합니다.
- 비밀번호를 잊은 회원은 [비밀번호 찾기] 를 통해 새로운 비밀번호를 등록할 수 있습니다.
- 관리자를 제외한 모든 사용자는 하루에 5번의 변환횟수를 리필받습니다.
- 악보변환과 AI 음악 생성 기능은 로그인 하지 않으면 이용할 수 없습니다.
- 회원 기능: [등록된 악보 확인, 악보 플리, 쪽지, 문의, 회원정보 변경]
- 관리자 기능: [문의 답변] <img src="https://github.com/TeamCrescendo/Crescendo-Spring/assets/47143547/5ee66e4e-64b8-49ab-81f4-1d86659a16bd" style="width:600px; height:350px;"
- 회원은 유튜브 링크를 복사-> 붙여넣기, 제출을 통해 유튜브 영상을 악보로 변환 할 수 있습니다.
- 변환된 악보를 저장할 수 있으며, 공유하기를 선택할 시 악보 게시판에 등록됩니다.
- 일부 유튜브 정책에 따라서 변환이 불가능한 영상도 존재합니다.
- 악보 변환시 변환횟수가 1회 차감됩니다.
- 회원은 음악 재생시간을 1초 부터 10초까지 지정할 수 있습니다.
- 회원은 생성할 음악에 관련된 설명을 입력하여 음악을 생성할 수 있습니다.
- 생성된 음악은 다운로드가 가능하며, 해당 페이지의 음악 플레이어로 감상할 수 있습니다.
- 생성된 음악에 사용된 설명을 확인할 수 있습니다.
- 크레센도의 회원들이 공유한 악보목록을 확인 할 수 있습니다.
- 비로그인 회원 또한 악보목록을 확인 할 수 있습니다.
- 클릭하면 해당 악보를 자세히 볼 수 있습니다.
- 좋아요/싫어요를 설정 할 수 있습니다.
- 사용자의 악보 플리에 추가 할 수 있습니다. (플리가 없을 시 추가할 수 있음)
- 악보를 신고할 수 있습니다. (신고누적 5회시, 해당 악보 블락처리)
- 해당 악보를 등록한 회원에게 쪽지 메세지를 보낼 수 있습니다.
- 사용자의 프로필사진, 닉네임, 계정명, 변환횟수가 표시됩니다.
- 회원 정보 수정이 가능합니다.
- 닉네임, 이메일, 비밀번호, 프로필사진을 선택하여 수정할 수 있습니다.
- 회원탈퇴가 가능합니다.
- 회원탈퇴 버튼을 클릭하면, 사용자 정보를 삭제합니다.
- 회원정보는 바로 삭제되지 않고, 유예기간을 갖게 되고 기간이 만료되면 삭제됩니다.
- 소개 글
2024-01-10 ~ 2024-02-
timeline
title Develop history [2024-01-10 ~ 2024-01-14]
2024-01-10: [✅] initial commit
: [docs] 프로젝트 주제 회의
2024-01-11: [✅] 주제 선정 완료
: [docs] 프로젝트 주제 선정
2024-01-12: [✅]
: [docs] DB설계
2024-01-13: [✅]
: [docs] DB설계
2024-01-14: [✅]
: [docs] DB설계, 및 분담 작업 시작
timeline
title Develop history [2024-01-15 ~ 2024-01-21]
2024-01-15: [✅] 기능 구현 시작
: [docs] 기능 구현 1차
: [Back] DB JPA로 구현 시작
: [Front] 테마 디자인 구현
: [Python] 악보 API 적용 시작
2024-01-16: [✅] DB 설계 완료
: [front] 테마 디자인 구현
: 🔨
: [Back] DB JPA로 게시판 테이블과 멤버 테이블 구현
: [Python] ...💦
2024-01-17: [✅]
: [front] 테마 디자인 구현
: 🔨
: [Back] DB JPA로 플레이리스트와 멤버 테이블 구현 중
: [Python] ...💦
2024-01-18: [✅]
: [front] 테마 디자인 구현, 로그인 회원가입 폼 구현
: 🔨
: [Back] DB JPA로 플레이리스트와 멤버 테이블 구현 중
: [Python] 파이썬 초기 세팅
2024-01-19: [✅]
: [front] 로그인 정보창, 로그아웃 연결, 드롭다운 메뉴 구현
: 🔨
: [Back] DB JPA로 플레이리스트와 멤버 테이블 구현 중
: [Python] ...💦
2024-01-20: [✅]
: [front] 마이페이지 제작 시작, 페이지 렌더링
: 🔨
: [Back] 좋아요 싫어요 기능 구현 , 이메일 계정정보, 이름 중복 체크 기능 구현
: [Python] ...💦
2024-01-21: [✅]
: [front] 마이페이지 제작 중, 회원 정보 수정 구현 시작
: 🔨
: [Back] 악보 기능 구현
: [Python] ...💦
timeline
title Develop history [2024-01-22 ~2024-01-28 ]
2024-01-22: [✅] -------------------------------------
: [front] 문의 전송 기능 구현 시작
: 🔨
: [Back] 문의 추가, 문의 삭제 구현, 멤버 테이블 수정
: [Python] 악보 변환 테스트
2024-01-23: [✅]
: [front] 문의 전송 구현, 나의 문의 확인하기 구현
: 🔨
: [Back] 멤버 테이블 수정, 쪽지 기능 구현 시작, 멤버 토큰 기능 구현 시작, 회원가입 시 이미지 처리
: [Python] xml 파일 서버 전달 구현
2024-01-24: [✅]
: [front] 회원가입, 로그인기능 수정
: 🔨
: [Back] 쪽지 확인, 받은 쪽지 보기, 보낸 쪽지 보기, 좋아요 싫어요 수정, 플레이 리스트 수정
: [Python] ...💦
2024-01-25: [✅]
: [front] 악보 공유 페이지 구현 시작, 개인 서비스 페이지 구현 시작
: 🔨
: [Back] 플레이 리스트 구현, 악보 youtube링크 받아 xml파일 보내기, 플레이 리스트 수정
: [Python] AI 음악 생성 기능 개발 시작
2024-01-26: [✅]
: [front] 쪽지 열람 기능 구현, pdf파일 전송 구현, 마이 페이지 구현
: 🔨
: [Back] 멤버 테이블 수정, 토큰 기능 수정, 쪽지 기능 수정
: [Python] 파일 경로 수정
2024-01-27: [✅]
: [front] 로그인 오류 수정, 악보 변환 로딩 페이지 구현, 쪽지 삭제 구현
: 🔨
: [Back] 악보 변환 기능 수정, 멤버 테이블 수정
: [Python] notation 수정
2024-01-28: [✅]
: [front]악보 페이징 처리, 악보 저장하기, 공유하기 구현, 게시물 페이지 구현 시작
: 🔨
: [Back] 악보 변환 기능 구현
: [Python] 텍스트 => pdf변환 완료
timeline
title Develop history [2024-01-29 ~ 2024-02-04]
2024-01-29: [✅]
: [front] 전체 페이지 수정, AI 음악 생성 시작, 게시물 페이지 구현 중
: 🔨
: [Back] 악보 AI 기능 구현, 게시판 기능 구현, 구글 로그인 수정
: [Python] ...💦
2024-01-30: [✅]
: [front] 음악 웨이버 추가, 음악 생성 기능 완성, 게시물 페이지 구현 중
: 🔨
: [Back] 악보 mp3파일로 변환 기능 구현
: [Python] AI음악 MP3 변환으로 변경
2024-01-31: [✅]
: [front] 악보 페이지 구현 시작, 플레이 리스트 구현 시작, 게시물 수정, 구글 로그인 구현 시작
: 🔨
: [Back] 구글 로그인 기능 구현
: [Python] ...💦
2024-02-01: [✅]
: [front] 좋아요,싫어요 기능 구현, 구글 로그인 구현 중, 악보 페이지 구현 중, 구글 로그인 구현 중
: 🔨
: [Back] 플레이 리스트 기능 수정, 게시판 기능 수정
: [Python] ...💦
2024-02-02: [✅]
: [front] 플레이 리스트 수정,게시판 수정
: 🔨
: [Back] 플레이 리스트 삭제 기능 구현, 게시판 기능 수정, 멤버 구글 로그인 수정
: [Python] 테스트 파일 수정
2024-02-03: [✅]
: [front] 게시판 수정
: 🔨
: [Back] 악보 기능 수정, 플레이 리스트 수정
: [Python] ...💦
2024-02-04: [✅]
: [front] 플레이 리스트 구현 중, 좋아요,싫어요 구현
: 🔨
: [Back] 게시판 기능 구현, 악보 기능 수정, 플레이 리스트 수정
: [Python] 파이썬 코드 수정
timeline
title Develop history [2023-02-05 ~ 2023-02-11]
2024-02-05: [✅]
: [front]관리자 모드 구현 시작, 게시판 수정, 플레이 리스트 수정
: 🔨
: [Back] 악보 기능 수정, 플레이 리스트 기능 수정, 멤버 기능 수정
: [Python] 반환 되는 악보의 제목 변경
: [AWS]
2024-02-06: [✅]
: [front] 구글 로그인 구현
: 🔨
: [Back] 악보 기능 수정, 플레이 리스트 기능 수정, 멤버 기능 수정
: [Python] ...💦
: [AWS]
2024-02-07: [✅]
: [front] 게시판 수정, 플레이 리스트 수정
: 🔨
: [Back] 악보 기능 구현, 플레이 리스트 기능 구현, 멤버 기능 구현
: [Python] 파일 업로드 테스트
: [AWS]
2024-02-08: [✅]
: [front] 게시판 구현 , 플레이 리스트 구현
: 🔨
: [Back] 비밀번호 찾은 후 비밀 번호 바꾸기 구현
: [Python] 로직 변경
: [AWS]
2024-02-09: [✅]
: [front] 악보 목록 오류 수정, 비밀번호 찾기 연결
: 🔨
: [Back] 비밀번호 찾기 로직 수정
: [Python] ...💦
: [AWS]
2024-02-10: [✅]
: [front] 개인 서비스 PDF모달 출력으로 수정, 레코드바 hover추가
: 🔨
: [Back] ...💦
: [Python] ...💦
: [AWS]
2024-02-11: [✅]
: [front] 악보 변환페이지 수정
: 🔨
: [Back] 프로필 사진 수정
: [Python] ...💦
: [AWS]
timeline
title Develop history [2023-02-12 ~ 2023-02-18]
2024-02-12: [✅]
: [front]음악 생성페이지 수정
: 🔨
: [Back] 게시판 페이징 처리 구현
: [Python] ...💦
: [AWS]
2024-02-13: [✅]
: [front] 로그인모달, 회원정보수정 모달, 회원가입 모달, 비밀번호 찾기 모달, 개인서비스 수정, host-config 수정
: 🔨
: [Back] 게시판 좋아요 싫어요 수정, 다운로드 카운트 수정
: [Python] ...💦
: [AWS]
2024-02-14: [✅]
: [front] 모든 모달 수정 & 애니메이션 삽입, 회원정보 수정, 프로필 사진 오류 수정
: 🔨
: [Back] 게시판 좋아요 싫어요 수정 , 게시판 삭제 처리 수정
: [Python] ...💦
: [AWS]
2024-02-15: [✅]
: [front] 비밀번호 찾기 모달 수정, 회원정보 드롭다운메뉴 수정
: 🔨
: [Back] 개인 페이지 프로필 이미지 수정
: [Python] ...💦
: [AWS]
2024-02-16: [✅]
: [front] 페이지 오류 수정
: 🔨
: [Back] ...💦
: [Python] ...💦
: [AWS]
2024-02-17: [✅]
: [front] 페이지 오류 수정, 모든 기능,디자인 완료
: 🔨
: [Back] 문의 목록 수정, 회원 탈퇴 수정, 게시판 좋아요 싫어요 수정, 모든 기능 완료
: [Python] ...💦
: [AWS]
2024-02-18: [✅]
: [front] 페이지 오류 수정
: 🔨
: [Back] ...💦
: [Python] ...💦
: [AWS] ...💦
flowchart LR
회원가입 --> 로그인 --> 서비스이용
서비스이용 --> 악보변환
서비스이용 --> AI_음악_생성
서비스이용 --> 악보게시판
서비스이용 --> 개인서비스
서비스이용 --> 팀_소개
flowchart LR
악보변환 --> 악보_저장
악보변환 --> 악보_게시판_등록
AI_음악_생성 --> 생성된_음악_파일_저장
AI_음악_생성 --> 사용된_텍스트_확인
악보게시판 --> 악보목록_확인
악보게시판 --> 좋아요/싫어요_설정
악보게시판 --> 악보_플리_저장
악보게시판 --> 악보_신고
악보게시판 --> 악보_다운로드
개인서비스 --> 회원정보_수정
개인서비스 --> 등록악보_확인
개인서비스 --> 악보_플리_확인/삭제
개인서비스 --> 쪽지내역_확인/삭제
개인서비스 --> 문의하기/내역_확인/삭제
팀_소개 --> 팀/사이트_소개
- 커밋 메세지에 이름을 달아서 버전을 알려줍니다. ex) FRONTEND - CRESCENDO v0.1
ex) veen/login : veen 개발자가 로그인 기능을 개발하는 브랜치