Kabooks est un acronyme récursif de "Kabooks AudioRoBooks DataSet Creator" qui est un outil pour automatiser le processus de création de ensembles de données pour la formation de modèles de texte à dispection (TTS) et de discours à texte (STT). Il est basé sur le travail de Pansori [https://arxiv.org/abs/1812.09798].
En recevant un fichier audio et le texte correspondant en entrée, Kabooks nettoiera le texte, le divisant en phrases, transcrira chaque segment et trouvera le texte de vérité au sol au manuel complet.
Utiliser à vos risques et périls.
Assurez-vous d'installer FFMPEG:
$ apt-get update
$ apt install ffmpeg$ conda create -n kabooks python=3.9 pip
$ conda activate kabooksInstaller Pytorch:
pip3 install torch torchvision torchaudioInstallez les exigences de Kabooks:
$ pip install -r requirements.txtCette étape reçoit le fichier JSON de l'étape précédente et effectue la segmentation du fichier audio. Ce script est basé sur le script fourni par Keith Ito, qui l'a aimablement fourni par e-mail. Dans cette étape, une liste logique de segments est créée pour la première fois, stockant le nom de fichier, les heures de début et de fin. Ensuite, passez par cette liste logique, en divisant l'audio d'origine, en économisant chaque segment sur le disque.
Cette fonctionnalité est fournie par le script nommé "Audio_segmentation.py" et peut être utilisé séparément. Exécutez le script en utilisant comme argument d'entrée Le chemin d'accès du fichier audio (MP3) à segmenter.
$ python segment_tools.py L'entrée doit être un fichier MP3, qui doit être à l'intérieur du dossier d'entrée. Après avoir exécuté le script, les segments audio seront générés dans le dossier Wavs et les segments auront les mêmes noms que le fichier d'origine.
Ici, il y a un script pour utiliser wav2vec2. Cette fonctionnalité est fournie par le script nommé "transcribe_audios.py" et peut être utilisé séparément. Exécutez le script à l'aide d'un argument d'entrée du répertoire d'entrée des fichiers Wavs, du fichier de sortie de transcription. Par exemple:
$ python transcription_tools.pyL'entrée par défaut du script est le contenu du dossier Wavs. Le résultat sera un fichier .csv (transcription.csv) contenant la transcription de chacun des fichiers audio présents dans le dossier Wavs.
Dans cette étape, chaque transcription de l'étape précédente sera comparée au texte intégral se référant au livre audio d'entrée. Pour chaque transcription, le script renverra une phrase avec la plus grande similitude, qui a été trouvée dans le texte intégral.
Le résultat sera un .csv (result.csv) contenant la transcription, la phrase d'origine et une valeur de similitude, pour chacun des segments audio présents dans le dossier Wavs.
$ python search_substring.pyVous pouvez également utiliser la même version de ce script, mais à l'aide de threads:
$ python search_substring_with_threads.py --number_threads=16