feat: 글자속도·단어간격·문장간격 독립 조절 + atempo 기본 타임스트레치
- 타임스트레치 우선순위를 ffmpeg atempo(기본) → rubberband → librosa 로 변경 - MeloEngine: 문장 단위로 분리 후 문장 사이 무음(sentence_gap), 단어(어절) 사이 무음(word_gap)을 타임스트레치와 독립적으로 삽입. speed 는 글자(음소) 속도만 조절 - API(TTSRequest)에 word_gap/sentence_gap 필드 추가, 전 엔진 시그니처 확장 - 프론트엔드에 '글자 속도/단어 간격/문장 간격' 슬라이더 추가, supports 플래그로 미지원 엔진(supertonic/oute/cosy)에서는 간격 슬라이더 자동 비활성화
This commit is contained in:
@@ -42,12 +42,28 @@
|
||||
<div class="sliders">
|
||||
<div class="slider-row">
|
||||
<div class="slider-head">
|
||||
<span>속도</span>
|
||||
<span>글자 속도</span>
|
||||
<span class="slider-val" id="speedVal">1.40x</span>
|
||||
</div>
|
||||
<input type="range" id="speed" min="0.5" max="2.0" step="0.05" value="1.4" />
|
||||
<div class="slider-scale"><span>느리게</span><span>빠르게</span></div>
|
||||
</div>
|
||||
<div class="slider-row">
|
||||
<div class="slider-head">
|
||||
<span>단어 간격</span>
|
||||
<span class="slider-val" id="wordGapVal">0 ms</span>
|
||||
</div>
|
||||
<input type="range" id="wordGap" min="0" max="1.0" step="0.02" value="0" />
|
||||
<div class="slider-scale"><span>붙여서</span><span>띄어서</span></div>
|
||||
</div>
|
||||
<div class="slider-row">
|
||||
<div class="slider-head">
|
||||
<span>문장 간격</span>
|
||||
<span class="slider-val" id="sentGapVal">0.30 s</span>
|
||||
</div>
|
||||
<input type="range" id="sentGap" min="0" max="1.5" step="0.05" value="0.3" />
|
||||
<div class="slider-scale"><span>짧게</span><span>길게</span></div>
|
||||
</div>
|
||||
<div class="slider-row">
|
||||
<div class="slider-head">
|
||||
<span>피치</span>
|
||||
|
||||
Reference in New Issue
Block a user