Pourquoi mon mp4 (h.264) a-t-il toujours besoin de mp4box?

0

Chaque fois que je convertis une vidéo au format MP4 avec le codec H.264, elle ne se lit pas immédiatement sur Windows ou iPad. Il joue bien lorsque je convertis la vidéo avec mp4box . J'utilise la commande suivante pour convertir.

mp4box -hint video.mp4

J'aime savoir ce que j'ajoute à la vidéo avec mp4box ..

Comment ça marche?

utilisateur45326
la source

Réponses:

3

Notez que mp4boxcela ne code aucune vidéo, il est uniquement utilisé pour reformater le contenu existant. Donc, je suppose que vous avez déjà une vidéo encodée et que vous utilisez ensuite mp4boxpour ajouter cette hintoption. Bien que ce flux de travail n’ait pas vraiment de sens pour moi au début, laissez-moi vous expliquer ce que cela hintsignifie:

L' -hintoption est probablement appelée afin d'introduire une piste dite indice dans le fichier vidéo.

Qu'est-ce qu'une piste d'indices? Eh bien, votre fichier vidéo lui-même est une série de bits, rien de plus, et dans certaines applications, cela est très inefficace. Prenons l'exemple d'un serveur qui diffuse la vidéo. Il doit encapsuler la vidéo dans des paquets envoyés sur le réseau. Mais comment le serveur sait-il quelles parties de la vidéo mettre dans quel paquet? Si le serveur ne connaît pas la structure du train de bits, il ne pourra pas le mettre en paquets correctement.

C'est ici que la piste d'aide entre en jeu. Il est généré pour permettre à un serveur de diffusion en continu de mettre correctement en paquets la vidéo en paquets RTP. En gros, une piste de ce type indique "Mettez la partie XY de la vidéo dans le paquet AB ".


Cela étant dit, un vrai h.264 n'a pas besoin de piste d'indication pour la diffusion, car h.264 possède une couche d'abstraction réseau qui fournit à un serveur de diffusion toutes les informations nécessaires à la mise en paquets de la vidéo. Les conseils ne sont nécessaires que pour les vidéos MPEG-4 Visual (par exemple, encodées avec DivX ou XviD).

Vérifiez si votre encodeur génère déjà un mp4fichier valide - lequel utilisez-vous réellement?

slhck
la source
// Merci pour vos informations très détaillées. J'utilise le frein à main.
user45326
@ user12077 C'est intéressant. Donc, même si vous utilisez les paramètres appropriés pour iPad, le fichier généré par Handbrake ne s'ouvre pas?
Slhck
@ user12077: Si vous diffusez cette vidéo en streaming, ces informations suggérées sont importantes, mais je ne pense pas que cela devrait l'être si vous venez d'y accéder en tant que fichier local. Comment accédez-vous exactement au fichier pour la lecture? Si vous le diffusez en streaming, la lecture est-elle correcte si vous le lisez sur la machine locale?
Spectre
@Spectre // désolé pour le délai de réponse; Je suis en train de diffuser ce fichier sur le net.
user45326
1

Quel programme utilisez-vous pour créer / encoder la vidéo h264 à la place? Il se peut que l'encodeur produise un fichier h264 brut. Ce flux brut doit généralement être placé dans un format de conteneur, tel que mkv ou mp4, avec le flux audio, avant de pouvoir être lu.

Vérifiez votre encodeur h264 pour voir s’il met automatiquement la vidéo encodée dans un conteneur MP4, ou s’il possède un profil / des paramètres spécifiques pour votre appareil. Si tel est le cas, mais que la lecture n’est toujours pas effectuée, il pourrait s’agir d’un bogue, auquel cas vous devrez vous en tenir à l’utilisation manuelle de mp4box.

Spectre
la source
// J'utilise HandBrake.
user45326
Hmm, je viens de me rendre compte que j'ai peut-être mal interprété votre question, vous dites qu'elle ne "joue pas immédiatement", est-ce que cela signifie qu'elle ne joue pas du tout ou prend juste plus de temps que d'habitude pour commencer à jouer?
Spectre
// il faut plus de temps que d'habitude pour commencer à jouer.
user45326