@ihabdevteam/core 0.271.0 → 0.273.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +65 -0
- package/dist/components.cjs.js +11 -11
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +15 -15
- package/dist/ihabdevteam-core.d.ts +16 -1
- package/dist/packages/core/src/components/Training/TrainingStepAudioPlayer.js +47 -12
- package/dist/packages/core/src/components/Training/trainingStepAudioPlayerTypes.d.ts +22 -7
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,71 @@ All notable changes to this project will be documented in this file.
|
|
|
7
7
|
> 적은 글이라, 지금 이름으로 고쳐 놓으면 그 시절에 그 이름으로 받은 사람이
|
|
8
8
|
> 제 이야기를 못 찾는다.
|
|
9
9
|
|
|
10
|
+
## 0.273.0
|
|
11
|
+
|
|
12
|
+
### **뜸은 재생 속도를 안 탄다** — 정한 자리를 적어 둔다
|
|
13
|
+
|
|
14
|
+
말귀가 (78) 을 닫으며 물었다: 느리게 들을 때 뜸도 함께 늘어져야 하나. **아니다.**
|
|
15
|
+
|
|
16
|
+
말귀 실측(0.272.0): 같은 단어가 0.75x 에서 **1022ms**, 1.5x 에서 **506ms** 로 갈리는데
|
|
17
|
+
**사이 뜸은 둘 다 2003~2004ms** 다. 뜸을 `setTimeout` 으로 재니 **저절로 그렇게 되는 것**인데,
|
|
18
|
+
그것이 옳은 쪽이라 그대로 둔다 — 다만 **저절로 되는 자리일수록 왜 그런지 적어야** 다음
|
|
19
|
+
사람이 "버그 아닌가" 하고 고치지 않는다.
|
|
20
|
+
|
|
21
|
+
까닭: 뜸은 **들을 채비**와 **견주는 틈**이지 소리의 일부가 아니다. 느리게 듣는 것은 *소리를
|
|
22
|
+
더 잘 듣기 위해서*이고, 그때 채비 시간까지 늘어질 까닭이 없다. 소음 하 훈련에서 앞 뜸은
|
|
23
|
+
**귀가 소음에 자리를 잡는 시간**인데(0.268.0), 그 시간은 사람 쪽 사정이라 소리 빠르기와
|
|
24
|
+
무관하다. 다르게 가려면 쓰는 쪽이 값을 주면 된다(`leadInMs={1000 / rate}`) — 코어가 정하지 않는다.
|
|
25
|
+
|
|
26
|
+
### 손으로 적은 목록이 **늙지 않게** 센다 — 셋째 문 (말귀 결)
|
|
27
|
+
|
|
28
|
+
`trainingStepListenForwards` 는 **빠진 것**과 **적어 놓고 안 쓰는 것** 둘을 센다. 그 둘이
|
|
29
|
+
`여기서정한다` 라는 **손으로 적은 목록**에 기대는데, 그 목록이 늙으면(재생기에서 없어진
|
|
30
|
+
프롭이 남아 있으면) 아무도 모른다 — 목록이 조용히 자라고 두 문이 그만큼 눈을 감는다.
|
|
31
|
+
|
|
32
|
+
말귀가 저쪽 지킴이에 "**어느 목록에도 없는 새 러너**가 생기면 울게" 둔 결을 가져와, 셋째를
|
|
33
|
+
둔다: **목록의 이름이 전부 재생기에 실재하는가.** 늙은 이름을 심어 보고 빨개지는지 확인했다.
|
|
34
|
+
|
|
35
|
+
> **세 번째가 있어야 목록이 안 늙는다** — 말귀 말이다. 두 문이 목록을 **읽기만** 하면,
|
|
36
|
+
> 목록은 한쪽으로만 자란다.
|
|
37
|
+
|
|
38
|
+
## 0.272.0
|
|
39
|
+
|
|
40
|
+
### 재생 속도가 **소리를 실을 때마다 지워졌다** (말귀 요청 (78))
|
|
41
|
+
|
|
42
|
+
`HTMLMediaElement.load()` 는 **명세대로** `playbackRate` 를 `defaultPlaybackRate` 로 되돌린다.
|
|
43
|
+
코어는 소리를 실을 때마다 `a.src = …; a.load();` 를 하는데 **그 뒤에 빠르기를 다시 거는 자리가
|
|
44
|
+
없었다.** 게다가 빠르기를 보는 효과는 **값이 바뀔 때만** 돈다 — 값은 그대로 0.75 라 다시 돌
|
|
45
|
+
일이 없었다. 그래서 **설정은 멀쩡한데 소리는 보통 빠르기**였다.
|
|
46
|
+
|
|
47
|
+
말귀 실측: 훈련을 열 때 `playbackRate = 0.75`, 누른 뒤 `1`, 소리 길이 **583ms**(0.75x 면 ~780ms).
|
|
48
|
+
청능훈련에서 **느리게 들려주는 것**은 흔히 쓰는 길이라 이 설정이 안 먹으면 쓸 수가 없다.
|
|
49
|
+
|
|
50
|
+
**고친 것은 값 하나가 아니라 자리다.** `a.src = …; a.load();` 가 **다섯 군데**에 흩어져
|
|
51
|
+
있었다 — 첫 재생 · 다음 트랙 · TTS 길 둘 · 번호 단추. 다섯 어디에도 빠르기를 다시 거는 일이
|
|
52
|
+
없었고, 하나만 고쳤으면 나머지 넷에서 같은 일이 났다. **소리를 싣는 자리를 하나로 모은다**
|
|
53
|
+
(`소리싣기`). 그 안에서 `defaultPlaybackRate` 를 먼저 세우고(`load()` 가 그것으로 되돌린다),
|
|
54
|
+
실은 뒤에 한 번 더 건다(기본값을 못 세우는 환경 대비).
|
|
55
|
+
|
|
56
|
+
`test/audioPlaybackRateSurvivesLoad.test.tsx` 가 **`load()` 를 부르는 자리 수**를 센다 —
|
|
57
|
+
하나가 둘이 되는 순간 운다. 거기에 명세대로 되돌리는 `load()` 를 흉내 내 **빠르기가 살아
|
|
58
|
+
남는지** 실제로 재는 시험 넷을 뒀다.
|
|
59
|
+
|
|
60
|
+
**실물로도 쟀다**(놀이터 `#training-step` → `0.75배로 듣기`, 새로 고친 뒤 진짜 클릭):
|
|
61
|
+
|
|
62
|
+
1115 loadstart rate=0.75 def=0.75
|
|
63
|
+
1147 canplay rate=0.75 def=0.75
|
|
64
|
+
4015 play rate=0.75 def=0.75
|
|
65
|
+
21453 ended rate=0.75 def=0.75 ct=13.09
|
|
66
|
+
|
|
67
|
+
**소리가 실제로 17438ms 걸렸다** — 셈은 13090 ÷ 0.75 = 17454ms(차이 16ms), 보통 빠르기면
|
|
68
|
+
13090ms 다. `load()` 를 지나며 빠르기가 안 지워진다. 끝난 뒤 다음 `canplay` 에서도 0.75 다.
|
|
69
|
+
|
|
70
|
+
> **문이 우는지 확인하다 한 번 속았다.** 고침이 두 겹이라 **한 겹만 걷으면 다른 겹이 가려
|
|
71
|
+
> 준다** — "걷었는데 통과한다" 를 잠든 문으로 읽을 뻔했다. 나간 판의 결함을 **그대로
|
|
72
|
+
> 되살려** 재니 넷이 빨개졌다. 두 겹짜리 고침을 지키는 문은 한 겹씩이 아니라 **결함
|
|
73
|
+
> 그대로**로 재야 한다.
|
|
74
|
+
|
|
10
75
|
## 0.271.0
|
|
11
76
|
|
|
12
77
|
### 진행 사슬이 **틀이 느리면 스스로 말한다** — 개발 중에 한 번 (말귀 신고 (77) 을 좇다)
|