Maison  >  Article  >  développement back-end  >  Utilisez php pour analyser le format des fichiers vidéo mp4

Utilisez php pour analyser le format des fichiers vidéo mp4

不言
不言original
2018-04-20 11:24:072649parcourir

Cet article présente principalement le format d'analyse des fichiers vidéo mp4 à l'aide de PHP. Il a maintenant une certaine valeur de référence. Maintenant, je le partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Dans. lors de mon travail récent, lorsque je faisais du développement tiers de mini-programmes, j'ai rencontré un problème avec le composant vidéo du mini-programme. Le retour de développement était que, parce que le composant vidéo est de trop haut niveau, il flotte toujours au premier plan. et bloque les éléments derrière lors du défilement

Le développeur a donc déclaré qu'il devait modifier le plan et mettre une capture d'écran de la vidéo sur la page de liste d'origine. , afin que les utilisateurs puissent cliquer sur la capture d'écran pour accéder à une nouvelle page et regarder la vidéo, cette page ne comporte qu'un seul composant vidéo, elle ne posera donc pas d'autres problèmes car elle est de trop haut niveau.

Cette nouvelle solution est réalisable, mais une fois le développement terminé, j'ai constaté que la vidéo tournée sur Apple avait été pivotée, et les captures d'écran avaient également été pivotées (en utilisant Il s'agit de la fonction de capture d'écran vidéo OSS d'Alibaba Cloud). Comme le montre l'image ci-dessous


Cela apporte Un nouveau problème. Le développement frontal doit savoir de combien de degrés la vidéo a été tournée, puis faire pivoter l'image du même degré en sens inverse, afin que l'effet vu par l'utilisateur ne soit pas une rotation.

Cela nécessite que l'interface backend analyse la rotation de la vidéo et la stocke dans la base de données lorsqu'elle reçoit la vidéo téléchargée.


Le problème actuel est que ce système métier historique a été développé avec PHP5.5, et que le leader technique de l'époque l'a compilé et installé à partir du code source, mais le plug-in php-ffmpeg l'est aussi ancien et n'a pas été maintenu. Il y a trop de problèmes de compilation sur php5.5.

Il est donc nécessaire d'utiliser php pour analyser le format de fichier vidéo mp4 capturé par les téléphones mobiles Apple.



Le principe de mise en œuvre est d'analyser la matrice de transformation vidéo dans la tête tkhd de la boîte de trak vidéo mp4, et de déterminer dans quelle mesure la rotation a été effectuée à travers la vidéo transformation degré de la matrice de transformation, comme indiqué ci-dessous.



Bases du format de fichier mp4 L'unité est un atome (ou une boîte). La structure du format de fichier mp4 n'est pas publiée ici. Vous pouvez la rechercher en ligne.

L'effet après la mise en œuvre est le suivant :


Résultats des tests, comparer avec l'exemple de rotation de téléphone portable dans l'image ci-dessus :


https://gitee.com/clwu/IphoneMp4Probe

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn