Une image 4K contient plus de 8 millions de pixels. Envoyer 30 de ces images chaque seconde sans compression crée un très grand flux de données.Les modules de caméra USB utilisent donc souvent MJPEG parce que la compression JPEG réduit la quantité de données qui doivent voyager à travers la liaison USB.
L'USB2.0 a beaucoup moins de bande passante pratique que l'USB3.x. Même sur l'USB3.x, les modes à débit binaire élevé non compressés peuvent rivaliser avec d'autres appareils et les limites du contrôleur hôte.MJPEG permet à la même interface physique d'avoir une résolution ou un taux d'images plus élevés en réduisant le nombre d'octets par image.
Contrairement aux codecs vidéo long-GOP tels que H.264/H.265, MJPEG comprime les images individuelles sous forme d'images JPEG. Cela rend l'accès au cadre aléatoire relativement simple et évite les dépendances de prédiction inter-cadres.que la simplicité est utile même si les artefacts de compression restent.
La compression ne fait pas disparaître les données; elle déplace le travail ailleurs.Un processeur embarqué faible peut lutter avec plusieurs flux 4K MJPEG même si le bus USB peut les transporter.
Pour les systèmes à caméras multiples, mesurer à la fois l'utilisation de l'USB et la charge de décodage du processeur/GPU.
L'hôte doit toujours négocier le mode, recevoir le flux, décoder les images et les déplacer dans la mémoire.La qualité du câble et le partage du contrôleur USB peuvent également affecter les performances soutenues.
Une spécification doit être vérifiée sur l'hôte final plutôt que d'être supposée provenir d'un test réussi sur un PC de bureau.
Si un algorithme est sensible aux artefacts JPEG, nécessite des valeurs de pixels cohérentes ou évite la latence du décodeur, YUY2 ou un autre chemin non compressé / brut peut être préféré.une résolution inférieure, un taux d'images plus faible ou une interface différente peuvent être nécessaires.
Comparer la table des modes: résolution, fréquence d'images et format, puis vérifier la version USB, la charge de décodage de l'hôte, la latence et si l'application traite chaque image.Un module publicitaire 4K30 peut se comporter très différemment selon que ce mode est MJPEG, H.264 ou un autre format.
Une seule caméra 4K30 MJPEG peut diffuser de manière fiable sur un hôte, mais quatre caméras identiques peuvent submerger la topologie USB ou les ressources de décodeur.Le système combiné doit encore recevoir et décoder quatre flux.La conception multi-caméras nécessite donc des mesures agrégées, et non une hypothèse par caméra.
L'instruction complète doit inclure le format et l'interface: par exemple, 3840 × 2160 à 30 fps en MJPEG sur une liaison USB spécifique.Cette habitude de lecture évite de nombreuses erreurs de sélection..
C'est un format de compression à perte, donc des artefacts sont possibles.
H.265 peut compresser plus efficacement, mais ajoute une complexité de codec et souvent plus de latence.
Il peut être possible pour certains formats et implémentations, mais la vitesse de transmission exacte, les frais généraux du protocole et le pipeline hôte doivent être vérifiés.