J'ai deux fichiers vidéo (.mp4). Un téléchargement vers WhatsApp et un autre non.
En utilisant ffmpeg, j'ai vérifié leurs propriétés:
a) Propriétés de la vidéo qui télécharge:
Duration: 00:00:56.45, start: 0.148000, bitrate: 1404 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1080x1080, 1359 kb/s, 23.98 fps, 23.98 tbr, 90k tbn, 47.95 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(eng): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 47 kb/s (default)
Metadata:
handler_name : SoundHandler
At least one output file must be specified
b) vidéo qui ne se télécharge pas sur WhatsApp (car son format n'est pas pris en charge)
Duration: 00:00:56.10, start: 0.000000, bitrate: 543 kb/s
Stream #0:0: Video: h264 (High) (H264 / 0x34363248), yuv420p, 1080x1080 [SAR 1:1 DAR 1:1], 464 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 47.95 tbc
Stream #0:1: Audio: aac (LC) ([255][0][0][0] / 0x00FF), 48000 Hz, stereo, fltp, 56 kb/s
La différence de vidéo que j'ai remarquée:
(avc1 / 0x31637661)
contre (H264 / 0x34363248)
1359 kb/s
contre 464 kb/s
90k tbn
contre 23.98 tbn
Quelle peut être la raison?
De plus, la deuxième vidéo n'est pas lue sur Android.
Le lien pour la vidéo est https://drive.google.com/open?id=0B4UM6vTHw4pyMExQQ1lxZGp0N2c
Il existe quelques options pour une meilleure compatibilité:
ffmpeg -i broken.mp4 -c:v libx264 -profile:v baseline -level 3.0 -pix_fmt yuv420p working.mp4
Avec -profile:v baseline -level 3.0
vous rendez le fichier plus compatible avec la plupart des joueurs plus anciens, y compris WhatsApp;). Cependant, cela désactive certaines fonctionnalités avancées.
-pix_fmt yuv420p
est nécessaire pour la compilation sur la ligne de base (espace colorimétrique plan YUV avec sous-échantillonnage de chrominance 4: 2: 0).
En outre, vous pouvez régler d'autres options comme le débit binaire, la fréquence d'images, l'audio, etc.
Source: documents H.264
ffmpeg -i brokenvideo.mp4 -c:v libx264 -c:a aac fixedvideo.mp4
A également dû appliquer ce correctif: FFMPEG (libx264) "hauteur non divisible par 2"