4번 안(yt-dlp 단계 제거) 독립 검증용 실험 브랜치. master 에는 병합하지 않는다.
- Config.ytresolverEnabled 플래그 추가(YTRESOLVER_ENABLED, 기본 true=기존 동작).
false 면 resolvePlayable 이 Lavalink youtube-source(poToken) encoded 를 그대로 사용.
- SelfTest 추가: 사람이 음성채널에 없어도 봇이 스스로 입장→재생→position 증가를
확인해 실제 오디오 흐름 여부를 판정(환경변수 미설정 시 비활성).
실측 결과(테스트봇, Redis off, 프로덕션 무영향):
- A) ytresolver ON : 재생 성공, 첫 소리까지 4779ms (오디오 리졸브 3166ms)
- B) ytresolver OFF: 첫 소리까지 1279~1391ms 로 빠르지만 재생 실패.
Lavalink 예외 "All clients failed to load the item." 반복, position 0 고정.
서로 다른 2곡에서 동일 재현 → 곡 특성 아닌 구조적 차단(SABR).
결론: poToken 주입만으로는 스트림 로드가 안 되므로 ytresolver 는 계속 필요.
17 lines
422 B
YAML
17 lines
422 B
YAML
services:
|
|
music-exp:
|
|
build: ./bot
|
|
container_name: music-exp
|
|
restart: "no"
|
|
env_file:
|
|
- ./bot/.env
|
|
environment:
|
|
- REDIS=false
|
|
- SELFTEST_GUILD_ID=1352269198297923648
|
|
- SELFTEST_VOICE_CHANNEL_ID=1352269198914621465
|
|
- SELFTEST_TEXT_CHANNEL_ID=1421342055774289980
|
|
- SELFTEST_QUERY=아이유 좋은 날
|
|
- YTRESOLVER_ENABLED=false
|
|
volumes:
|
|
- ./testdb:/db
|