2Pot Traducteur Online v0.5.1
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
2Pot Traducteur Online v0.5.1
Bonjour,
2Pot est un petit programme de lecture et de traduction de texte en ligne (sans passer par un navigateur), de traduction de pages web via Google Translate, de traduction gestion des fichiers de traduction gettext par menu clic droit "Ouvrir avec".
Téléchargement/détails et commentaires: voir l'annonce sur le fil anglophone 2Pot Online Translator
Cordialement.
2Pot est un petit programme de lecture et de traduction de texte en ligne (sans passer par un navigateur), de traduction de pages web via Google Translate, de traduction gestion des fichiers de traduction gettext par menu clic droit "Ouvrir avec".
Téléchargement/détails et commentaires: voir l'annonce sur le fil anglophone 2Pot Online Translator
Cordialement.
Last edited by Argolance on Wed 04 Sep 2019, 20:06, edited 3 times in total.
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
Salut,
Joli travail. Toutefois serait-il possible de corriger un bug très gênant. Après avoir traduit un texte j'ai voulu le faire lire avec la synthèse vocale. Comme je ne suis pas du genre patient et ne voyant rien venir (ou à écouter) j'ai re-cliqué sur le bouton de la fonction en question, et comme je ne suis vraiment pas patient, j'ai encore re-cliqué! Grosssssse cassstasssstrophe
1) Comme le montre la capture d'écran en attachement il y a de nombreuses instances qui démarrent en parallèle
2) Aucune n'a lu le texte traduit (j'ignore pourquoi) mais des fichiers audio stockés en /root/, je suppose que vlc ouvre le répertoire par défaut, bug ou pas, en tout cas ce fût un beau concert cacophonique, un mix inédit
Le texte était assez long (plusieurs phrases) mais un test précédent avec hello world à très bien fonctionné.
J'ai résolu les problèmes à coups de killall
Une suggestion de programmation, si je peux me permettre, c'est de récupérer le pid quand tu lances la lecture et si l'utilisateur re-click sur le même bouton tu kill le précédent process (grace à son pid) avant de lancer un nouveau. Enfin bon, y'a peut être mieux à faire.
Et comme tu peux le voir il y a aussi eu plusieurs instances de splash, alors mon écran était aussi bloqué la dessus (j'ai balancé un killall yaf-spash pour résoudre ça)
Bon courage et merci pour cet outil qui va s'avérer très pratique.
Joli travail. Toutefois serait-il possible de corriger un bug très gênant. Après avoir traduit un texte j'ai voulu le faire lire avec la synthèse vocale. Comme je ne suis pas du genre patient et ne voyant rien venir (ou à écouter) j'ai re-cliqué sur le bouton de la fonction en question, et comme je ne suis vraiment pas patient, j'ai encore re-cliqué! Grosssssse cassstasssstrophe
1) Comme le montre la capture d'écran en attachement il y a de nombreuses instances qui démarrent en parallèle
2) Aucune n'a lu le texte traduit (j'ignore pourquoi) mais des fichiers audio stockés en /root/, je suppose que vlc ouvre le répertoire par défaut, bug ou pas, en tout cas ce fût un beau concert cacophonique, un mix inédit
Le texte était assez long (plusieurs phrases) mais un test précédent avec hello world à très bien fonctionné.
J'ai résolu les problèmes à coups de killall
Une suggestion de programmation, si je peux me permettre, c'est de récupérer le pid quand tu lances la lecture et si l'utilisateur re-click sur le même bouton tu kill le précédent process (grace à son pid) avant de lancer un nouveau. Enfin bon, y'a peut être mieux à faire.
Et comme tu peux le voir il y a aussi eu plusieurs instances de splash, alors mon écran était aussi bloqué la dessus (j'ai balancé un killall yaf-spash pour résoudre ça)
Bon courage et merci pour cet outil qui va s'avérer très pratique.
- Attachments
-
- snapshot-2.png
- (151.46 KiB) Downloaded 339 times
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Hello fabrice_035,
Pas évident d'anticiper le comportement possible de tel ou tel utilisateur! En tout cas, ce manque de patience risque de poser des problèmes du même genre avec bien d'autres programmes, sinon avec tous!
La fenêtre yaf-splash et l’icône animée sont là pour bien faire comprendre qu'il se passe quelque chose. Le temps d"interpréter le texte en ligne, de construire et de charger le fichier audio temporaire: ça demande évidemment "un peu" d'temps.
En fait, j'avais deux solutions: bloquer l'interface durant toute la lecture et du même coup empêcher qu'on puisse l'interrompre avec le bouton d'arrêt (grâce au PID justement!), ou bien, comme j'ai choisi de le faire, la laisser active pour que l'utilisateur puisse cliquer sur le bouton d'arrêt de la lecture.
Je pense qu'il y a tout simplement moyen de désactiver le bouton de lecture... pendant tout le temps de la lecture.
Il n'y a à ma connaissance que Bing qui accepte de lire plusieurs lignes à la suite, Google n'en lit qu'une, et DeepL ne lit carrément rien!
[EDIT]: En attendant, ce patch résout le problème de lecture je crois.
En tout cas, merci pour le test!
Cordialement.
Pas évident d'anticiper le comportement possible de tel ou tel utilisateur! En tout cas, ce manque de patience risque de poser des problèmes du même genre avec bien d'autres programmes, sinon avec tous!
La fenêtre yaf-splash et l’icône animée sont là pour bien faire comprendre qu'il se passe quelque chose. Le temps d"interpréter le texte en ligne, de construire et de charger le fichier audio temporaire: ça demande évidemment "un peu" d'temps.
En fait, j'avais deux solutions: bloquer l'interface durant toute la lecture et du même coup empêcher qu'on puisse l'interrompre avec le bouton d'arrêt (grâce au PID justement!), ou bien, comme j'ai choisi de le faire, la laisser active pour que l'utilisateur puisse cliquer sur le bouton d'arrêt de la lecture.
Je pense qu'il y a tout simplement moyen de désactiver le bouton de lecture... pendant tout le temps de la lecture.
Il n'y a à ma connaissance que Bing qui accepte de lire plusieurs lignes à la suite, Google n'en lit qu'une, et DeepL ne lit carrément rien!
[EDIT]: En attendant, ce patch résout le problème de lecture je crois.
En tout cas, merci pour le test!
Cordialement.
- Attachments
-
- 2Pot_patch-180924.pet
- (6.96 KiB) Downloaded 311 times
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonjour fabrice_035,
Comme l'option --play-and-exit de cvlc est désactivée par défaut, il faut appuyer sur le bouton d'arrêt pour terminer complètement le processus de lecture et par là fermer le yaf-splash d'avertissement de lecture qui s'affiche en haut de l'écran. Le problème ne se pose pas avec mpv ou mplayer qui s'arrêtent normalement.
Le patch est un pis-aller qui permet au moins provisoirement de tout arrêter si plusieurs processus de lecture sont lancés simultanément (par accident!) .
Cordialement.
Comme l'option --play-and-exit de cvlc est désactivée par défaut, il faut appuyer sur le bouton d'arrêt pour terminer complètement le processus de lecture et par là fermer le yaf-splash d'avertissement de lecture qui s'affiche en haut de l'écran. Le problème ne se pose pas avec mpv ou mplayer qui s'arrêtent normalement.
Le patch est un pis-aller qui permet au moins provisoirement de tout arrêter si plusieurs processus de lecture sont lancés simultanément (par accident!) .
Ce n'est pas le programme je pense mais le moteur de traduction qui fixe les règles. Elles semblent moins restrictives à certains moments, lorsque le serveur n'est pas trop saturé. Comme dit plus haut, Bing lit tout, même quand c'est relativement long, Google ne prend qu'un seul paragraphe (voire une seule phrase) en charge et DeepL n'a pas cette fonction de lecture, du moins dans le cadre d'un usage public.fabrice_035 wrote:Si ton programme ne peut pas lire plusieurs lignes
Cordialement.
Bonjour
Merci Argolance pour cet utilitaire, je viens de tester sous une session tahrpup (32Bit) et le programme fonctionne bien, hormis les points de détail déjà soulignés par fabrice_035, il y a aussi :
Dans le choix du "Moteur" 2 fois google (même si les 2 fonctionnent c'est un peu bizarre non ?).
Dans les Langues, quelle est la différence entre "tl" et "tr" ? (je me fait l'avocat du diable hein), mais si l'utilisateur ne sais pas que tr = Turc et tl = Tagalog ce ne sera pas facile...
Serait il possible à ce niveau de récupérer les chaînes UTF-8 lors de l'installation de puppy ? (ainsi que la traduction en clair comme par exemple fr-FR (France), en-GB (Anglais) etc.)
Le moteur DeepL ne fait pas la traduction du Français vers le Turc.
Le texte est automatiquement traduit en Anglais.
Est-il possible d'indexer les langues disponible selon le moteur choisi ?
J'ai tenté également la traduction de fichiers .po, .pot, et .mo pour lesquels cela n'a pas fonctionné. Il faut installer auparavant le Devx_xxx (xxx est la distribution_version).
Ce n'est pas bloquant mais à préciser...
Pour revenir sur la mésaventure de fabrice_035, peut être que placer une barre de progression indiquerai visuellement à l'utilisateur qu'un travail est en cours (quitte à inhiber temporairement certains boutons).
Bonne journée.
Merci Argolance pour cet utilitaire, je viens de tester sous une session tahrpup (32Bit) et le programme fonctionne bien, hormis les points de détail déjà soulignés par fabrice_035, il y a aussi :
Dans le choix du "Moteur" 2 fois google (même si les 2 fonctionnent c'est un peu bizarre non ?).
Dans les Langues, quelle est la différence entre "tl" et "tr" ? (je me fait l'avocat du diable hein), mais si l'utilisateur ne sais pas que tr = Turc et tl = Tagalog ce ne sera pas facile...
Serait il possible à ce niveau de récupérer les chaînes UTF-8 lors de l'installation de puppy ? (ainsi que la traduction en clair comme par exemple fr-FR (France), en-GB (Anglais) etc.)
Le moteur DeepL ne fait pas la traduction du Français vers le Turc.
Le texte est automatiquement traduit en Anglais.
Est-il possible d'indexer les langues disponible selon le moteur choisi ?
J'ai tenté également la traduction de fichiers .po, .pot, et .mo pour lesquels cela n'a pas fonctionné. Il faut installer auparavant le Devx_xxx (xxx est la distribution_version).
Ce n'est pas bloquant mais à préciser...
Pour revenir sur la mésaventure de fabrice_035, peut être que placer une barre de progression indiquerai visuellement à l'utilisateur qu'un travail est en cours (quitte à inhiber temporairement certains boutons).
Bonne journée.
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
Salut,
Pour se libérer de la contrainte de la lecture en ligne, il y a un projet open source, il s'agit d'espeak que vous pouvez télécharger ici
https://sourceforge.net/projects/espeak/
Il est possible de tester immédiatement car il y a les sources et les binaires compilés (32bits) avec la librairie à copier dans /usr/lib et à linker vers libespeak.so.1
Ensuite il faut copier le dossier espeak-data dans /usr/var
C'est tout
Pour faire parler votre puppy en français
Et tapez le texte de votre choix
Bref ça m'a l'air très sympa pour ton projet.
Bye.
Pour se libérer de la contrainte de la lecture en ligne, il y a un projet open source, il s'agit d'espeak que vous pouvez télécharger ici
https://sourceforge.net/projects/espeak/
Il est possible de tester immédiatement car il y a les sources et les binaires compilés (32bits) avec la librairie
Code: Select all
(libespeak.so.1.1.48)
Ensuite il faut copier le dossier espeak-data dans /usr/var
C'est tout
Pour faire parler votre puppy en français
Code: Select all
./espeak -v fr
Bref ça m'a l'air très sympa pour ton projet.
Bye.
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonsoir,
@did18
Merci pour le test et les remarques!
@fabrice_035
Merci pour le tuyau je vais tester!
Cordialement.
@did18
Merci pour le test et les remarques!
Le moteur actuel (choisi par l'utilisateur) occupe la boite d'entrée par défaut, même s'il est déjà présent dans la liste. C'est lui que le programme prend en compte pour ses opérations de traduction. De la même façon, si un autre moteur est sélectionné, à son tour, il occupera le boite d'entrée pendant toute la session de travail, sera mémorisé à la fermeture du programme et au démarrage suivant se trouvera en tête de liste dans la boite d'entrée.did18 wrote:Dans le choix du "Moteur" 2 fois google (même si les 2 fonctionnent c'est un peu bizarre non ?).
Juste à côté de la boite de la langue de destination, il y a un bouton bleu d'information qui donne tous les renseignements dont l'utilisateur a éventuellement besoin pour identifier les langues (voir images).Dans les Langues, quelle est la différence entre "tl" et "tr" ? (je me fait l'avocat du diable hein), mais si l'utilisateur ne sais pas que tr = Turc et tl = Tagalog ce ne sera pas facile...
Désolé, là je cale, je ne comprends pas ce que tu proposes et dans quel but?Serait il possible à ce niveau de récupérer les chaînes UTF-8 lors de l'installation de puppy ? (ainsi que la traduction en clair comme par exemple fr-FR (France), en-GB (Anglais) etc.)
La fenêtre de Bienvenue/Aide indique bien que DeepL ne prend que les langues English, French, German, Italian, Néerlandais, Polish, Spanish en charge. J'ai en effet pensé à faire en sorte que lorsque DeepL est choisi comme moteur, les langues qu'il ne traduit pas sont exclues de la liste. C'est pas trop compliqué à faire. Mais je me suis dit qu'avec l'habitude, on doit finir par ne pas lui demander ce qu'il ne fait pas.Le moteur DeepL ne fait pas la traduction du Français vers le Turc.
Le texte est automatiquement traduit en Anglais.
Est-il possible d'indexer les langues disponible selon le moteur choisi ?
Donc ça a marché quand même après avoir installé le devx? Normalement, si le devx n'est pas chargé, 2Pot affiche un avertissement et le nom du devx en question tel que déclaré dans le fichier /etc/DISTRO_SPECS. C'est d'autre part affiché dans l'À propos (voir image)J'ai tenté également la traduction de fichiers .po, .pot, et .mo pour lesquels cela n'a pas fonctionné. Il faut installer auparavant le Devx_xxx (xxx est la distribution_version).
Ce n'est pas bloquant mais à préciser...
@fabrice_035
J'avais vu ça sur cette page concernant la configuration de trans mais j'ai été un peu effrayé. Je pensais que ce serait beaucoup plus compliqué que ça et prise de tête supplémentaire.fabrice_035 wrote:Pour se libérer de la contrainte de la lecture en ligne, il y a un projet open source, il s'agit d'espeak que vous pouvez télécharger ici
Merci pour le tuyau je vais tester!
Cordialement.
- Attachments
-
- 180925_202922_409x128_easyshot.png
- (12.25 KiB) Downloaded 543 times
-
- 180925_194000_450x460_easyshot.jpg
- Les programmes manquants sont signalés en rouge...
- (34.29 KiB) Downloaded 560 times
-
- 180925_192743_605x172_easyshot.jpg
- (42.38 KiB) Downloaded 553 times
Last edited by Argolance on Fri 28 Sep 2018, 23:33, edited 1 time in total.
Bonjour
Le choix de la langue par défaut qui sera utilisé par le système est directement dépendant du choix fait par l’utilisateur. Or l’affichage de la liste des langues disponible doit bien être stocké quelque par dans le fichier "puppy.sfs" puisqu’il peut être ré-affiché ultérieurement par le menu changement de la localisation…
Je suppose (mais je vois ça d'ma fenêtre) que ce doit être stocké sous forme de chaîne du genre :
slangage = ("en-GB (Anglais), en-US (Américain), fr-BE (Belgique), fr-FR (Français)... ")
ou dans un fichier .txt…
Sous forme de chaîne il est facile d’en "spliter" le contenu pour faire afficher dans un combobox ou dans une listbox l’intégralité du contenu de la chaîne (sinon il suffit de lire le fichier et d’ajouter autant d’items qu’il y a de lignes dans le fichier).
Ce qui permet à l’utilisateur lors du choix dans le combobox de voir en clair les différentes langues disponible pour tel ou tel traducteur (si c’est DeepL on affiche dans la combobox que les 7 langues disponible, si c’est Google translation on affiche dans la combobox les x langues disponible, etc.)…
Cela évite le bouton information et toute la gestion que cela suppose en aval...
Au final cela allège l’interface (moins de boutons) et donc moins de sources de problème potentiel.
Concernant l’indexation des langues par rapport au traducteur je vois au moins 2 pistes pour y parvenir (exemple pour DeepL)…
1) - Soit une chaîne fixe basée sur les 7 langues actuellement disponible, mais cela obligera à actualiser 2Pot si un jour DeepL ajoute une langue…
2) - Soit récupérer par programmation les langues disponible et les inclure directement dans les combobox, auquel cas si DeepL ajoute une langue (n’importe laquelle) elle serait automatiquement prise en compte et ajoutée aux combobox.
Le problème de la 2ème solution est que je ne connais rien au langage de programmation utilisé dans DeepL et je ne te serai d’aucun secours sur ce coup là...
Bonne journée.
Je parle de la toute première boite de dialogues concernant les choix (langue, fuseau horaire et clavier) qui s’ouvre lorsque puppy est démarré pour la première fois. D’ailleurs cette boite de dialogue est commune à toutes les puppys…did18 wrote:...récupérer les chaînes UTF-8 lors de l'installation de puppy...
Le choix de la langue par défaut qui sera utilisé par le système est directement dépendant du choix fait par l’utilisateur. Or l’affichage de la liste des langues disponible doit bien être stocké quelque par dans le fichier "puppy.sfs" puisqu’il peut être ré-affiché ultérieurement par le menu changement de la localisation…
Je suppose (mais je vois ça d'ma fenêtre) que ce doit être stocké sous forme de chaîne du genre :
slangage = ("en-GB (Anglais), en-US (Américain), fr-BE (Belgique), fr-FR (Français)... ")
ou dans un fichier .txt…
Sous forme de chaîne il est facile d’en "spliter" le contenu pour faire afficher dans un combobox ou dans une listbox l’intégralité du contenu de la chaîne (sinon il suffit de lire le fichier et d’ajouter autant d’items qu’il y a de lignes dans le fichier).
Ce qui permet à l’utilisateur lors du choix dans le combobox de voir en clair les différentes langues disponible pour tel ou tel traducteur (si c’est DeepL on affiche dans la combobox que les 7 langues disponible, si c’est Google translation on affiche dans la combobox les x langues disponible, etc.)…
Cela évite le bouton information et toute la gestion que cela suppose en aval...
Au final cela allège l’interface (moins de boutons) et donc moins de sources de problème potentiel.
Concernant l’indexation des langues par rapport au traducteur je vois au moins 2 pistes pour y parvenir (exemple pour DeepL)…
1) - Soit une chaîne fixe basée sur les 7 langues actuellement disponible, mais cela obligera à actualiser 2Pot si un jour DeepL ajoute une langue…
2) - Soit récupérer par programmation les langues disponible et les inclure directement dans les combobox, auquel cas si DeepL ajoute une langue (n’importe laquelle) elle serait automatiquement prise en compte et ajoutée aux combobox.
Le problème de la 2ème solution est que je ne connais rien au langage de programmation utilisé dans DeepL et je ne te serai d’aucun secours sur ce coup là...
Bonne journée.
- Attachments
-
- deeplDebogueur.png
- (60.62 KiB) Downloaded 298 times
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonsoir,
@did18
Merci.
Cordialement.
@did18
C'est le choix que j'ai fait: un fichier de configuration facile à mettre à jour le cas échéant, sans avoir rien à changer dans le script.did18 wrote:Soit une chaîne fixe basée sur les 7 langues actuellement disponible, mais cela obligera à actualiser 2Pot si un jour DeepL ajoute une langue…
Merci.
OK, je vois! Mais je ne comprends pas la raison pour laquelle il faudrait s'en inquiéter?Je parle de la toute première boite de dialogues [...]
Cordialement.
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonsoir,
@fabrice_035
Ben voilà ce que ça donne.
Une idée?
Cordialement.
@fabrice_035
Après avoir fait quelques tentatives, il se trouve que c'est dans /usr/share qu'il faut copier le répertoire espeak-data. Ensuite:Ensuite il faut copier le dossier espeak-data dans /usr/var
Code: Select all
# ./espeak -v fr
je me demande ce que ça va donner?
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
./espeak: symbol lookup error: /usr/lib/libespeak.so.1: undefined symbol: Pa_StreamActive
Une idée?
Cordialement.
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonjour,
2Pot version 0.3 (Oct 03, 2018)
Reste que je ne parviens pas à faire tourner espeak sur Puppy 5.7.3/ToOpPy...
Cordialement.
2Pot version 0.3 (Oct 03, 2018)
- - mode lecture/écoute paragraphe par paragraphe supprimé
- lecteurs de médias graphiques au lieu des lecteurs en ligne de commande (permettant simplement d'arrêter, de mettre en pause, de reprendre ou d'écouter à nouveau la traduction).
- sauvegarde des fichiers audio
- empêcher l'utilisateur de lancer une nouvelle traduction alors qu'un processus est déjà en cours (AFFICHER et LIRE)
- aide séparée pour chaque type de source
- nouvelles icônes
- des détails globaux au lieu de détails particuliers pour chaque langue
- compteur de caractères pour le texte saisi
- avertissement lorsque la langue source ou de destination n'est pas prise en charge par DeepL
Reste que je ne parviens pas à faire tourner espeak sur Puppy 5.7.3/ToOpPy...
Cordialement.
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
Hello,
Je vais tester ça
Pour espeak c'est clairement un problème avec ALSA, perso mon puppy à un serveur PULSEAUDIO. Si tu recherches "espeak alsa error" tu aura quelques pistes.
As-tu essayé de faire une sortie vers un fichier Wav ?
EDIT:
Je crains que ta nouvelle version soit buguée. Faut dire qu'avec moi tu va souffrir, je suis du genre lourdaud.
Donc si je fais traduire un texte et que je m'impatiente le logiciel affiche une pop up pour demander d'attendre, jusque là tout va bien. Mais ensuite plus aucune texte ne peut être traduit ou lu car il affiche toujours la fenêtre demandant d'attendre. Obligez de quitter le logiciel et relancer
Bon courage
Je vais tester ça
Pour espeak c'est clairement un problème avec ALSA, perso mon puppy à un serveur PULSEAUDIO. Si tu recherches "espeak alsa error" tu aura quelques pistes.
As-tu essayé de faire une sortie vers un fichier Wav ?
Code: Select all
./espeak -v fr "bonjour" -w out.wav
aplay out.wav
Je crains que ta nouvelle version soit buguée. Faut dire qu'avec moi tu va souffrir, je suis du genre lourdaud.
Donc si je fais traduire un texte et que je m'impatiente le logiciel affiche une pop up pour demander d'attendre, jusque là tout va bien. Mais ensuite plus aucune texte ne peut être traduit ou lu car il affiche toujours la fenêtre demandant d'attendre. Obligez de quitter le logiciel et relancer
Bon courage
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonsoir,
Effectivement, j'ai omis le "echo" avant "exit" à la ligne 703:
... si bien que lorsque l'utilisateur annule l'enregistrement du fichier audio, le compteur temporaire n'est pas remis à zéro (ce qui a néanmoins lieu à chaque démarrage de l'application). Je pense qu'avec cette modification, tu pourras t'impatienter autant que tu voudras!
D'où tout l'intérêt des tests mettant le doigt là où ça (le) fait mal!
Donc un grand merci!
-------------------------------------------------
Pour espeak:
puis un clic sur le fichier out.wav pour le lire avec le lecteur média, fonctionne correctement mais la voix est vraiment "synthétique" et nasillarde, à la limite du compréhensible.
On peut dire que ça marche mais ça ne me convainc pas du tout. Peut être utile hors connexion, et encore...
Merci quand même!
Cordialement.
Je n'ai rien contre: il ne peut en sortir que du bon.Je crains que ta nouvelle version soit buguée. Faut dire qu'avec moi tu va souffrir, je suis du genre lourdaud.
Effectivement, j'ai omis le "echo" avant "exit" à la ligne 703:
Code: Select all
*)echo 0 > $TEMP_DIR/trans_button && exit
D'où tout l'intérêt des tests mettant le doigt là où ça (le) fait mal!
Donc un grand merci!
-------------------------------------------------
Pour espeak:
Code: Select all
./espeak -v fr "montexte" -w out.wav
On peut dire que ça marche mais ça ne me convainc pas du tout. Peut être utile hors connexion, et encore...
Merci quand même!
Cordialement.
- Attachments
-
- 20181005110732.gz
- Avec Bing (Ã renommer en mp3)
- (29.11 KiB) Downloaded 272 times
-
- out.gz
- Avec espeak (Ã renommer en wav)
- (243.92 KiB) Downloaded 262 times
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
Salut
Désolé d'être le diablotin de service mais ...
Tu parles de la ligne 703, je n'ai rien trouvé malgré mes recherches, si tu peux préciser merci
Autre problème à mon sens. Ton programme utilise des variables dans /tmp/ et sont ré-utilisées à l'ouverture de celui-ci. Donc il affiche le dernier texte utilisé. Pourquoi pas, c'est peut être une fonctionnalité ? Sauf qu'après la modification d'un texte à traduire, fermeture du programme, je relance et ton programme affiche toujours la première version. Curieux.
C'est peut être un choix ?
En mode lecture il y a une énorme fenêtre qui s'ouvre et prends la presque totalité de l'écran, visiblement ton programme utilise aussi une image non présente dans ma distri (tarhpup 6.x) car je n'ai qu'une croix là ou devrait se trouver l'image.
Je ne sais pas pourquoi tu demandes à l'utilisateur d'enregistrer le fichier audio après la lecture. Si je fais CANCEL ensuite il ne veux plus le re-lire, simplement une pop-up indique que la traduction est déjà en cours (bug précédent)
Bon courage, merci.
Désolé d'être le diablotin de service mais ...
Tu parles de la ligne 703, je n'ai rien trouvé malgré mes recherches, si tu peux préciser merci
Autre problème à mon sens. Ton programme utilise des variables dans /tmp/ et sont ré-utilisées à l'ouverture de celui-ci. Donc il affiche le dernier texte utilisé. Pourquoi pas, c'est peut être une fonctionnalité ? Sauf qu'après la modification d'un texte à traduire, fermeture du programme, je relance et ton programme affiche toujours la première version. Curieux.
C'est peut être un choix ?
En mode lecture il y a une énorme fenêtre qui s'ouvre et prends la presque totalité de l'écran, visiblement ton programme utilise aussi une image non présente dans ma distri (tarhpup 6.x) car je n'ai qu'une croix là ou devrait se trouver l'image.
Je ne sais pas pourquoi tu demandes à l'utilisateur d'enregistrer le fichier audio après la lecture. Si je fais CANCEL ensuite il ne veux plus le re-lire, simplement une pop-up indique que la traduction est déjà en cours (bug précédent)
Bon courage, merci.
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonsoir,
Ne sois pas désolé!
Remplacer la ligne: par:
qui remet le compteur à 0.
Merci beaucoup pour tes commentaires.
Cordialement.
Ne sois pas désolé!
Tu parles de la ligne 703, je n'ai rien trouvé malgré mes recherches, si tu peux préciser merci
Avec "AUDIOFILENAME" comme terme de recherche, tu devrais facilement trouver (ligne 703).case $? in
0)[ "$AUDIOFILENAME" = "" ] && mv -f /tmp/tmp.* $DOC_DIR/Audio/"$DEFAUDIOFILENAME".mp3 || mv -f /tmp/tmp.* $DOC_DIR/Audio/"$AUDIOFILENAME".mp3
;;
*)exit
;;
esac
Remplacer la ligne:
Code: Select all
*)exit
Code: Select all
*)echo 0 > $TEMP_DIR/trans_button && exit
Toute modification apportée au texte est mémorisée seulement si l'utilisateur affiche ou lit la traduction. Sinon, le texte est conservé en l'état. C'est effectivement un choix, qui n'est peut-être pas le meilleur mais il m'a paru cohérent.Autre problème à mon sens. Ton programme utilise des variables dans /tmp/ et sont ré-utilisées à l'ouverture de celui-ci. Donc il affiche le dernier texte utilisé. Pourquoi pas, c'est peut être une fonctionnalité ? Sauf qu'après la modification d'un texte à traduire, fermeture du programme, je relance et ton programme affiche toujours la première version. Curieux.
C'est peut être un choix ?
De quelle fenêtre parles-tu? Normalement, la position et la taille des fenêtres est mémorisée et conservée d'une session à l'autre. Quel gestionnaire de fenêtre as-tu?En mode lecture il y a une énorme fenêtre qui s'ouvre et prends la presque totalité de l'écran,
Il me faudrait plus de détails ou une image, ce serait idéal!visiblement ton programme utilise aussi une image non présente dans ma distri (tarhpup 6.x) car je n'ai qu'une croix là ou devrait se trouver l'image.
Les fichiers audio générés par Bing sont téléchargés dans /tmp puis effacés au fur et à mesure des nouvelles traductions/lectures. Tant que le lecteur est en fonctionnement, les autres tentatives de traduction sont bloquées, l'avertissement d'une opération en cours est affiché lorsqu'on clique sur l'un ou l'autre des boutons de traduction/lecture. L'utilisateur peut manipuler le fichier audio, le relire, mettre en pause, etc. À la fermeture du lecteur, il peut se trouver que l'utilisateur veuille conserver le fichier audio et il a donc la possibilité de l'enregistrer au format mp3. Il est alors déplacé dans le dossier par défaut /root/my-documents/2Pot/Audio. Sinon il est supprimé. Ensuite seulement, l’utilisateur peut afficher ou lire une nouvelle traduction.Je ne sais pas pourquoi tu demandes à l'utilisateur d'enregistrer le fichier audio après la lecture.
La correction indiquée dans le message précédent et précisée dans celui-ci doit régler ce problème. Le fichier audio temporaire ne subsiste pas dans /tmp quel que soit le choix de l'utilisateur: l'enregistrer ou pas. S'il l'enregistre, il peut le relire à partir du dossier audio par défaut indiqué plus haut (qui d'ailleurs s'ouvre automatiquement).Si je fais CANCEL ensuite il ne veux plus le re-lire, simplement une pop-up indique que la traduction est déjà en cours (bug précédent)
Merci beaucoup pour tes commentaires.
Cordialement.
- fabrice_035
- Posts: 765
- Joined: Mon 28 Apr 2014, 17:54
- Location: Bretagne / France
Salut,
J'ai bien trouvé ou faire la modification mais chez moi c'est à la ligne 682
Voici en pj la capture d'écran de la pop-up géante!
Merci
edit :
Pour Espeak, il est préférable d'utiliser le moteur vocal "mbrola" comme indiqué sur le site de l'auteur. Certes la voix n'a pas la qualité de bing mais c'est compréhensible. A tester pour les curieux.
Voix 1
http://gongzone.chez.com/out.wav
Voix 2
http://gongzone.chez.com/out2.wav
J'ai baissé la vitesse de diction volontairement.
J'ai bien trouvé ou faire la modification mais chez moi c'est à la ligne 682
Voici en pj la capture d'écran de la pop-up géante!
Merci
edit :
Pour Espeak, il est préférable d'utiliser le moteur vocal "mbrola" comme indiqué sur le site de l'auteur. Certes la voix n'a pas la qualité de bing mais c'est compréhensible. A tester pour les curieux.
Voix 1
http://gongzone.chez.com/out.wav
Voix 2
http://gongzone.chez.com/out2.wav
J'ai baissé la vitesse de diction volontairement.
- Attachments
-
- snapshot-2.png
- (38.93 KiB) Downloaded 354 times
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Hello fabrice_035,
L'absence d’icône qui ferait ça? Ça ne le fait pas sur Puppy 5.7.1, même si l’icône est absente. Bizarre c'histoire!
Que donne cette commande copiée directement en console, sans et avec l’icône en fichier joint?
espeak: échantillons de voix nettement plus convainquants!
Merci.
Cordialement.
Ben oui, j'ai oublié les modifications que j'ai apportées au script depuis cette version .J'ai bien trouvé ou faire la modification mais chez moi c'est à la ligne 682
C'est une fenêtre yaf-splash (gtkdialog-splash)Voici en pj la capture d'écran de la pop-up géante!
L'absence d’icône qui ferait ça? Ça ne le fait pas sur Puppy 5.7.1, même si l’icône est absente. Bizarre c'histoire!
Que donne cette commande copiée directement en console, sans et avec l’icône en fichier joint?
Code: Select all
TO=fr
COUNT=30
yaf-splash -placement top -icon "/usr/share/pixmaps/dice.gif" -bg white -text "Processing the [$TO] text ($COUNT characters) translation using Bing engine..." -close never
Merci.
Cordialement.
- Attachments
-
- 181006_144715_272x55_easyshot.jpg
- Voilà ce que ça devrait donner:
- (4.63 KiB) Downloaded 616 times
-
- dice.gif
- À copier dans /usr/share/pixmaps
- (283 Bytes) Downloaded 612 times
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Hello,
Je viens d'aller jeter un œil sur puppy_tahr_6.0.5 et je constate que le yaf-splash/gtkdialog-splash des versions de Puppy antérieures a été remplacé par /usr/lib/gtkdialog/box_splash, présenté comme "compatible" avec l'ancêtre mais qui en réalité ne se comporte pas tout à fait de la même façon!
Là est la raison de cette grande fenêtre sur Tahr et Dpup Stretch et tous les puppies qui ont opté pour cette cette "box_splash" probablement devenue la norme!
Cordialement.
Je viens d'aller jeter un œil sur puppy_tahr_6.0.5 et je constate que le yaf-splash/gtkdialog-splash des versions de Puppy antérieures a été remplacé par /usr/lib/gtkdialog/box_splash, présenté comme "compatible" avec l'ancêtre mais qui en réalité ne se comporte pas tout à fait de la même façon!
Là est la raison de cette grande fenêtre sur Tahr et Dpup Stretch et tous les puppies qui ont opté pour cette cette "box_splash" probablement devenue la norme!
Cordialement.
- Attachments
-
- 181006_160413_442x62_easyshot.jpg
- (4.24 KiB) Downloaded 604 times
- Argolance
- Posts: 3767
- Joined: Sun 06 Jan 2008, 22:57
- Location: PORT-BRILLET (Mayenne - France)
- Contact:
Bonjour,
2Pot version 0.3.3 (Oct 15, 2018)
Cordialement.
2Pot version 0.3.3 (Oct 15, 2018)
- - intégration de l'ancien Puppy Precise "gtkdialog-splash" en version autonome /usr/bin/gtk-splash pour la compatibilité avec les Puppy plus récents
- ajout de fenêtres d'avertissement, remplacement de certains messages Xdialog par des fenêtres yaf-splash et des gifs animés
- corrections de nombreux petits bugs ou dysfonctionnements mineurs
- amélioration du code et des fonctionnalités (principalement dans pottrans),
- révision des fichiers d'aide.
- traduction française
Cordialement.