VideoMediaFrame Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa um quadro de um MediaFrameSource que fornece dados em um quadro de vídeo representado por IDirect3DSurface ou SoftwareBitmap.
public ref class VideoMediaFrame sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class VideoMediaFrame final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class VideoMediaFrame
Public NotInheritable Class VideoMediaFrame
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 Anniversary Edition (introduzida na 10.0.14393.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v3.0)
|
Comentários
Obtenha uma instância dessa classe acessando a propriedade VideoMediaFrame de um objeto MediaFrameReference que foi obtido de uma fonte de quadro de mídia.
Importante
Se você acessar a propriedade SoftwareBitmap ou Direct3DSurface fornecidas pela propriedade VideoMediaFrame de uma MediaFrameReference, o sistema criará uma forte referência a esses objetos, o que significa que eles não serão descartados quando você chamar Dispose na MediaFrameReference contida. Você deve chamar explicitamente o método Dispose do SoftwareBitmap ou Direct3DSurface diretamente para os objetos serem descartados imediatamente. Caso contrário, o coletor de lixo acabará liberando a memória para esses objetos, mas você não saberá quando isso vai ocorrer, e se o número de bitmaps ou superfícies alocados exceder o valor máximo permitido pelo sistema, o fluxo de quadros novos será interrompido. Nessa mesma linha de pensamento, se você tiver chamado (GetVideoFrame())[videomediaframe_getvideoframe_824740069.md], o (VideoFrame)[.. /windows.media/videoframe.md] recuperado tem uma referência nos objetos SoftwareBitmap ou Direct3DSurface fornecidos pelo VideoMediaFrame e precisa ser descartado chamando manualmente seu método Dispose para evitar bloquear o fow de quadros. Se você pretende manter um VideoFrame recuperado por meio de (GetVideoFrame())[videomediaframe_getvideoframe_824740069.md] por um longo período de tempo, talvez seja melhor manter uma cópia dele.
Para obter diretrizes sobre como usar o MediaFrameSource para capturar quadros, consulte Processar quadros de mídia com MediaFrameReader.
Propriedades
CameraIntrinsics |
Obtém um objeto que descreve o modelo de distorção da câmera que gerou o VideoMediaFrame. |
DepthMediaFrame |
Obtém um DepthMediaFrame que contém dados de profundidade para o VideoMediaFrame, se o quadro contiver dados de profundidade. |
Direct3DSurface |
Obtém um objeto IDirect3DSurface que contém os dados de imagem do VideoMediaFrame. |
FrameReference |
Obtém o objeto wrapper MediaFrameReference associado ao VideoMediaFrame, que fornece acesso a informações de formato e outras propriedades do quadro de mídia. |
InfraredMediaFrame |
Obtém um InfraredMediaFrame que contém dados de profundidade para o VideoMediaFrame, se o quadro contiver dados infravermelhos. |
SoftwareBitmap |
Obtém um objeto SoftwareBitmap que contém os dados de imagem do VideoMediaFrame. |
VideoFormat |
Obtém um objeto que descreve o formato dos dados de imagem do VideoMediaFrame . |
Métodos
GetVideoFrame() |
Cria uma cópia do VideoMediaFrame como um objeto VideoFrame . |