Comment installer et exécuter Tacotron2 sur Ubuntu WSL?

Aug 17 2020

J'utilise Ubuntu 20.04 sur WSL Windows 10 Pro 2004 (19041.388), et je souhaite vivement exécuter Tacotron2 et essayer la fonctionnalité. J'ai installé Tacotron2 à partir de git via la ligne de commande, mais je ne sais pas s'il a été construit avec succès. Je suis un débutant avec Linux et Docker, et les instructions d'installation de Tacotron2 lié ci-dessus semblent déroutantes.

Alors, voici où j'en suis:

  1. Docker installé, confirmé opérationnel, tout va bien.
  2. Tacotron2 téléchargé via git cmd-line - succès.
  3. Exécution de cette commande: sudo docker build -t tacotron-2_image -f docker/Dockerfile docker/- il s'est passé beaucoup de choses qui semblaient réussir, mais à la fin, il y a eu une erreur:

Package libav-tools is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it:

ffmpeg

E: Package 'libav-tools' has no installation candidate The command '/bin/bash -c apt-get install -y libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools wget git vim'

returned a non-zero code: 100

À ce stade, je suis coincé. Il est vrai que je cherche à me débarrasser de cette erreur, mais globalement, je recherche des étapes exactes pour pouvoir exécuter Tacotron2 et finalement pouvoir le nourrir d'un fichier mp3 avec la voix de quelqu'un, puis pouvoir le nourrir. un texte, qu'il "parlera" ensuite de cette voix.

Telle est ma compréhension de ce qu'est Tacotron2, mais j'ai hâte de savoir si je vais sur la mauvaise voie.

Réponses

2 wisp Aug 19 2020 at 14:48

Votre problème ressemble beaucoup à https://github.com/Rayhane-mamah/Tacotron-2/issues/475

Le problème se produit car vous avez des libav-toolsdirectives d'installation dans votre Dockerfile qui n'a plus de candidats à l'installation.

Pour éliminer l'erreur, vous devez ouvrir docker/Dockerfiledans n'importe quel éditeur de texte et supprimer libav-toolsde la ligne qui contient

apt-get install -y libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools wget git vim

avoir quelque chose comme

apt-get install -y libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg wget git vim

Étant donné que le package est ffmpegdéjà dans cette liste, vous n'avez pas besoin de l'ajouter à nouveau.

Vous pouvez également supprimer libav-toolsdu Dockerfile à l'aide de la commande sed dans le shell WSL (vous devrez peut-être ajouter sudoavant sed si vous avez une erreur avec les autorisations):

sed -i docker/Dockerfile -e 's/libav-tools\ //g'

Ensuite, votre commande de construction devrait réussir.