2012-02-06 2 views
1

J'ai une vidéo originale codée à 20Mbps, 1920x1080, 30fps et que je veux convertir en 640x480 30fps à une gamme de (3 différents) débits binaires pour une utilisation par Adobe Live Streaming. Dois-je utiliser ffmpeg pour redimensionner et encoder aux 3 débits, puis utiliser f4fpackager pour créer les fichiers f4m f4f et f4x ou simplement utiliser ffmpeg pour réduire la résolution et f4fpackager pour encoder les débits pertinents?Codage de vidéos à utiliser avec Adobe Live Streaming

J'ai déjà essayé plusieurs fois, mais une fois encodées, les vidéos semblent jouer à un débit beaucoup plus élevé que celui dans lequel elles ont été encodées. Par exemple, si je configure l'OSMF pour jouer à partir de mon serveur web, je m'attendrais à ce que ma meilleure vidéo encodée soit jouée à 1.500kbps mais c'est bien au-dessus de ça.

Quelqu'un a-t-il déjà eu l'expérience de l'encodage pour une telle utilisation?

J'utilise les options suivantes pour f4fpackager

--bitrate=1428 --segment-duration 30 --fragment-duration 2 

Répondre

1

f4fpackager ne fait aucun encodage, il fait 2 choses: - fragmenter les fichiers mp4 (mp4 -> F4F) - générer un Manifest fichier (f4m) référençant tous les fichiers que vous fragmentés (f4f)

Ainsi, le processus est: - transcoder votre fichier source dans toutes les tailles/bitrate que vous voulez fournir (par exemple: 1920x01080 @ 4Mbps, 1280x720 @ 2Mbps, etc. - utilisez f4fpackager pour convertir le mp4 en f4f (c'est le étape gmentation) - utiliser f4fpackager pour générer le référencement Manifest.f4m les fichiers que vous avez généré à l'étape précédente

l'option --bitrate de f4fpackager doit correspondre à la valeur que vous utilisez avec ffmpeg, ce paramètre est utilisé pour générer le fichier manifeste avec la valeur de débit correcte de chaque qualité