Skip to content

Latest commit

 

History

History

API

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Potal_Service_API

프로젝트는 대학 과제용으로 시작된 API 서비스 프로젝트입니다. 모든 코드는 main.py 파일에 작성되어 있으며, FastAPI 프레임워크를 사용하여 API 서비스를 구현하였습니다.

개발 환경

  • Python 3.8
  • requirements.txt

설치 및 실행 방법

  1. 저장소를 클론합니다.
  2. 파이썬 가상환경 설정(3.8)
  3. 의존성 설치
  4. 프로젝트 실행 (uvicorn 사용)
  5. localhost/docs 를 통해 API 테스트

코드 요약 설명

위 코드는 FastAPI와 Spleeter를 사용하여 음원 분리 API를 구현하는 예시입니다.

FastAPI는 웹 애플리케이션을 쉽게 만들 수 있도록 도와주는 Python 웹 프레임워크이며, Spleeter는 딥 러닝 기반의 음원 분리 라이브러리입니다.

이 예제에서는 /audio API 엔드포인트를 통해 음원 파일을 업로드하고, Spleeter를 사용하여 분리된 음원을 생성합니다. 분리된 음원은 /output API 엔드포인트를 통해 다운로드할 수 있습니다.

다음은 각 함수의 역할에 대한 간단한 설명입니다.

  • audio: POST 요청을 처리하는 함수로, 업로드된 음원 파일을 분리하여 저장하고, 분리된 음원 파일의 다운로드 링크를 반환합니다.
  • get_audio: GET 요청을 처리하는 함수로, 분리된 음원 파일을 다운로드할 때 사용합니다.
  • model_name: 사용할 Spleeter 분리 모델을 지정하는 변수입니다.
  • separator: 지정된 분리 모델을 로드하는 객체입니다.
  • output_dir: 분리된 음원 파일을 저장할 디렉토리 경로입니다.

이 예시 코드는 다음과 같은 순서로 동작합니다.

  1. audio 함수가 POST 요청을 받아 음원 파일을 저장하고, Spleeter를 사용하여 분리된 음원 파일을 생성합니다.
  2. 생성된 분리된 음원 파일의 다운로드 링크를 반환합니다.
  3. get_audio 함수가 GET 요청을 받아 분리된 음원 파일을 전송합니다.

이 코드를 실행하려면, FastAPI와 Spleeter를 설치하고, Python 파일을 실행하면 됩니다. 또한, output_dir 변수에 지정된 경로에 쓰기 권한이 있어야 합니다.

이 코드를 참고하여, FastAPI와 Spleeter를 사용하여 음원 분리 기능을 구현하는 데 도움이 되길 바랍니다.