Conversion MP4 en AVI incompatible (pb lecture avec appareil photo)

Conversion MP4 en AVI incompatible (pb lecture avec appareil photo) - Traitement Vidéo - Video & Son

Marsh Posté le 25-01-2025 à 14:55:26    

Bonjour,
 
J'ai acheté un appareil photo enfant à ma fille, et celui-ci peut filmer des vidéo au format AVI.
Il y a une carte SD dessus, donc on peut facilement ajouter des vidéos manuellement (à condition de garder la bonne numérotation), et les lire avec l'appareil.
 
J'ai un souci : j'ai récupéré un petit dessin-animé de 3min en MP4 et lorsque j'essaie de le convertir au même format AVI que celui d'une Vidéo générée par l'appareil, la vidéo générée est illisible, pourtant le support m'a dit que normalement il n'y avait aucun souci pour faire ce genre de choses.
 
J'ai essayé avec AviDemux et VLC, mais rien n'y fait, pourtant le soft GSpot m'indique bien que la vidéo générée possède les bons Codec Vidéo et Audio.
Pourriez-vous me dire comment vous feriez ?
 
Video MP4source :
https://www.dropbox.com/scl/fi/qonv [...] 1ysgh&dl=0
 
Video AVI cible générée par l'appareil :
https://www.dropbox.com/scl/fi/16dh [...] 9l2lb&dl=0
 
Format généré par la caméra :

Code :
  1. Motion JPEG (MJPG) - 70 Frms - 25244 kbps - 30 Pics/s - 30 Frames/s
  2. 1920 x 1080
  3. PCM Audio - 16000 Hz - 32000 Bps / 256 kb/s (1 chnl - mono)YUV 4:2:0, 8 bits


PS : j'ai essayé de copier/coller une vidéo déjà existante se trouvant sur l'appareil+renumérotation, et là ça fonctionne nickel, donc le pb ne se trouve pas là.


Message édité par cedico10 le 25-01-2025 à 22:53:27
Reply

Marsh Posté le 25-01-2025 à 14:55:26   

Reply

Marsh Posté le 26-01-2025 à 12:11:10    

Salut,
 
Il peut y avoir plusieurs sortes de MJPG et PCM, VLC donne des détails importants sur le format du fichier AVI (dans outils, informations sur les codecs) ;
-planar YUV 4:2:0 fullscale
-BT.601
-araw (pour le son)
 
Donc il faut convertir le mp4 dans ces formats.
 
Et il n'y aurait pas une limite de durée pour les vidéos lues par l'APN ?
 
Voir aussi le framerate (30 fps).


Message édité par arnuche le 26-01-2025 à 12:18:37
Reply

Marsh Posté le 26-01-2025 à 12:36:28    

Salut,
J'ai tout essayé mais impossible d'y parvenir.
 
Te serait-il possible d'essayer de me convertir le MP4 pour voir si ça fonctionne pour toi ?
 
Voici l'URL infos des codecs de VLC :
https://www.dropbox.com/scl/fi/fmen [...] ysf4x&dl=0
https://www.dropbox.com/scl/fi/fmengyahc41dk34ymbjzy/VLC-AVI-codec-format.jpg?rlkey=cgpyrvixlp7yz1exi78zysf4x&dl=0
 
et celles données par AVI Demux :
 
=====================================================
Video
=====================================================
Codec 4CC:   MJPG
Dimensions :   1920 x 1080
Rapport h/l:   1:1 (1:1)
Images/s:   30.000 fps
Average Bitrate:  34330 kbps
Durée totale:   00:00:08.366
Pixel format:   YUV 4:2:0, 8-bit
Color range:   Full (JPEG)
Color primaries:  BT.709
Transfer characteristics: BT.709
Color space:   BT.470 System B/G
 
=====================================================
Video Codec Extradata
=====================================================
Size:    0
 
=====================================================
Audio (1 piste activée)
=====================================================
Codec :    PCM
Canaux:    Mono
Débit :    32000 Bps / 256 kbps
Fréquence:   16000 Hz
Durée totale:   00:00:08.000


Message édité par cedico10 le 26-01-2025 à 12:38:21
Reply

Marsh Posté le 26-01-2025 à 12:40:11    

ah pas mal, ton idée ! je vais voir si j'arrive à filmer pendant plus de 3 min  :)
 
=> test effectué, j'ai pu filmer avec l'appareil pendant 4 min et la video s'est créée sans pb


Message édité par cedico10 le 26-01-2025 à 12:46:24
Reply

Marsh Posté le 26-01-2025 à 14:26:02    

J'utilise généralement Virtual Dub 2 mais je vois qu'il ne propose pas le MJPG.
 
Je pense que ça doit être faisable avec ffmpeg.

Reply

Marsh Posté le 26-01-2025 à 19:43:19    

J'ai testé avec ffmpeg, ce script m'a l'air de créer le bon format (mais la vidéo passe de 11 à 546 Mo !) ;

Code :
  1. ffmpeg -i "L:\Les petites princesses du monde.mp4" -s 1920x1080 -c:v mjpeg -q:v 5 -ac 1 -c:a pcm_s16le -ar 16000 "F:\Les petites princesses du monde 1080p.avi"


 
Si la réso est déjà bonne, alors il ne faut pas mettre -s 1920x1080.
Et si le framerate doit être changé, alors on rajoute -vf fps=30 avant la partie -c:v mjpeg.

Reply

Marsh Posté le 28-01-2025 à 00:12:26    

Dans AviDemux, il y a 2 options dans la configuration de "Avi Muxer":
1) AVI
2) OpenDML
 
Est-ce que tu as testé les deux?

Reply

Marsh Posté le 13-02-2025 à 19:40:08    

Hello,
désolé arnuche pour le retard de ma réponse. J'ai donc testé les AVI générés par ffmpeg mais aucun ne fonctionne (j'ai testé les 4 combinaisons que tu m'as indiquées)  :sweat:


Message édité par cedico10 le 13-02-2025 à 19:40:39
Reply

Marsh Posté le 13-02-2025 à 19:48:08    

theBattousai, j'ai testé aussi le mode OpenDML, mais sans succès non plus... sniff...
 
J'avais eu entre temps une réponse sur un autre forum, et ils me disaient que je ne pouvait pas générer le fichier car j'avais besoin du soft AviPack qui est propriétaire (comme Dolby g.e.).
 
je pensais qu'avec un exemple de AVI qui fonctionne bien, c'était très facile de pomper les paramètres du Codec, mais apparemment non...  :??:  
 
une autre idée ?

Reply

Marsh Posté le 13-02-2025 à 20:23:25    

A part essayer cet AviPack, essaye de voir avec MediInfo ou GSpot s'il n'y a pas un paramètre d'encodage ou un détail dans l'en-tête qu'on n'aurait pas vu.

Reply

Marsh Posté le 13-02-2025 à 20:23:25   

Reply

Marsh Posté le 13-02-2025 à 21:12:33    

le pb c'est que je ne sais même pas où trouver cet AviPack, sur internet je n'ai rien trouvé

Reply

Marsh Posté le 13-02-2025 à 21:20:42    

Et rien sur le site du fabricant de l'APN ?
Sinon demande des précisions à celui qui te l'a proposé.

Reply

Marsh Posté le 13-02-2025 à 21:43:02    

non, sur le site du fabricant je n'ai rien trouvé.
 
Par contre, j'ai ouvert un des fichiers AVI en Hexa et j'ai visiblement trouvé la vraie info : Generalplug AviPackerV3
 
Et cette fois, en cherchant sur le net j'ai pu trouver ceci :
https://github.com/wythe-lin/ZTKVR/ [...] PackerV3.c
 
Sauriez-vous comment je pourrais exploiter ce code source pour générer mon AVI ? (je vois que c'est du C, mais même si j'installe ça sur un IDE, je pense que je vais galérer  :sarcastic: )


Message édité par cedico10 le 13-02-2025 à 21:49:57
Reply

Marsh Posté le 13-02-2025 à 22:10:36    

Aucune idée, mais vu que ça a 11 ans, ce n'est peut-être pas le même logiciel.
 
Sinon, est-ce que le FOURCC de la vidéo ré-encodée est le même que sur celle produite par l'APN ? Tu peux voir ça avec GSpot.
 
On peut le modifier avec AVI 4CC Editor ;
http://libertyboy.free.fr/programs/indexf.php
 
Voir aussi si c'est de l'AVI 1.0 ou 2.0.

Reply

Marsh Posté le 13-02-2025 à 22:43:24    

La probabilié que ce soit le même est qd même forte, le nom est le même, il y a même un source "avi_packer_src". mais bon, je suis d'accord avec toi... rien n'est sûr...
 
Avec l'outil GSpot j'ai pas trouvé la section FourCC ou alors c'est le Codec (je suis pas doué  :ange: )
par contre, j'ai recherché sur le net, et l'info est trouvable dans le fichier après le mot clé "vids".
 
AVI de l'appareil : fourCC = vidsmjpg
AVI réencodé : fourCC = vidsMJPG
 
dans GSpot, le codec utiisé est MJPG (Motion JPEG) pour les 2 fichiers. Ou bien alors je ne sais pas bien où regarder dans GSpot.

Reply

Marsh Posté le 13-02-2025 à 23:03:44    

j'ai essayé ton outil AVI 4CC Editor,
celui-ci affiche aussi ce que j'ai indiqué plus haut : ils ont le même 4CC sauf que l'un est en minuscule, l'autre en majuscules.
j'ai essayé de modifier le 4CC mais ça ne change rien.
 
Pour répondre à ta question, les 2 AVI sont en AVI 1.0.
 
Sur GSpot il y a un truc bien différent c'est le "user data / metadata", voici l'export de chaque fichier :
 
AVI de l'appareil :  

Code :
  1. MOVI0000.avi M:\FILMS\Dessin-animés\MOVI0000.avi
  2. 7,012,352 1 AVI(.AVI) 0            AVI v1.0,  0 31312 Motion JPEG Codec(s) are Installed MJPG 1.778 0:01.733  52 30.000    1.000
  3. 30.000 0.503 1.778 1920 1080 256  1 PCM Audio No Codec Required   16000 .


AVI réencodé :  

Code :
  1. Les petites princesses du monde 1080p.avi   F:\Les petites princesses du monde 1080p.avi
  2. 573,288,818 1 AVI(.AVI) 0    AVI v1.0,  0 21935 Motion JPEG Codec(s) are Installed mjpg 1.778 3:26.531  6196 30.000    1.000
  3. 30.000 0.353 1.778 1920 1080 256  1 PCM Audio No Codec Required   16000 .


Message édité par cedico10 le 13-02-2025 à 23:06:46
Reply

Marsh Posté le 13-02-2025 à 23:10:31    

AVI de l'appareil - GSpot :  
https://www.dropbox.com/scl/fi/7aa8 [...] 3qjge&dl=0
 
AVI réencodé - GSpot :  
https://www.dropbox.com/scl/fi/8p66 [...] 5euae&dl=0


Message édité par cedico10 le 13-02-2025 à 23:11:29
Reply

Marsh Posté le 13-02-2025 à 23:14:33    

Normalement les metadata n'ont pas d'incidence sur la lecture mais on peut toujours les changer avec MPEG4Modifier ;
https://www.videohelp.com/software/MPEG4-Modifier

Reply

Marsh Posté le 13-02-2025 à 23:17:39    

et à part les metadata, tu ne vois pas un truc énorme dans GSpot ?
c'est qd même bizarre cette affaire
(j'essaierai demain les metadata, merci pour tes liens de softs)


Message édité par cedico10 le 13-02-2025 à 23:18:21
Reply

Marsh Posté le 13-02-2025 à 23:35:14    

Non, juste le FourCC en majuscules, le reste a l'air idem. :??:  
Et voir si la vidéo et son nom ne sont pas trop longs pour l'APN.

Reply

Marsh Posté le 14-02-2025 à 11:31:24    

J'ai essayé ton programme (MPEG4Modifier), mais les AVI ne sont pas pris en charge. J'obtiens la réponse suivante
"Not a valid MPEG-4 video - startcode not found at beginning of frame). Codec MJPG"
 
il faudrait essayer avec un outil MJPG je suppose ?
 
Pour répondre à ta dernière suggestion : oui, je confirme, à chaque fois que je teste un fichier avec l'APN, je le renomme exactement comme il faut (avec compteur N+1)
 

Reply

Marsh Posté le 14-02-2025 à 13:46:06    

Faut croire que MPEG4Modifier ne gère que les codecs de la famille divx.
 
Mais j'ai trouvé une autre solution pour modifier le FourCC du mjpg, ffmpeg !
 
Cette commande change bien le FourCC ;

Code :
  1. ffmpeg -i "L:\ma vidéo.avi" -c copy -tag:v MJPG "F:\ma vidéo b.avi"


 

Reply

Marsh Posté le 14-02-2025 à 14:44:28    

merci, mais j'ai essayé et c'est pareil. Apparemment, le 4CC n'est pas sensible à la casse, car même AVIDemux me renvoie MJPG pour le fichier provenant de l'APN, alors que le lis "mjpg" dans le fichier Hexa.
 
du coup, la seule différence que je vois c'est la metadata (et j'imagine que c'est traduit par JUNK ?)...

Reply

Marsh Posté le 14-02-2025 à 14:46:16    

je suis même parti d'un autre MP4, afin d'être sûr que ce n'était pas mon MP4 initial qui avait un souci quelconque, mais rien n'y fait...  

Reply

Marsh Posté le 14-02-2025 à 14:56:15    

Alors il faut essayer de modiifier ces metadata, jamais essayé mais ça doit être faisable aussi avec ffmpeg.

Reply

Marsh Posté le 14-02-2025 à 15:00:31    

et si j'arrive à insérer ces metadata mais que le pb a tjrs lieu, est-il envisageable d'imaginer que l'APN inscrit des bits cachés de sécurité pour empêcher que n'importe qui copie sa propre vidéo, ou alors ce que je raconte c'est de la SF ? :lol:

Reply

Marsh Posté le 14-02-2025 à 15:02:55    

Je ne pense pas que ce genre d'appareil soit protégé à ce point, il y a peut-être autre chose qui joue, du genre l'adresse du fichier au moment où l'enregistrement se fait.


Message édité par arnuche le 14-02-2025 à 15:03:24
Reply

Marsh Posté le 14-02-2025 à 15:08:55    

Ce qui est étonnant, c'est que quand je prends un AVI de l'appareil (au hasard), puis que je le duplique et que je le renomme avec le compteur de fin de liste (ex : MOVI0082.avi), eh bien ça marche nickel..
L'APN ne semble tenir compte que de la numérotation du fichier (avec la structure interne de l'AVI)

Reply

Marsh Posté le 14-02-2025 à 15:12:36    

Ah oui, étonnant  :??:  
Reste les metadata. Et si ça ne va pas, je sèche.

Reply

Marsh Posté le 14-02-2025 à 16:26:27    

une autre différence que j'ai trouvée en jouant avec ffmpeg : Hormis le fait que l'AVI généré contient une section metadata\software en plus,
le fichier contient des informations de résolution que l'autre AVI n'a pas : [SAR 1:1 DAR 16:9]
 
AVI de l'APN :

Code :
  1. Input #0, avi, from 'M:\FILMS\Dessin-animés\MOVI0010.avi':
  2.   Duration: 00:00:02.97, start: 0.000000, bitrate: 21914 kb/s
  3.   Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj420p(pc, bt470bg/unknown/unknown), 1920x1080, 21483 kb/s, 30 fps, 30 tbr, 30 tbn
  4.   Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 16000 Hz, mono, s16, 256 kb/s


AVI généré :  

Code :
  1. Input #0, avi, from 'f:\Les petites princesses du monde 1080p.avi':
  2.   Duration: 00:03:26.53, start: 0.000000, bitrate: 22206 kb/s
  3.   Stream #0:0: Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj420p(pc, bt470bg/unknown/unknown), 1920x1080 [SAR 1:1 DAR 16:9], 21939 kb/s, 30 fps, 30 tbr, 30 tbn
  4.   Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 16000 Hz, mono, s16, 256 kb/s
  5.   Metadata:
  6.     software        : Lavf61.9.101

Reply

Marsh Posté le 14-02-2025 à 16:34:48    

Et si tu essayais en supprimant les metadata (avec ffmpeg) ?

Reply

Marsh Posté le 14-02-2025 à 16:47:13    

je n'ai tjrs pas réussi à trouver comment faire...
 
j'ai épluché un peu ceci :
https://ffmpeg.org/ffmpeg-formats.html#Description

Reply

Marsh Posté le 14-02-2025 à 16:48:55    

j'ai essayé avec ceci, masi ça ne fonctionne pas...
-map_metadata -1


Message édité par cedico10 le 14-02-2025 à 16:53:08
Reply

Marsh Posté le 14-02-2025 à 17:08:41    

j'ai essayé ceci ou c'est clairement expliqué :
https://jacobbruck.com/en/articles/ [...] ng-ffmpeg/
 
c'est comme si ffmpeg laissait son empreinte.

Reply

Marsh Posté le 14-02-2025 à 17:15:32    

Tu peux aussi essayer de prendre les metadata d'une vidéo faite avec l'APN et les mettre dans une que tu as encodée, voir ici ;
https://superuser.com/questions/996 [...] to-another
 

Code :
  1. ffmpeg -i "vid orig APN.avi" -i "mon enco.avi" -map 1 -c copy -map_metadata 0 "mon enco b.avi"

Reply

Marsh Posté le 14-02-2025 à 17:18:17    

Tu peux aussi rajouter ceci (qui vient de ton lien) ;

Code :
  1. -movflags +faststart


Mais je ne sais pas si ça sert à l'AVI.


Message édité par arnuche le 14-02-2025 à 17:18:55
Reply

Marsh Posté le 14-02-2025 à 18:18:40    

arnuche a écrit :

Tu peux aussi essayer de prendre les metadata d'une vidéo faite avec l'APN et les mettre dans une que tu as encodée, voir ici


Oui, ça j'avais essayé aussi mais sans succès.
Ok, je vais essayer avec ton nouveau paramètre...

Reply

Marsh Posté le 14-02-2025 à 18:31:41    

C'est à rajouter à la commande d'avant ;

Code :
  1. ffmpeg -i "vid orig APN.avi" -i "mon enco.avi" -map 1 -c copy -map_metadata 0 -movflags +faststart "mon enco b.avi"

Reply

Marsh Posté le 14-02-2025 à 18:31:52    

j'ai essayé mais sans succès (et dans GSpot on voit que les metadata sont tjrs présentes)
 
et pour cette histoire de "[SAR 1:1 DAR 16:9]", tu aurais une idée pourquoi ces codes n'apparaissent dans la vidéo de l'APN ? ou comment les enlever de la vidéo générée ?

Reply

Marsh Posté le 14-02-2025 à 18:43:58    

Enlever juste ça je ne vois pas mais tu peux les effacer tous avec -map_metadata -1 et rajouter ce dont tu as besoin derrière ;
https://wiki.multimedia.cx/index.ph [...] tadata#AVI
Exemple ;

Code :
  1. ffmpeg -i "vid orig APN.avi" -i "mon enco.avi" -map 1 -c copy -map_metadata -1 -metadata title="Movie Title" -movflags +faststart "mon enco b.avi"


Sauf que les metadata dispo pour les avi ne sont pas très explicites.

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed