0

理想情况下,我正在寻找一种方法来获取音频文件的特定片段是某个电话的概率向量。就像是:

输入:

  • wav文件
  • 起始位置(例如@1.4 秒)
  • 持续时间(例如 500 毫秒)

输出:

  • SIL 2.324*10^-3
  • AA 1.514*10^-4
  • 自动曝光 1.482*10^-2
  • ...
  • ZH 5.03*10^-5
4

1 回答 1

1

您可以获得HVite在强制对齐模式下运行的分数。恐怕你必须为你拥有的每个音素运行这个:

HVite -A -D -T 1 -l '*' -o NTW -C HTK.cfg -a \
    -H macros \
    -H hmmdefs \
    -i acoustic_score_AA.mlf \
    -y lab \
    -I AA.mlf \
    -S index.scp \
    words phones

输出文件acoustic_score_AA.mlf将包含结果。我

词汇文件的内容words应该是这样的:

AA AA
AE AE
....
ZH ZH

据我记得,phones必须包含音素列表(HMM 模型)。

这里的技巧是输入 .mlf 文件的内容。例如,AA.mlf应该是这样的:

#!MLF!#
"*/S0001.lab"
AA
.

这将迫使 HVite 将AA模型应用于整个话语。音频文件的分块必须提前执行。

于 2019-01-16T19:22:38.407 回答