#1 Le 13/06/2023, à 20:37
- ewok2
conversion ffmpeg non lisible par plusieurs devices
Bonjour
J'ai un serveur sous ubuntu qui peut héberger des vidéo (soit sous une instance nextcloud soit sous un serveur web "photo").
jusqu'a recement je prenais des video avec mon telephone (Iphone 13 pro) et je convertissait les fichiers *.MOV vers des *.MP4 pour qu'ils soient visible sur mes sites.
=> avec la commande (lancé depuis le serveur ubuntu) :
ffmpeg -i "$i" -bsf:v h264_mp4toannexb -sn -map 0:0 -map 0:1 -vcodec libx264 "${i%.mov}.MP4"
Mais je suis passé sur un Iphone 14 pro et la conversion ne marche plus bien....
=> La video n'est plus visible sur mes sites nextcloud / photo depuis des PC sous Windows / Iphoens divers
Elle reste lisible sur un mac avec OS X ....
Si je prend le même fichier *.MOV que je le converti avec 'iMovie" depuis un Mac, le fichier *.MP4 sera lui lisible par tout le monde....
Si je fais un ffmpeg -i sur le fichier qui marche et celui qui marche pas, ci dessous le jeux des differences :
Celui qui marche pas :
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.76.100
Stream #0:0(und): Video: h264 (High 10) (avc1 / 0x31637661), yuv420p10le(tv, bt2020nc/bt2020/arib-std-b67), 1080x1920, 3082 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Celui qui marche :
Metadata:
major_brand : mp42
minor_version : 1
compatible_brands: isommp41mp42
Stream #0:1(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709, progressive), 608x1080, 8136 kb/s, SAR 1:1 DAR 76:135, 30 fps, 30 tbr, 30k tbn, 60k tbc (default)
Une idee pour adapter la commande ffmpeg sous ubuntu pour que la sortie soit lisible par tous ?
Merci
Hors ligne
#2 Le 13/06/2023, à 21:51
- Vobul
Re : conversion ffmpeg non lisible par plusieurs devices
Bonjour,
Il semble que le problème réside dans les propriétés de la vidéo convertie qui ne sont pas compatibles avec tous les appareils. La différence notable entre les deux fichiers est la suivante :
Le fichier qui ne fonctionne pas utilise le profil "High 10" pour le codec h264, avec un espace colorimétrique "bt2020nc/bt2020/arib-std-b67". La résolution est de 1080x1920 et le débit binaire est de 3082 kb/s.
Le fichier qui fonctionne utilise le profil "High" pour le codec h264, avec un espace colorimétrique "bt709". La résolution est de 608x1080 et le débit binaire est de 8136 kb/s.
Pour rendre le fichier de sortie compatible avec tous les appareils, vous pouvez essayer de spécifier explicitement le profil, l'espace colorimétrique et la résolution lors de la conversion. Voici une suggestion de commande ffmpeg adaptée :
ffmpeg -i "$i" -c:v libx264 -profile:v high -pix_fmt yuv420p -vf "scale=608:1080" "${i%.mov}.mp4"
Cette commande utilise les options suivantes :
-c:v libx264 : spécifie l'utilisation du codec libx264 pour la vidéo.
-profile:v high : définit le profil de la vidéo comme "High".
-pix_fmt yuv420p : spécifie l'espace colorimétrique "bt709" (yuv420p) pour la vidéo.
-vf "scale=608:1080" : redimensionne la résolution de la vidéo à 608x1080. Vous pouvez ajuster ces valeurs en fonction de vos besoins.
Avec cette commande, la vidéo convertie devrait être compatible avec une plus grande variété d'appareils et de systèmes d'exploitation. J'espère que cela résoudra votre problème. N'hésitez pas à me demander si vous avez besoin de plus d'assistance !
Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM
Hors ligne
#3 Le 17/06/2023, à 18:40
- ewok2
Re : conversion ffmpeg non lisible par plusieurs devices
Super, merci!!!!
(désolé pour le temps de réaction, j'etait en deplacement...)
Je me suis juste permis de retirer le :
-vf "scale=608:1080"
car ca me distordait des video horizontale en video vertical :-)
Merci
Hors ligne