MediaCapture.SetEncodingPropertiesAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Définit de manière asynchrone les propriétés d’encodage multimédia.
public:
virtual IAsyncAction ^ SetEncodingPropertiesAsync(MediaStreamType mediaStreamType, IMediaEncodingProperties ^ mediaEncodingProperties, MediaPropertySet ^ encoderProperties) = SetEncodingPropertiesAsync;
IAsyncAction SetEncodingPropertiesAsync(MediaStreamType const& mediaStreamType, IMediaEncodingProperties const& mediaEncodingProperties, MediaPropertySet const& encoderProperties);
public IAsyncAction SetEncodingPropertiesAsync(MediaStreamType mediaStreamType, IMediaEncodingProperties mediaEncodingProperties, MediaPropertySet encoderProperties);
function setEncodingPropertiesAsync(mediaStreamType, mediaEncodingProperties, encoderProperties)
Public Function SetEncodingPropertiesAsync (mediaStreamType As MediaStreamType, mediaEncodingProperties As IMediaEncodingProperties, encoderProperties As MediaPropertySet) As IAsyncAction
Paramètres
- mediaStreamType
- MediaStreamType
Type de données multimédias que le flux représente, comme la vidéo ou l’audio.
- mediaEncodingProperties
- IMediaEncodingProperties
Propriétés de l’encodage multimédia.
- encoderProperties
- MediaPropertySet
Propriétés de l’encodeur.
Retours
Objet utilisé pour contrôler l’opération asynchrone.
Configuration requise pour Windows
Fonctionnalités de l’application |
backgroundMediaRecording
|
Remarques
Cette méthode définit les propriétés d’encodage de l’encodeur qui traite les données avant qu’elles ne soient transmises à un élément CaptureElement pour qu’elles soient affichées, écrites dans un IRandomAccessStream ou StorageFile, ou remises à un récepteur multimédia personnalisé. Cette méthode ne modifie pas la configuration de la source des données, c’est-à-dire l’appareil photo. Il est possible de définir les propriétés d’encodage sur une résolution qui n’est pas prise en charge en mode natif par l’appareil photo. Dans ce cas, le pipeline MediaCapture utilise un encodeur pour effectuer la conversion au format demandé. Notez que cette conversion consomme des ressources système et peut entraîner des performances médiocres, voire des erreurs, en particulier sur les appareils qui ont une accélération graphique limitée ou inexistante. Pour les scénarios classiques, il est recommandé de choisir une résolution prise en charge par la caméra la plus proche de la résolution souhaitée. Vous pouvez obtenir la liste des résolutions prises en charge par un appareil de capture en appelant VideoDeviceController.GetAvailableMediaStreamProperties. Pour plus d’informations, consultez Définir le format, la résolution et la fréquence d’images pour MediaCapture et l’exemple de résolution de l’appareil photo.
Notes
SetEncodingPropertiesAsync réussit uniquement lorsque le flux d’aperçu par défaut est dans un état de diffusion en continu, c’est-à-dire après que StartPreviewAsync a été appelé avec succès. Si SetEncodingPropertiesAsync est appelé alors que l’objet MediaCapture diffuse de la vidéo à partir d’un MediaFrameSource via mediaPlayerElement ou MediaFrameReader, cet appel échoue.
Pour faire pivoter le flux d’enregistrement ou d’aperçu, utilisez le GUID défini par MF_MT_VIDEO_ROTATION pour ajouter des métadonnées au flux. Notez que cette rotation est effectuée par le consommateur du flux, tel que l’application CaptureElement ou un lecteur vidéo, tandis que les pixels réels du flux conservent leur orientation d’origine. Pour obtenir des conseils pratiques sur la gestion de l’orientation lors de l’utilisation de l’appareil photo, consultez Gérer l’orientation de l’appareil avec MediaCapture.
Pour modifier les propriétés de l’appareil de capture, utilisez VideoDeviceController.SetMediaStreamPropertiesAsync.