Comment puis-je obtenir l'index temporel (ou le numéro d'image) dans Sphinx 4 lorsque je le mets à transcrire un fichier audio?Indice de temps de transcription Sphinx 4
Le code J'utilise ressemble à ceci:
audioURL = ...
AudioFileDataSource dataSource = (AudioFileDataSource) cm.lookup("audioFileDataSource");
dataSource.setAudioFile(audioURL, null);
Result result;
while ((result = Recognizer.recognize()) != null) {
Token token = result.getBestToken();
//DoubleData data = (DoubleData) token.getData();
//long frameNum = data.getFirstSampleNumber(); // data seem always null
String resultText = token.getWordPath(false, false);
...
}
J'ai essayé d'obtenir le temps de la transcription à partir d'objets de résultat/jeton, par exemple similaire à ce que fait un sous-titreur. J'ai trouvé Result.getFrameNumber() et Token.getFrameNumber() mais ils semblent retourner le nombre de trames décodées et non l'heure (ou l'image) où le résultat a été trouvé dans le contexte du fichier audio entier.
Je regardais AudioFileDataSource.getDuration() [= privé] et les classes Recognizer mais n'ont pas comprendre comment obtenir le transcrit nécessaire temps index ..
Idées? :)