Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utiliser la bibliothèque C Producer
Vous pouvez utiliser la bibliothèque C Producer fournie par Amazon Kinesis Video Streams pour écrire le code d'application permettant d'envoyer des données multimédia d'un appareil vers un flux vidéo Kinesis.
Modèle d'objet
La bibliothèque de production Kinesis Video Streams C est basée sur un composant commun appelé Platform Independent Codebase PIC (), disponible GitHub sur https://github.com/awslabs/ amazon-kinesis-video-streams -pic/.
-
Fournisseurs d'informations sur les appareils — Expose la
DeviceInfo
structure qui peut être directement fournie au PICAPI. Vous pouvez configurer un ensemble de fournisseurs, y compris un fournisseur optimisé pour les scénarios d'application qui peut optimiser le magasin de contenu en fonction du nombre et des types de flux gérés par votre application et de la quantité de mémoire tampon requise configurée en fonction de la quantité de flux disponible. RAM -
Fournisseur d'informations sur les flux — Expose la
StreamInfo
structure qui peut être directement fournie au PICAPI. Il existe un ensemble de fournisseurs spécifiques aux types d'applications et aux types courants de scénarios de streaming. Il s'agit notamment de fournisseurs tels que la vidéo, l'audio et le multipiste audio et vidéo. Chacun de ces scénarios comporte des paramètres par défaut que vous pouvez personnaliser en fonction des exigences de votre application. -
Fournisseur de rappel — Expose la
ClientCallbacks
structure qui peut être directement fournie au. PIC API Cela inclut un ensemble de fournisseurs de rappels pour la mise en réseau (rappels CURL basés sur les API rappels), les autorisations (AWS informations d'identificationAPI) et les nouvelles tentatives de streaming en cas d'erreur. Le fournisseur de rappel utilise API un certain nombre d'arguments pour configurer, tels que les informations d'autorisation Région AWS et. Cela se fait en utilisant des certificats IoT ou en utilisant AWS AccessKeyId SecretKey, ou SessionToken. Vous pouvez améliorer le fournisseur de rappel avec des rappels personnalisés si votre application a besoin du traitement ultérieur d’un rappel particulier pour répondre à une logique spécifique à une application. -
FrameOrderCoordinator— Permet de gérer la synchronisation audio et vidéo pour les scénarios multipistes. Il possède un comportement par défaut, que vous pouvez personnaliser pour gérer la logique spécifique de votre application. Il rationalise également l'empaquetage des métadonnées du PIC cadre dans la structure du cadre avant de le soumettre à la couche inférieure PICAPI. Pour les scénarios non multipistes, ce composant est un relais vers. PIC putFrame API
La bibliothèque C fournit les objets suivants pour gérer l'envoi de données vers un flux vidéo Kinesis :
-
KinesisVideoClient— Contient des informations sur votre appareil et gère des rappels pour signaler les événements liés à Kinesis Video Streams.
-
KinesisVideoStream— Représente des informations sur les paramètres du flux vidéo, tels que le nom, la durée de conservation des données et le type de contenu multimédia.
Insérez du contenu multimédia dans le stream
Vous pouvez utiliser les méthodes fournies par la bibliothèque C (par exemple,PutKinesisVideoFrame
) pour insérer des données dans l'KinesisVideoStream
objet. La bibliothèque gère ensuite l'état interne des données, ce qui peut inclure les tâches suivantes :
-
Réalisation de l'authentification.
-
Supervision de la latence du réseau. Si la latence est trop élevée, la bibliothèque peut choisir d'abandonner des images.
-
Suivi de l'état du streaming en cours.
Procédure : Utiliser le producteur C SDK
Cette procédure explique comment utiliser le client Kinesis Video Streams et les sources multimédia dans une application C pour envoyer des images vidéo codées en H.264 vers votre flux vidéo Kinesis.
La procédure comprend les étapes suivantes :