Reparer un fichier MP4 corrompu

OPS56 Membre non connecté
-
- Voir le profil du membre OPS56
- Inscrit le : 18/11/2008
- Groupes :
Reprise du message précédent
Salut,J'ai voulu essayer le tuto de Korben pour voir, mais je bloque sur Docker. Il est dans les dépôts de Mageia 7, mais je ne trouve pas la même fenêtre que lui pour aller chercher untrunc.
Quelqu'un s'est déjà servi de ce truc ?
@+

Dell G3-15 Intel Corei7 - 16Go Ram - Nvidia GTX1660 Ti (Tri boot Mageia 9- 64 bits / Linux Mint 20 Cinamon/ Windows 10)
Core i5 760 - 8Go Ram - Nvidia Gforce 450 - (Triple boot Mageia 9-64 bits - Plasma 5 / Mint 20 Cinamon / Open Suse Tumbleweed - Plasma 5)

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
Je suis également en train de tester le tuto de Korben. J'ai réussi à télécharger et installer l'image "synctree" pour ma part. Je trouve bien la même fenêtre que lui.
https://hub.docker.com/r/synctree/untrunc
Cependant, après, il faut remplacer le chemin d'accès à nos vidéos, mais quoi que je fasse, ça me met "Could not open file" Pourtant je remplace par les bons répertoires, mais rien à faire.
Mes vidéos sont dans mon disque local ( C: )/Users/Pseudo et l'invite de commande se place automatiquement dans ce fichier.
Est-ce qu'avant « /repertoire/des/vidéos » est-ce que vous pensez que je dois remettre "C:/Users/repertoire/des/vidéos" ?
Sur le site de Docker, c'est noté, "/some/directory:/volume/in/container".
À quoi correspondent "some" et "directory" dans ce cas ?
Bonne soirée.
Édité par Krista Le 20/04/2020 à 20h46

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Citation :
Cependant, après, il faut remplacer le chemin d'accès à nos vidéos, mais quoi que je fasse, ça me met "Could not open file" Pourtant je remplace par les bons répertoires, mais rien à faire.
Est ce que cela pourrait être quelque chose comme ça ?
https://github.com/ponchio/untrunc/issues/177
https://riptutorial.com/fr/docker/example/4306/montage-d-un-repertoire-de-l-hote-local-dans-un-conteneur
De ce que je comprends, /files va se substituer à /repertoires/des/videos dans le lancement de la commande synctree/untruc ...
donc je dirais un
Code BASH :
docker run -v /repertoires/des/videos:/files -it synctree/untrunc /files/lebon-fichier.mp4 files/lemauvais-fichier.mp4
Note je n' ai pas testé ce logiciel et je ne connais pas Docker (à part de nom)...
Édité par nic80 Le 20/04/2020 à 22h56

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
Merci de ta réponse.
Oui, c'est bien ce problème.
C'est ce que j'avais compris également concernant "/files". Mais pour que ça marche, il faut que le chemin d'accès soit bon et ça n'a pas l'air d'être le cas pour moi.
Je suis allé voir le 1er lien que tu as mis et la dernière personne a expliqué avec un exemple simple. Sa réponse répond aussi à une de mes questions. Il a bien rajouté son disque (D: \).
Je vais tester en fonction de ce qu'il a noté pour voir.

zalappy Membre non connecté
-
- Voir le profil du membre zalappy
- Inscrit le : 28/07/2012
- Groupes :
OPS56 :
Salut,
J'ai voulu essayer le tuto de Korben pour voir, mais je bloque sur Docker. Il est dans les dépôts de Mageia 7, mais je ne trouve pas la même fenêtre que lui pour aller chercher untrunc.
Quelqu'un s'est déjà servi de ce truc ?
@+
J'ai voulu essayer le tuto de Korben pour voir, mais je bloque sur Docker. Il est dans les dépôts de Mageia 7, mais je ne trouve pas la même fenêtre que lui pour aller chercher untrunc.
Quelqu'un s'est déjà servi de ce truc ?
@+
Non mais je crois que korben utilise ubuntu.
<table class="formatter-table">
<tr class="formatter-table-row">
<td class="formatter-table-col">Mageia7.1/6/5-64bits-Xfce</td>
<td class="formatter-table-col">Demander la maj d'un prog existant du CCM.</td>
<td class="formatter-table-col">[Tuto] Configuration d'un serveur LAMP</td>
</tr>
<tr class="formatter-table-row">
<td class="formatter-table-col">[Tuto] installer VeraCrypt.</td>
<td class="formatter-table-col">Cloner un disque, une partition</td>
<td class="formatter-table-col">Thèmes icônes xfce/plasma les modifiées</td>
</tr>
</table>
<tr class="formatter-table-row">
<td class="formatter-table-col">Mageia7.1/6/5-64bits-Xfce</td>
<td class="formatter-table-col">Demander la maj d'un prog existant du CCM.</td>
<td class="formatter-table-col">[Tuto] Configuration d'un serveur LAMP</td>
</tr>
<tr class="formatter-table-row">
<td class="formatter-table-col">[Tuto] installer VeraCrypt.</td>
<td class="formatter-table-col">Cloner un disque, une partition</td>
<td class="formatter-table-col">Thèmes icônes xfce/plasma les modifiées</td>
</tr>
</table>

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
J'ai testé en fonction de l'exemple de la personne. Cependant, ça me met encore une erreur, mais pas la même : "Unable to find image 'untrunc:latest' locally docker: Error response from daemon: pull access denied for untrunc, repository does not exist or may require 'docker login': denied: requested access to the resource is denied. See 'docker run --help'".
J'ai remarqué qu'il n'y avait pas "-it synctree" du coup si j'essaye de le rajouter, ça me donne une autre erreur encore : "terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc".
Je suis allé voir sur des forums anglais, mais c'est très mal expliqué. Je cherche toujours.

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Citation :
Quelqu'un s'est déjà servi de ce truc ?
Je pense que le paquet Mageia 7 n' installe que l' environnement de lancement et non une interface graphique.
Déjà pour pouvoir utiliser docker, il faut ajouter son utilisateur au groupe du même nom ( sinon docker échouera à chaque fois car il ne pourra se connecter /var/run/docker.sock ( propriétaire root, groupe docker)). Penser à se déconnecter/reconnecter.
Ensuite il faut démarrer le service docker si ce n' est pas le cas par en root
Code BASH :
systemctl start docker
Ce qui aura pour but de lancer le daemon docker ( et par la même occasion de créer le fichier docker.sock).
Comme il n' y a pas d' interface graphique, deux possibilités:
1) Il faut donc aller sur le hub docker directement pour voir la liste des conteneurs docker disponibles ( sur la page de docker, il faut aller en bas de la page et cliquer dans la categorie "products" sur docker hub, puis cliquer sur "go to docker hub". Enfin dans la barre en haut ( où il y a " search for great content (ex mysql)", taper untrunc)... Puis sélectionner le conteneur voulu pour obtenir la commande à taper dans docker ( docker pull synctree/untrunc en l' occurence)
ou 2) depuis une console en utilisateur, taper la commande :
Code BASH :
docker search untrunc
Citation :
[usertest@mageia7-test ~]$ docker search untrunc
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
synctree/untrunc 2 [OK]
mooyoul/untrunc Docker image for untrunc 0
chronos/untrunc https://github.com/ponchio/untrunc 0 [OK]
swcc/untrunc Ubuntu 14.04 compiling untrunc (https://gith… 0
springjk/untrunc docker image for untrunc (https://github.co… 0
codewithpassion/untrunc 0
zany/untrunc https://github.com/anthwlock/untrunc 0
logikaljay/untrunc Fix a truncated mp4 file. 0
debiansys/untrunc-video 0
[usertest@mageia7-test ~]$
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
synctree/untrunc 2 [OK]
mooyoul/untrunc Docker image for untrunc 0
chronos/untrunc https://github.com/ponchio/untrunc 0 [OK]
swcc/untrunc Ubuntu 14.04 compiling untrunc (https://gith… 0
springjk/untrunc docker image for untrunc (https://github.co… 0
codewithpassion/untrunc 0
zany/untrunc https://github.com/anthwlock/untrunc 0
logikaljay/untrunc Fix a truncated mp4 file. 0
debiansys/untrunc-video 0
[usertest@mageia7-test ~]$
On voit donc qu' il existe un conteneur synctree/untrunc que l' on peut donc récupérer par un ( toujours en utilisateur normal):
Code BASH :
docker pull synctree/untrunc
Citation :
[usertest@mageia7-test test-untrunc]$ docker pull synctree/untrunc
Using default tag: latest
latest: Pulling from synctree/untrunc
a3ed95caeb02: Pull complete
57c1825c79e4: Pull complete
90cb6e26df4a: Pull complete
2f7c1293d54e: Pull complete
7ff7d78e10fa: Pull complete
7db90398108e: Pull complete
d647bfed319d: Pull complete
435557fe2260: Pull complete
aa3337bb2b96: Pull complete
b5fc0012a1a8: Pull complete
dbcb9ce45a22: Pull complete
aab18abf2b6e: Pull complete
1b249b71fcf0: Pull complete
Digest: sha256:e2a4cc65393f60d07487511070e7c8de63e8336bce8b95408c2a97d867a483be
Status: Downloaded newer image for synctree/untrunc:latest
[usertest@mageia7-test test-untrunc]$
Using default tag: latest
latest: Pulling from synctree/untrunc
a3ed95caeb02: Pull complete
57c1825c79e4: Pull complete
90cb6e26df4a: Pull complete
2f7c1293d54e: Pull complete
7ff7d78e10fa: Pull complete
7db90398108e: Pull complete
d647bfed319d: Pull complete
435557fe2260: Pull complete
aa3337bb2b96: Pull complete
b5fc0012a1a8: Pull complete
dbcb9ce45a22: Pull complete
aab18abf2b6e: Pull complete
1b249b71fcf0: Pull complete
Digest: sha256:e2a4cc65393f60d07487511070e7c8de63e8336bce8b95408c2a97d867a483be
Status: Downloaded newer image for synctree/untrunc:latest
[usertest@mageia7-test test-untrunc]$
Enfin on peut mettre la vidéo cassé et la vidéo de référence dans le même répertoire ( par exemple test-untrunc), puis lancer la commande (ici cela ne peut qu' échouer car faute d' avoir une vidéo à tester, j' ai crée des fichiers fictifs avec un touch)):
Code BASH :
[usertest@mageia7-test test-untrunc]$ docker run -v /home/usertest/test-untrunc:/files -it synctree/untrunc /files/test-casse.mp4 /files/test-reference.mp4 Reading: /files/test-casse.mp4 Could not read atom length
Édité par nic80 Le 22/04/2020 à 00h39

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
J'obtiens bien :
Citation :
C:\Users >docker pull synctree/untrunc
Using default tag: latest
latest: Pulling from synctree/untrunc
Image docker.io/synctree/untrunc:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
a3ed95caeb02: Already exists
57c1825c79e4: Already exists
90cb6e26df4a: Already exists
2f7c1293d54e: Already exists
7ff7d78e10fa: Already exists
7db90398108e: Already exists
d647bfed319d: Already exists
435557fe2260: Already exists
aa3337bb2b96: Already exists
b5fc0012a1a8: Already exists
dbcb9ce45a22: Already exists
aab18abf2b6e: Already exists
1b249b71fcf0: Already exists
Digest: sha256:e2a4cc65393f60d07487511070e7c8de63e8336bce8b95408c2a97d867a483be
Status: Image is up to date for synctree/untrunc:latest
docker.io/synctree/untrunc:latest
Using default tag: latest
latest: Pulling from synctree/untrunc
Image docker.io/synctree/untrunc:latest uses outdated schema1 manifest format. Please upgrade to a schema2 image for better future compatibility. More information at https://docs.docker.com/registry/spec/deprecated-schema-v1/
a3ed95caeb02: Already exists
57c1825c79e4: Already exists
90cb6e26df4a: Already exists
2f7c1293d54e: Already exists
7ff7d78e10fa: Already exists
7db90398108e: Already exists
d647bfed319d: Already exists
435557fe2260: Already exists
aa3337bb2b96: Already exists
b5fc0012a1a8: Already exists
dbcb9ce45a22: Already exists
aab18abf2b6e: Already exists
1b249b71fcf0: Already exists
Digest: sha256:e2a4cc65393f60d07487511070e7c8de63e8336bce8b95408c2a97d867a483be
Status: Image is up to date for synctree/untrunc:latest
docker.io/synctree/untrunc:latest
Mais ensuite, ça m'indique toujours "Could not open file". Est-ce que je dois forcément le faire sur Mageia7 ?
Par contre, je ne comprends pas trop votre phrase :
Citation :
Déjà pour pouvoir utiliser docker, il faut ajouter son utilisateur au groupe du même nom ( sinon docker échouera à chaque fois car, il ne pourra se connecter /var/run/docker.sock ( propriétaire root, groupe docker)). Penser à se déconnecter/reconnecte
Comment on ajoute son utilisateur au groupe ?
Édité par Krista Le 22/04/2020 à 11h22

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Ma phrase s' applique à Mageia 7(il faut passer par le ccm pour ça, et ce n' est disponible ailleurs )...
Je ne suis pas sur que sous Windows cela soit nécessaire (mais je n' ai pas testé).
Édité par nic80 Le 22/04/2020 à 13h08

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
Comme j'ai réussi à récupérer et à installer l'image synctree/untrunc, je ne comprenais pas trop puisque j'ai fait comme Korben.
À quoi correspond "Home". Est-ce que c'est le disque local ? Faut-il mettre "home"; "le nom du Disque local"; "C:" ?

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Oui dans mon exemple /home/usertest/test-untrunc est le disque/chemin local (sous Mageia) qui est aliasé en /files dans le conteneur docker.
Je suppose que sous Windows, il faut mettre le chemin local où se situent les vidéos.
Édité par nic80 Le 22/04/2020 à 17h05

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
Voici ce que je note :
"docker run -v /Disque Local/Users/Krista/Video:/files -it synctree/untrunc /files/good.mp4 /files/bad.mp4"
C'est bien le chemin d'accès à mes vidéos, mais ça ne fonctionne pas..
Est-ce que je dois changer "Disque Local" par autre chose ? Mon disque dur où se trouvent mes vidéos s'appelle comme ça.
Concernant "/files", il faut le paramétrer avant avec une commande ?
Désolée pour toutes ces questions et merci pour votre aide.
Édité par Krista Le 22/04/2020 à 18h23

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Pour le files, non je pense qu' il n' y a rien à configurer files est "juste" une substitution de /disquelocal/users/krista/videos (donc comme si on lançait la commande
Code TEXT :
(d' ailleurs je crois que c' est l' inverse (mauvais d' abord, puis bon ensuite).untrunc /disquelocal/users/krista/videos/good.mp4 /disquelocal/users/krista/videos/bad.mp4
Je doutes que le chemin d' accès aux vidéos commençe par /disquelocal ... (ici en l' occurence cela devrait plus être c:\users\krista\videos.
Donc plus
Code BASH :
docker run -v c:\users\krista\videos:/files -it synctree/untrunc /files/bad.mp4 /files/good.mp4
Édité par nic80 Le 23/04/2020 à 17h24

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
D'accord, je me demandais s'il y avait encore autre chose à configurer.
Pourtant Korben à bien noté "/files/VideoOK.mp4 /files/VideoCorrupted.mp4", pareil sur le site de Docker.
Oui, je trouvais ça bizarre de mettre /disquelocal.
Quand j'utilise la commande que tu as mise, il trouve "Reading: /files/bad.mp4" et me crée une vidéo noire de 1 seconde.
Quand j'échange "good" et "bad", j'obtiens encore :
Citation :
C:\Users\Krista>docker run -v c:\users\krista\video:/files -it synctree/untrunc /files/good.mp4 /files/bad.mp4
.Reading: /files/good.mp4
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc"
.Reading: /files/good.mp4
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc"

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Pour l'ordre effectivement, je me suis trompé.
Par contre quelle taille font les fichiers ?
https://github.com/ponchio/untrunc/issues/149

Krista Membre non connecté
-
- Voir le profil du membre Krista
- Inscrit le : 24/01/2020
Du coup, j'ai testé avec des vidéos plus petites. Je n'ai plus l'erreur, il trouve bien "Reading: /files/good.mp4" mais comme tout à l'heure, j'obtiens une vidéo noire de 1 seconde.
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie