연구 / 연구 읽기

Osu2MIR 연구, osu! 채보에서 비트 추적 자료를 추출하다

노트를 누를 시각과 음악의 박 위치를 나누어 보면 Osu2MIR의 추출 대상이 선명해진다. 논문 본문과 공개 형식에서 데이터 대응·타이밍 구간·선별·검증의 근거를 차례로 읽는다.

글·편집 게임 제작 노트 · 자료 확인·보강 · 5분 읽기

기사 요약

  • 템포 포인트에서 음악 기준을 추출한다.
  • 5초 구분의 연구 목적과 적용 범위를 적는다.
  • 보고된 결과와 자체 예제·후속 재현을 구분한다.
원형 노트와 곡선 슬라이더가 나타나는 초기 osu! 화면. 에디터와 이용자 공동체가 형성되던 시기의 개발 역사 자료다.

osu! · 공식 위키에 보존된 2007년 초기 화면

음악과 채보가 플레이 화면에서 사용되는 맥락을 보여 주는 자료다. 연구의 추출 입력은 아래 파일 구조와 절차에서 설명한다.

이미지 출처: ppy / osu! wiki · 제공 페이지 ↗ · 원본 ↗

음악의 박을 채보에서 얻는 연구

Liu와 Donahue의 Osu2MIR은 게임 채보의 템포 정보를 음악 비트 추적용 주석으로 옮기는 연구다. 이 글은 2025년 논문의 본문과 공개 저장소를 읽고 추출·선별·평가 절차를 해설한다. 연구 실행과 데이터 재현은 별도 범위다.

게임 화면의 노트는 플레이 행동을 지정한다. 연구가 얻으려는 비트 주석은 음악의 박 위치이며 다운비트는 마디의 시작이다. 채보에서 무엇을 읽었는지 나누는 것이 연구를 이해하는 첫 단계다.

관련 원자료: Liu & Donahue · Osu2MIR 본문 §1~8 ↗

음원과 타이밍 포인트의 대응을 찾는다

논문은 ranked 세트 가운데 Insane 난이도를 포함하고 즐겨찾기 200개 이상인 자료를 수집 대상으로 설명한다. 파일 형식에서는 AudioFilename으로 대응 음원을 찾고, TimingPoints에서 템포와 마디 정보를 읽을 수 있다. 게임의 HitObjects는 입력 목표를 담는 별도 영역이다.

자체 예제는 첫 기준 1초, 한 박 0.5초,4박 한 마디로 둔다. 음악의 박은 1·1.5·2·2.5초, 다음 다운비트는 3초다. 입력 목표를 1·2초에만 두어도 음악의 나머지 박은 이어진다. 이 작은 모형으로 주석과 입력 목표의 차이를 확인한다.

관련 원자료: Liu & Donahue · Osu2MIR 본문 §1~8 ↗ · osu! · .osu 파일 형식 ↗

서로 다른 세 가지 시간 정보

서로 다른 세 가지 시간 정보
자료표현예제
비트음악의 규칙적 박1·1.5·2·2.5초
다운비트마디 시작1·3·5초
입력 목표플레이 행동1·2초 선택
Play와 Edit가 보이는 초기 선택 화면. 플레이와 채보 제작의 입구가 함께 있다.

osu! · 2007년 초기 곡 선택 화면

초기 클라이언트의 곡 선택·편집 진입 화면이다. 연구 실험 결과와 구분하고, 음악 주석의 의미는 아래 격자에서 살펴본다.

이미지 출처: osu! 공식 개발 역사 기록 · 제공 페이지 ↗ · 원본 ↗

박·마디 시작·입력 목표를 다른 행에 둔다

박·마디 시작·입력 목표를 다른 행에 둔다. 기준 1초·120 BPM·4/4의 자체 예제.

편집부 작성 도표 · 기준 1초·120 BPM·4/4의 자체 예제.

가로축: 음악 파일 1~4.5초, 다음 다운비트 5초. 행: 비트·다운비트·입력 목표.

작은 화면에서는 도표를 좌우로 밀어 볼 수 있다. 도표 크게 보기 ↗

도표의 값과 읽는 순서
  1. 비트 0.5초 간격
  2. 다운비트 1·3·5초
  3. 입력은 1·2초만 선택

속도 포인트와 템포 포인트를 나눈다

osu! 형식의 uninherited 타이밍 포인트는 새 템포 구간의 기준이다. inherited 포인트의 음수 beatLength는 슬라이더 속도 배율과 연결된다. 모든 포인트를 박 간격으로 대입하기 전에 종류를 구분해야 한다.

구간 시작과 박 간격, 박자 정보를 읽고 다음 템포 기준 또는 곡 끝까지 비트를 전개하는 절차를 적는다. 시작점·단위·마디 위상과 원곡 버전이 달라지면 대응 결과도 달라지므로 중간 자료를 보관한다.

관련 원자료: osu! · .osu 파일 형식 ↗

파일 대응에서 주석 검토까지

파일 대응에서 주석 검토까지. 논문의 문제 설정과 공개 형식을 참고해 정리한 해설 경로. 단계의 수와 배치는 자체 도식이다.

편집부 작성 도표 · 논문의 문제 설정과 공개 형식을 참고해 정리한 해설 경로. 단계의 수와 배치는 자체 도식이다.

열: 음원 대응→포인트 분류→박 전개→검토. 숫자는 처리 순서.

작은 화면에서는 도표를 좌우로 밀어 볼 수 있다. 도표 크게 보기 ↗

도표의 값과 읽는 순서
  1. AudioFilename과 파일 대응
  2. uninherited 구간의 박 간격·박자
  3. 구간별 박·다운비트 전개
  4. 자동 비교와 수동 검토의 근거 보관

선별 기준의 목적과 적용 범위를 읽는다

논문은 단일 포인트, 서로 5초 이상 떨어진 복수 포인트,5초 미만 간격을 포함한 복수 포인트를 나누어 검토한다. 짧은 간격의 조정이 많은 자료를 살피기 위한 구분이다. 5초는 이 연구의 휴리스틱으로 읽는다.

제작에 옮길 때에는 포인트 수만으로 품질을 확정하기보다 구간별 정렬과 음악적 위상을 확인한다. 아래 점검표는 편집부가 제안하는 처리 기록이다. 실제 연구의 관찰과 새로운 게임의 승인 기준을 따로 적는다.

관련 원자료: Liu & Donahue · Osu2MIR 본문 §1~8 ↗

알고리즘의 일치도와 수동 검토를 함께 본다

저자들은 madmom 기반 비트 추적 결과와 F-measure·CMLt·AMLt 등을 비교하고 수동 분석을 병행한다. 각 지표의 정의와 허용 오차, 선택한 자료 범위가 결과를 읽을 조건이다. 알고리즘과의 일치는 품질을 살피는 단서로 사용한다.

본문의 741개 주석·708개 음원은 해당 부분집합의 수치다. 전체 수집 규모와 구분해 표기한다. 이 글은 원자료의 수치를 소개하며 새 실험의 성능이나 수동 검토 표본 수를 추정해 보태지 않는다.

관련 원자료: Liu & Donahue · Osu2MIR 본문 §1~8 ↗

재현 자료에서 확인할 항목을 정한다

공개 저장소는 음원 대응을 위한 식별 정보를 제공한다. 채보 자료와 음원 이용 조건을 구분하고 허용된 원자료에서 파일 대응과 해시를 확인하는 절차가 필요하다. 이 해설에서는 게임 음원이나 연구 데이터셋을 내려받아 재배포하지 않았다.

후속 재현에서는 코드 버전, 포함·제외 기준, 원곡 대응, 추출된 박과 다운비트, 검토 결과를 남긴다. 실제 게임 채보를 만들 때에는 그 음악 기준 위에 어떤 박을 어떤 행동으로 바꿀지 추가 설계한다.

관련 원자료: Osu2MIR · 공개 저장소 ↗

후속 재현에서 남길 자료

후속 재현에서 남길 자료
단계기록확인 질문
대응파일 식별자·해시·버전같은 음원인가
추출포인트 종류·단위·구간박 기준이 이어지는가
선별포함·제외 사유같은 조건을 적용했는가
평가지표 설정·검토 자료수치가 설명하는 범위는 어디인가

출처·확인 범위

2026.10.17 논문 본문 §1~8, 저장소 README와 .osu 형식을 확인했다. 데이터 수집·평가 수치는 논문 보고 범위로 서술했다. 격자와 처리 점검표는 자체 해설이다. 코드 실행·데이터 재현·음원 재배포는 수행하지 않았다.

화면·사진의 권리는 각 권리자에게 있다. 작품의 조작과 특징을 설명하기 위해 게재했으며, 버전과 제공처는 각 캡션에 표기했다.

수정 기록: 2026-10-17 사례·계산 예제·도표와 원자료 설명 보강. 오류 제보: 편집 이메일