ARCHITECTURE

xSTUDIO a une programmation modulaire avec une séparation très précise des éléments principaux. Le cadre interne de passage de messages sur lequel sont construits les éléments est exposé aux interfaces de programmation C++ et Python. Cela permet d’offrir les avantages suivants aux concepteurs:

  • Les modules d’extension C++ peuvent être rédigés, permettant ainsi le contrôle total de l’application jusqu’au plus bas niveau.
  • Les liaisons Python et l’interpréteur intégré Python permettent une conception rapide des scripts et des modules d’extension.
  • Les interpréteurs Python exécutés dans un processus séparé peuvent également se connecter à une séance xSTUDIO, en toute transparence, à partir d’un connecteur de réseau. Par exemple, cela offre un contrôle à distance complet avec les avantages de pouvoir séparer les environnements de l’application et de scriptage et les piles de dépendance logicielle.
  • Grâce à une interface de programmation flexible, l’intégration de nouveaux lecteurs d’images, qui prennent en charge n’importe quelle disposition de pixels d’image possible (même pour les données qui ne sont pas des images), est simple.
  • La fenêtre d’affichage est indépendante du reste de l’IUG (« GUI ») et pourrait même être intégrée à d’autres interfaces/applications qui pourraient offrir une surface OpenGL avec laquelle il serait possible de permettre le rendu.
  • Les moteurs de rendu à fenêtre d’affichage peuvent être ajoutés dans le but de visionner des données qui ne sont pas des images (voir ci-dessus).
  • Le système principal de l’application est entièrement indépendant des éléments de l’IUG, permettant ainsi le contrôle à distance et l’opération sans périphérique de contrôle, par exemple.
  • Des connexions pour l’interface de programmation sont fournies afin que les concepteurs puissent intégrer des modules d’extension servant à la gestion des couleurs.
  • Néanmoins, nous fournissons un module d’extension complet, et basé sur OCIO v2, qui saura déjà satisfaire la plupart des exigences.

 

La conception de xSTUDIO a été pensée de manière à aider l’atteinte des objectifs de performance principaux qui suivent:

  • Maximiser la performance de la lecture vidéo en matière de taille de l’image, de profondeur de bits et de fréquence d’images, pour les étapes de lecture/décodage et d’affichage.
  • Maximiser la concurrence et utiliser tous les noyaux disponibles lorsque nécessaire. Par exemple, lorsqu’il faut accélérer la conception de larges listes de lecture et de lignes de temps.

xSTUDIO est conçu à l’aide de technologies qui ont déjà fait leurs preuves au sein de l’industrie des effets visuels:

  • La base de code principale est rédigée en C++ (C++17 standard).
  • La couche de l’interface utilisateur est conçue avec Qt QML v5.15.
  • Les modules d’extension de lecture de médias pour OpenEXR et FFMPEG sont inclus.
  • La fenêtre d’affichage utilise OpenGL 4.3.
  • Les exigences et dépendances de l’environnement de construction sont conformes aux spécifications de VFX Platform 2021.
  • Des instructions de construction exhaustives seront offertes pour CentOS, Red Hat EL8 et Ubuntu 22.04 LTS.
  • Compatibilité complète avec MacOS et Windows prévue pour 2023.

À travers la base du code, le paradigme de conception du « modèle d’acteur » est utilisé aux endroits où les interfaces sont intégrées à travers un mécanisme de passage de messages. Cela a pu être rendu possible à l’aide du projet de code source libre C++ Actor Framework et aide à offrir plusieurs des avantages énumérés ci-dessus. À notre connaissance, il s’agit d’une approche novatrice pour un logiciel de lecture vidéo. Nous espérons que cette approche interpelle les concepteurs qui ont un intérêt à découvrir de nouvelles façons d’offrir des logiciels à haute performance.

Code source libre

DNEG utilise actuellement xSTUDIO en tant que partie importante du flux de travail de plusieurs environnements de production, avec des centaines d’utilisateurs quotidiens au sein de l’entreprise et répartis aux quatre coins du globe.

xSTUDIO est en évolution rapide, avec des mises à jour régulières apportées à la logithèque de codes sources libres. Le code a été partagé à un stade précoce de son développement dans le but de promouvoir la collaboration et la rétroaction de la communauté cinématographique. De nouvelles fonctionnalités sont mises en ligne chaque mois.

L’accès au code de base est offert sur la logithèque GitHub. Un fichier Lisez-moi s’y trouve et aborde les détails concernant l’installation.

Contactez-nous

Londres

Vancouver

Mumbai

Los Angeles

Chennai

Montréal

Mohali

Bangalore

Chennai

Toronto

Sydney