Vous n'êtes pas identifié(e).
installer les paquets python suivant
rendre le script python éxécutable
pour + de commodité déplacer le script vtt-to-srt dans un répertoire inclus dans le PATH, généralement un dossier bin
voir
j'ai personnellement mis le script sous /usr/local/bin
j'ai créé un lien symbolique car je voulais changé le nom du script
parce que je trouve que ça fait plus court et plus facile a ce rappeler, mais chacun fait comme il veut
ainsi il pour être appelé comme une commande
(suivant le nom donné au script)
le script génère un fichier du même nom avec l'extension srt (fichier.srt)
Dernière modification par Croutons (13-10-2024 13:30:57)
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Edit2: 3 commandes, il faut aussi installer les paquets nécessaires :
Dernière modification par Tawal (13-10-2024 14:36:32)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
Ça te fait qu'un seul fichier dans /usr/local/bin
j'ai toujours qu'un fichier , l'autre c'est un lien
je chipote
Dernière modification par Croutons (13-10-2024 14:59:49)
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
fonctionne parfaitement si ,auparavant, je retire les lignes concernant le "STYLE". Je conserve la 1ère ligne :"WEBVTT"
Hors ligne
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
oui normalement la commande doit fonctionner
mais sous Debian 12 ffmpeg sort un fichier vide
Chez moi, c'est le cas, si je ne retire pas les lignes "STYLE"
Hors ligne
sinon j'ai aussi fait un script en bash ou je m'en sors pas trop mal à coup de sed
Je vais être casse-pieds mais si tu n'utilises que sed dans ton script,
autant faire un script sed et utiliser le bon shebang :
Edit:
Modification du shebang
Dernière modification par Tawal (15-10-2024 10:51:42)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
je me suis battu pour avoir un résultat, c'est sûrement loin d’être bien
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Puis l'appeler ainsi pour éditer le fichier .vtt :
L'option '-i' sera passée à sed.
Edit:
Évidemment, je regarde pour remplacer la commande grep par une commande sed
Edit2:
J'ai peut-être quelque chose :
À tester bien sûr.
Mais bon, je ne comprends pas cette valeur de 10000, il faut faire attention aux "débordements" si il n'y a pas dix mille lignes après le contexte.
Dernière modification par Tawal (14-10-2024 21:24:05)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
Mais bon, je ne comprends pas cette valeur de 10000, il faut faire attention aux "débordements" si il n'y a pas dix mille lignes après le contexte
j'avoue j'ai amplement exagéré
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
je regarde pour remplacer la commande grep par une commande sed
...
grep -A10000 "00:0" test.vtt > test2.vtt
...
Tawal a écrit :Mais bon, je ne comprends pas cette valeur de 10000, il faut faire attention aux "débordements" si il n'y a pas dix mille lignes après le contexte
j'avoue j'ai amplement exagéré
Est-ce que
Ne pas supprimer de la ligne contenant le motif 0:0, jusqu'à la fin du fichier ( autrement dit : supprimer tout ce qui est avant 0:0)
Ne conviendrait pas ?
Dernière modification par agp91 (15-10-2024 09:16:47)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
Hors ligne
Est-ce que
Ne pas supprimer de la ligne contenant le motif 0:0, jusqu'à la fin du fichier ( autrement dit : supprimer tout ce qui est avant 0:0)
Ne conviendrait pas ?
Ce que je comprends dans
C'est "Afficher les 10000 lignes après CHAQUE rencontre du motif 00:0 (motif qui peut être n'importe où dans la ligne).
Ta commande sed conviendrait si et seulement si le motif 00:0 n'apparaît qu'une seule fois dans le fichier.
Dernière modification par Tawal (15-10-2024 09:23:38)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
C'est "Afficher les 10000 lignes après CHAQUE rencontre du motif 00:0 (motif qui peut être n'importe où dans la ligne).
dans l'idée c'est affiché toute les lignes , sauf celle avant la première ligne de temps
j'ai pas trop vu comment effacer toutes les lignes parasite avant la première ligne de temps (motif 00:0) avec sed
c'est pour ça que j'ai contourné le problème, en créant un nouveau fichier avec grep en affichant toute les lignes répondant au motif 00:0 et celle après (c'est a dire jusqu’à la fin du fichier)
j'aurais du mettre plutôt un motif a recherché comme ceci
comme ça si on a une vidéo qui dure 9 heures on est tranquille
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
C'est "Afficher les 10000 lignes après CHAQUE rencontre du motif 00:0 (motif qui peut être n'importe où dans la ligne).
Ta commande sed conviendrait si et seulement si le motif 00:0 n'apparaît qu'une seule fois dans le fichier.[
j'avoue j'ai amplement exagéré
N'est-ce pas pour être certain d'aller jusqu'à l'occurrence suivante, puis la suivante... C'est à dire à la fin du fichier ?
Le motif peut apparaitre autant de fois qu'il veut, puisque tout est retourné depuis la première ligne contenant le motif, jusqu'à la fin du fichier.
[edit]
dans l'idée c'est affiché toute les lignes , sauf celle avant la première ligne de temps
Alors
Fait le job
Dernière modification par agp91 (15-10-2024 10:41:22)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
Hors ligne
[edit]
Croutons a écrit :dans l'idée c'est affiché toute les lignes , sauf celle avant la première ligne de temps
Alors/00:0/,$ !d
Fait le job
Tout à fait d'accord
Donc un script sed suffit :
Et l'appeler ainsi pour éditer le fichier à la volée (considérant que script est exécutable) :
Edit:
Si je devais choisir entre le script python et le script sed, mon choix est vite fait.
Rien qu'à voir la simplicité du script sed comparée à la complexité du script python …
Je serais pas étonné même que sed soit plus rapide que python sur ce coup là.
Dernière modification par Tawal (15-10-2024 10:50:25)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
Donc un script sed suffit :
#!/bin/sed -f
s/\([0-9]\)\.\([0-9]\)/\1,\2/g
s/line:.*//g
/00:0/,$ !d
s/<\/[a-z]>/ /g
s/<.*>//g
C’est hideux… mais je trouve ça très clair (je connais assez bien sed) et plutôt ingénieux
Hors ligne
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Hors ligne
en utilisant # comme séparateur au lieu de / sa évite de devoir échapper
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Edit:
Je ne peux pas tester, je n'ai pas de fichier .vtt sous la main.
Edit2:
Encore optimisé le script (2ième commande passe par un delete plutôt qu'un general substitute)
Edit3:
Revenu en arrière.
Edit4:
Changé /00:0/,$ !d par 0,/00:0/d
Edit5:
La regex <[^>]*> englobe toutes les balises <…>.
Je ne sais pas si ce n'est pas trop général.
De plus, si line:.* concerne une ligne au total alors autant séparer sa délétion pour être plus clair :
Dernier édit:
Là, je n'aurais pas plus beau !
À toi vv222
Dernière modification par Tawal (15-10-2024 19:58:13)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
-->les cahiers du debutant<-- WikiDF-->Découvrir les principales commandes Linux<--
L' expérience, c'est le nom que chacun donne à ses erreurs. Oscar Wilde
En ligne
Dernière modification par Tawal (17-10-2024 08:50:22)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne
ça supprime la première ligne trouvé
Le soucis vient de la:
Changé /00:0/,$ !d par 0,/00:0/d
0,/00:0/d supprime toutes lignes, du début du fichier, jusqu'à (inclus) la ligne contenant le motif 00:0.
Hihi, a vouloir faire trop joli
Dernière modification par agp91 (17-10-2024 08:44:51)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
Hors ligne
Mais c'est moins joli que
Dernière modification par Tawal (17-10-2024 09:13:27)
Comme la science n'est pas infuse, elle se diffuse.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !
Hors ligne