이 글은 룸톤 Roomtone 시리즈의 3번째 기록입니다. (총 22개)

오늘 한 일

  • 앱을 네 개 탭으로 다시 짬 — 홈·곡·관리자·설정
    • 홈은 내 재생목록과 추천 재생목록, 재생 컨트롤. 곡은 검색과 담기. 관리자 탭은 운영자에게만 보이고 곡 관리가 들어감
    • “업종 추천”이라 부르던 묶음을 “추천 재생목록”으로 바꿈
  • 저절로 재생되던 것을 걷어냄 — 기기를 켤 때도, 앱을 다시 열 때도 사람이 누르기 전엔 소리가 안 나게
    • 이유: 지난 로그에서 「기기를 켜면 앱이 알아서 시작」을 요구사항으로 뒀는데, 현장에서 보니 아침에 앱을 열어 한 번 트는 게 어색하지 않았다. 부팅 자동 실행도, 앱을 열 때 이어서 트는 것도 같이 뺐다
  • 올린 음원을 항상 MP3 320k로 굽고 음량을 −16 LUFS로 맞추게 함
    • 이유: AI로 뽑은 곡은 음량이 제각각이라 이어 틀면 소리가 튄다. 재생할 때 조절하는 대신 올릴 때 파일에 구워두면 어느 재생기든 그냥 틀기만 하면 된다
    • WAV는 MP3의 다섯 배라 재생 초반이 떨리던 것도 같이 해결됨
  • 곡 변환·업로드를 bat 하나로 묶음 — 폴더의 bat을 더블클릭하면 변환과 업로드가 됨
    • 이유: 매번 긴 명령을 치는 대신 파일을 끌어다 놓듯 쓰고 싶었다
  • 곡을 눌러도 소리가 안 나던 것을 고침 — 서버가 파일 확장자로 형식을 정하게 함
  • 재생 바를 다시 디자인
    • 좌: 자켓·제목·재생목록 이름 / 중앙: 셔플·이전·재생·다음·1곡 반복과 그 아래 진행 슬라이더 / 우: 재생 목록·좋아요·볼륨
    • 정지 버튼은 뺐고, 재생 중이 아니어도 슬라이더 자리는 늘 남겨둠
    • 볼륨은 큰 창 대신 버튼에 붙는 작은 팝업으로 (음소거 토글·퍼센트 표시)
  • 곡마다 원본 파일명을 저장해 관리자 화면에 보이게 함
    • 이유: 제목을 새로 지어도 어느 원본에서 왔는지 잃지 않게
  • 장르에 섞여 있던 악기를 ‘편성’ 축으로 분리 — 피아노·기타·퍼커션
    • 이유: 피아노·기타는 곡의 장르가 아니라 무슨 악기가 들어갔는지다
  • 올려둔 곡들을 손봄 — 같은 프롬프트로 나와 제목이 겹치던 17곡에 서로 다른 제목을 지어주고, 음량이 안 맞던 곡을 −16으로 다시 굽고, 길이가 빠진 곡을 채움
  • 매장 자신의 업종을 계정으로 옮김 — 매장이 설정에서 고르던 것을 없애고, 운영자가 관리자에서 계정별로 정하게. 매장 설정엔 읽기 전용으로 표시
    • 이유: 업종은 매장이 매번 고르는 값이 아니라 계정에 붙은 속성이다. 운영자가 계약하며 정하는 게 맞다
  • 좋아요가 1개 이상이면 홈 「내 재생목록」에 ‘좋아요 표시한 곡’ 재생목록이 뜨게 함 (기기에 저장된 좋아요 기준)
  • 곡별 재생 통계를 만듦 — 재생할 때마다 재생 시점 업종과 시각을 남기고, 곡 편집 화면에서 업종별·시간대·빈도·기간을 봄
    • 이유: 나중에 업종별로 어떤 곡이 잘 맞는지 데이터로 추천하려면 지금부터 재생 기록이 쌓여야 한다
  • 관리자 쪽을 운영자 콘솔 모양으로 바꿈 — 서비스를 쓰는 계정 목록과 계정별 설정(이름·업종) 편집

막힌 부분

  • 곡을 눌러도 소리가 나지 않았다
    • 원인: 앱이 파일을 올릴 때 형식을 안 알려줘서, 서버가 형식 미상으로 저장했고 재생기가 그걸 못 읽었다
    • 해결: 파일 확장자로 형식을 정해 저장·전송하게 했다
  • 재생 초반이 리버브 걸린 듯 떨렸다
    • 원인: 올라간 게 WAV라 MP3의 다섯 배 무게였고, 초기 버퍼가 못 따라갔다
    • 해결: 올릴 때 MP3 320k로 굽는 파이프라인을 넣었다
  • 같은 프롬프트로 뽑은 곡들이 제목까지 똑같아 목록에서 구분이 안 됐다
    • 해결: 프롬프트의 분위기·악기를 보고 곡마다 다른 제목을 지어 넣었다. 원본 파일명은 따로 저장해 추적할 수 있게 했다
  • 제목을 자동으로 짓게 하려니 외부 API와 비용이 생겼다
    • 결정: 자동화하지 않고, 필요할 때 프롬프트를 보고 그 자리에서 수동으로 짓기로 했다
  • 음량이 안 맞는 곡이 하나 섞여 있었다
    • 원인: 파이프라인을 거치지 않고 올라와 −13 LUFS로, 다른 곡보다 3dB 컸다
    • 해결: −16으로 다시 구워 덮어썼다. 이제 모든 곡이 같은 음량이다
  • 업종 글씨가 깨져 보였다
    • 원인: 표시가 아니라, 예전에 한글이 깨진 채 저장된 데이터였다(테스트로 만든 재생목록)
    • 해결: 깨진 테스트 재생목록을 지웠다
  • 관리자에서 계정 업종을 바꿔도 설정 화면에 바로 안 떴다
    • 원인: 탭을 살려두는 구조라, 설정이 처음 읽은 값을 계속 들고 있었다
    • 해결: 업종을 바꾸면 홈뿐 아니라 설정도 다시 읽도록 연결했다
  • 계정 관리를 어디까지 만들지 갈렸다
    • 결정 근거: 운영자 입장에선 계정 목록을 보고 계정별 설정을 바꾸는 게 맞다. 다만 매장이 자기 계정으로 로그인하는 구조가 아직 없어, 지금 다계정 관리를 다 만들어도 매장 앱이 어느 계정인지 못 가린다
    • 남은 판단: 지금은 계정 1개짜리 목록·편집까지만. 두 번째 고객을 받는 때가 계정별 로그인을 붙이는 시점

다음에 할 일

  • 음원을 암호화해서 파일째 빼가지 못하게 하기
  • 시간대별로 재생목록이 알아서 바뀌게 하기
  • 기기 1대만 재생되도록 묶기 (요금제의 과금 단위라서 필요)
  • 계정별 로그인과 매장↔계정 연결 붙이기 (다계정이 실제로 동작하려면 필요)
  • 앱 화면 다듬기 — 내/추천 재생목록 카드·가로 스크롤, 재생목록 자켓 4분할, 추천을 내 재생목록으로 복제, 곡 담기 시 재생목록 선택, 셔플·반복 상태 점 표시
  • 실제 공간에 2주 틀어 보고 무엇이 실제로 아쉬운지 확인하기

Series: 룸톤 Roomtone


Suggested Posts