라이브 동기화 가사 & 향상된 음악 임베드 - Beatra 주요 업데이트
실시간 동기화 가사, 완전히 재설계된 음악 임베드 인터페이스, 그리고 향상된 재생 제어 기능을 제공하는 Beatra의 주요 업데이트를 발표하게 되어 기쁩니다. 이러한 개선 사항들은 음악 청취 경험을 더욱 몰입감 있고 시각적으로 놀랍게 만듭니다.
🎵 LRCLIB를 통한 실시간 동기화 가사
가장 많이 요청된 기능이 드디어 출시되었습니다: 라이브 동기화 가사. 이제 동기화된 가사가 있는 곡을 재생할 때, 음악 임베드에서 현재 가사 라인이 실시간으로 재생과 완벽하게 동기화되어 표시됩니다.
작동 원리
- LRCLIB 통합: 커뮤니티 주도의 가사 데이터베이스인 LRCLIB과 통합하여 수백만 곡에 대한 고품질 동기화 가사를 제공합니다.
- 지능형 폴백: LRCLIB에 동기화된 가사가 없으면 다른 소스로 폴백하여 항상 최상의 가사를 제공합니다.
- 스마트 캐싱: 가사를 지능형으로 캐시하여 성능을 최적화하고 API 호출을 줄입니다.
- 서명 기반 매칭: 음악 서명 매칭을 사용하여 같은 곡의 다양한 버전에서도 정확하게 가사를 찾습니다.
가사 타임라인 기능
동기화된 가사가 있을 때:
- 현재 가사 라인이 임베드에 두드러지게 나타납니다
- 곡이 재생되면서 가사가 자동으로 업데이트됩니다
- 임베드가 가사 타이밍을 존중하여 업데이트 충돌을 방지합니다
- 진행률 표시줄이 음악과 동기화된 상태로 유지됩니다
🎨 새로운 Components V2 임베드 디자인
현재 재생 중인 임베드를 최신의 Components V2 기반 아키텍처로 완전히 재설계하여 다음을 제공합니다:
레이아웃 개선 사항
이전 레이아웃:
- 제목과 제어 버튼이 분산됨
- 진행률 표시줄이 어색한 위치에 있음
- 제한된 시각적 계층 구조
새로운 레이아웃 (위에서 아래로):
- 헤더 섹션 - "Now Playing — Requested by: @username" (컴팩트 H3 크기)
- 곡 정보 - 제목, 아티스트, 썸네일
- 라이브 가사 라인 - 현재 가사 (사용 가능할 때)
- 좋아요/재생목록/싫어요 버튼 - 빠른 작업 행
- 진행률 표시줄 - 타임스탬프가 있는 시각적 가이드
- 제어 버튼 - 볼륨, 뒤로, 스킵, 중지 제어
- 대기열 & 설정 - 대기열, 반복, 자동재생, 가사 버튼
- 구분선 - 명확성을 위한 시각적 구분
- 웹 패널 프로모션 - 바닥글 정보
시각적 개선 사항
- 깔끔한 헤더: 시각적 균형을 위해 글꼴 크기 감소 (약 15% 더 작음)
- 진행률 표시줄 재배치: 이제 버튼 그룹 사이에 위치하여 더 나은 흐름 제공
- 구분선: 바닥글 텍스트 전의 세련된 시각적 구분
- 커스텀 이모지 시스템: 모든 제어 버튼이 Beatra의 커스텀 Discord 이모지를 사용하여 일관된 모양 제공
⏪ 새로운: Back 명령
요청이 많던 기능을 추가했습니다: Back 명령. 이제 재생 이력의 이전 곡으로 쉽게 돌아갈 수 있습니다.
사용 방법
/back을 사용하거나 음악 임베드의 Back 버튼을 클릭하여:
- 이전에 재생한 곡으로 이동
- 마지막으로 멈춘 지점에서 재개
- 재생 이력을 탐색
이 기능은 Beatra의 나머지 재생 제어와 seamlessly 통합됩니다.
⚙️ 스마트 업데이트 스케줄링
내부적으로 속도 제한을 방지하면서 임베드를 최신으로 유지하기 위해 지능형 업데이트 스케줄링을 구현했습니다:
- 동적 타이밍: 임베드 업데이트 주기가 동기화된 가사의 존재 여부에 따라 조정됩니다
- 가사 인식 업데이트: 동기화된 가사가 있을 때, 업데이트는 가사 타임라인 변화에 맞춰집니다
- 폴백 동작: 동기화된 가사가 없으면 7초마다 업데이트됩니다
- 속도 제한 안전: 단일 스레드 스케줄러가 겹치는 업데이트를 방지합니다
🚀 기술적 개선 사항
기술자를 위해:
- LRCLIB 서명 기반 검색 및 점수 기반 검색 폴백이 포함된 향상된
LyricsManager
MusicPlayer는 이제 동기화된 가사 상태 추적 및 동적 스케줄링을 지원합니다
MusicEmbedManager가 Components V2로 새 레이아웃 순서로 다시 작성됨
[MM:SS.ms] 형식 지원이 포함된 동기화된 가사 파싱
- 정확한 가사 동기화를 위한 지능형 타임라인 추적
📊 성능 & 신뢰성
- 주요 변경 없음: 기존 기능은 변경되지 않습니다
- 폴백 지원: 동기화된 가사가 없어도 음악이 정상적으로 재생됩니다
- 최적화된 캐싱: API 요청을 줄이기 위해 가사가 캐시됩니다
- 오류 처리: LRCLIB을 사용할 수 없으면 graceful degradation
🎯 다음은?
Beatra 개선을 위해 지속적으로 작업하고 있습니다. 향후 개선 사항에는 다음이 포함될 수 있습니다:
- 오프라인 가사 지원
- 사용자 제공 가사 수정
- 가사 검색 기능
- 더 많은 가사 소스 통합
📱 지금 사용해보세요
업데이트는 지금 라이브로 봇과 Beatra 웹 패널 모두에서 사용 가능합니다. 다음 단계를 따르세요:
- Beatra 업데이트 - 최신 버전이 이미 배포되었습니다
- 곡 재생 - 좋아하는 트랙으로 새 임베드 디자인을 확인하세요
- 가사 확인 - 동기화된 가사가 있는 곡이 라이브 가사 업데이트를 표시합니다
- Back 명령 사용 - 이력에서 곡 사이를 점프해보세요
🙋 피드백
이러한 개선 사항에 대해 어떻게 생각하는지 듣고 싶습니다! 지원 서버에 참여하여 피드백을 공유하거나, 문제를 보고하거나, 새 기능을 제안하세요.
🙏 크레딧
다음에 감사합니다:
- LRCLIB 커뮤니티 - 고품질 동기화 가사 제공
- Discord.js 팀 - 놀라운 봇 프레임워크 제공
- 우리 커뮤니티 - 이러한 기능을 요청하고 Beatra를 지원해준 점
즐거운 청취! 🎵
Beatra - Music for Everyone