피아노 로커 데이브 일기
7363 단어 steammusicxmljavascriptpiano
이 모든 것은 인터넷 미디가 존재한다고 생각했던 2021년 5월부터 시작됐다.이것은midi키보드 입력을 들을 수 있기 때문에 만약 내가 rock band 3에 PRO KEYS MODE 도표를 나타낼 수 있다면 (이것은midi파일+oggg어간) 매우 좋을 것이다.
내 마음을 다른 곳에 두었지만 그리 멀지 않았다. 나는 이'피아노 록 개발 일기'시리즈를 시작했다. 그곳에서 나는 기술, 개발, 음악 게임과yknow에 대해 쉴 새 없이 이야기했다.내가 뭘 생각하든
당일 사례 연구:
musicXML 렌더링
악보 - 네가 좋아하든 안 좋아하든 키보드 연주와 악보 읽기는 밀접하게 연결되어 있다.모든 예외, 재즈 레전드, 그들은 모두 귀에 익은 사람들이다. 단지 전체적인 규칙을 더욱 강하게 할 뿐이다.나는 어떤 형식으로 악보를 보여줘야 한다.
나를 믿어라. 나는 확실히 이 총알을 피하려고 했지만, 나는 더 이상 피할 수 없을 것 같다.
또 다른 언급할 만한'대체'기호가 있다.가장 이상한 것은 ABC Notation, top-down charts a-la keyboardmania에서 유행한 Synthesia, 그리고 새로 일어난 가상 피아노 열풍(ascii 키보드에서 피아노를 치는 것은 일이다. 사람들은 정말 이렇게 했다. 더 미친 것은 그들이 ROBLOX에서 이렇게 한 것이다.
나는 Yousician, 간단한 피아노, pianoo 등등 모두 악보를 보여주는 것을 본 적이 있다. Yousician 윈도우즈 응용 프로그램의 로컬 캐시에서 조금 발굴한 후에, 나는 너에게 그들이 모두 음악 XML을 해석한다고 보장할 수 있다.
내가 아는 바에 의하면, 악보의 가장 큰 공개 출처는 다운로드 가능한 악보, 예를 들어 PDF (nope), MIDI (좋아 보인다. 야, 나는 이미 그것을 실현했지만, 나는 그것을 믿지 않는다. 나는 언젠가 단독 게시물에 소개할 것이다.), 그것들의 전문 형식과 음악 XML이다.
그것은 가능한 한 많은 텍스트 파일을 열 수 있도록 널리 사용되고 있으며, 그것은 무료이다. 나는 그것을 어떻게 설명하고 필기를 하는지 배우기만 하면 된다.이 모든 사람들이 이미 한 것처럼 좀 더 활발해졌으면 좋겠다.
나는 여전히 이 개똥에 갇혔다. 정말 갇혔다. 그러나 다음은 내가 지금까지 배운 것이다.
jszip
resque에 있어 어렵지 않다fast-xml-parser
Bravura
로 넘어가세요. g번호는 U+E050(U+1D11E)입니다. 다행입니다. PIXI를 만드세요.텍스트('\uE050') - g자(글꼴을 미리 불러올 경우)이 페이지 어떻게 음표를 시간과 지속 시간(초)으로 변환합니까
따라서 전형적인 음악xml
measure.note
은pitch
,step
(반음계,C,C#,D,무엇이든)과octave
(int)로 구성되어야 한다.그 다음
type
과 duration
.유형은 다음과 같은 범위 내에 있다. [whole
,half
,quarter
,...32nd
,64th
,...1024th
등등].duration
는 정수다.바보로서 나는 설명서를 읽지 않았다. 나는 단지 나의 반짝이는 작은 별그림을 디버깅했을 뿐이다. 경험에 따라 1은 4분의 1음부, 2는 반, 4는 완전하다고 결정했다.반짝이는 것은 25센트보다 적지 않아 매우 효과가 있다.나는 심지어 int switch case에 문자열을 썼는데, 시간은 형식에 따라 엄격하다.벙어리
굳은 도리
이제 를 예로 들어보겠습니다.
<attributes>
<divisions>24</divisions>
<key>
<fifths>-3</fifths>
<mode>minor</mode>
</key>
<time>
<beats>3</beats>
<beat-type>4</beat-type>
</time>
</attributes>
....<note>
<pitch>
<step>G</step>
<octave>4</octave>
</pitch>
<duration>12</duration>
<lyric>
<syllabic>single</syllabic>
<text>Dans</text>
</lyric>
</note>
<note>
<pitch>
<step>C</step>
<octave>5</octave>
</pitch>
<duration>8</duration>
<lyric>
<syllabic>single</syllabic>
<text>un</text>
</lyric>
</note>
지금까지 우리가 시간에 대한 이해는 3/4로 4분의 1의 음표는 24분의 음표와 같다.예를 들어 이 예에서 BPM=120이다.첫 번째 음표는 도대체 얼마나 연주합니까?
파티션(4분 음표당) = 24, BPM = 120, 지속 시간 = 12
timePerOneDivison = (60 / bpm) / Divisions
그리고 이 음표의 지속 시간은 초 단위로기간*(60/bpm)/부서)
12*(60/120)/24) = 0.25초.
음표의 가로줄 (왼쪽 또는 오른쪽) 에 따라 이 지속 시간을 gTime이나 fTime 변수에 추가하면 다음 음표의 시작 시간이 됩니다.멋있죠?
조금나도 휘황찬란한 https://www.w3.org/2021/06/musicxml40/tutorial/midi-compatible-part/ 음표를 연주하고 있기 때문에, 나의 수학은 여전히 정확하지 않지만, 시각적 효과는 정확해 보이기 때문에, 나는 지금 나의 오디오 코드/교통수단의 사용 탓으로 책임을 돌린다.
나는 이것이 누군가에게 도움이 되기를 바란다.마지막으로, 이것은 현재 원형에 있는 모습입니다. (sheet music supports는 현재 메인 게임에 독립된 프로젝트입니다. 저는 완성된 후에 메인 게임을 합병하거나 이 깨끗한 소년에게 메인 게임을 합병합니다.)
Reference
이 문제에 관하여(피아노 로커 데이브 일기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/roman_guivan_17680f142e28/piano-rocker-dev-diary-1-what-is-up-24k2텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)