perminder-klair/subwave

Personal internet radio: Agentic AI DJ

해결하는 문제

SUB/WAVE는 개인 음악 라이브러리를 프로페셔널한 사운드의 인터넷 라디오 방송국으로 전환합니다. 개인 플레이리스트와 달리, 모든 청취자가 동시에 동일한 콘텐츠를 듣는 공유 브로드캐스트를 생성하며, AI DJ가 트랙 선택, 전환, 음성 커멘터리 등을 관리합니다.

작동 방식

이 시스템은 실제 라디오 경험을 시뮬레이션하기 위해 여러 구성 요소를 통합합니다:

  • AI DJ 브레인: Ollama, OpenAI, Anthropic 등과 같은 교체 가능한 LLM을 사용하여 트랙을 큐레이션하고, 방송 아이덴티티, 날씨 정보, 곡 인트로용 스크립트를 작성합니다.
  • 음성 합성: 로컬 옵션인 Piper와 Kokoro, 또는 클라우드 서비스인 ElevenLabs를 포함한 여러 TTS 엔진을 사용하여 DJ의 스크립트를 음성으로 재생합니다.
  • 음악 통합: Subsonic API를 통해 Navidrome 서버에서 음악을 가져옵니다.
  • 방송 엔진: Icecast와 Liquidsoap를 사용하여 모든 청취자에게 단일 공유 오디오 피드를 스트리밍합니다.
  • 음향 분석: BPM, 키, 레벨을 분석하여 원활한 크로스페이드를 생성하고, DJ의 음성이 보컬을 덮지 않도록 보장합니다.

대상 사용자

자신의 음악 컬렉션을 단순히 플레이리스트를 무작위 재생하는 것이 아니라, 실제로 '채널을 틀어' 듣고 싶어하는 음악 애호가와 자가 호스팅 사용자, 그리고 다른 사람들과 함께 큐레이된 자동 방송 경험을 만들고 싶은 사용자에게 적합합니다.

주요 기능

  • 일상 언어 요청: 청취자는 자연어로 특정 분위기나 아티스트를 요청할 수 있으며, AI DJ가 이를 큐에 삽입합니다.
  • 큐레이션 도구: 24시간 365일 운영 가능한 스케줄링 그리드, 다양한 목소리/스타일을 가진 여러 DJ 캐릭터, 그리고 임베딩을 활용한 시각적 음악 탐색을 제공하는 '라이브러리 옵저버터리'가 포함되어 있습니다.
  • 플러그인 가능한 기능: RSS를 통한 뉴스 피드 등 사용자 정의 기능을 코드 재배포 없이 DJ에 추가할 수 있습니다.
  • 프로페셔널한 전환: 보컬 감지 및 스템 블렌딩 기능을 통해 고품질의 프로덕션 사운드를 구현한 트랙 간 전환을 제공합니다.
  • 다중 플랫폼 접근성: iOS, Android, 데스크톱용 네이티브 앱과 다양한 스킨을 지원하는 웹 플레이어를 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트