ID3D12VideoEncodeCommandList2::EncodeFrame-Methode (d3d12video.h)

Codiert einen Bitstream.

Syntax

void EncodeFrame(
  ID3D12VideoEncoder                                     *pEncoder,
  ID3D12VideoEncoderHeap                                 *pHeap,
  const D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS  *pInputArguments,
  const D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS *pOutputArguments
);

Parameter

pEncoder

Ein ID3D12VideoEncoder , der den Videoencoder darstellt, der für den Codierungsvorgang verwendet werden soll.

pHeap

Ein ID3D12VideoEncoderHeap , der den Videoencoderheap darstellt, der für diesen Vorgang verwendet werden soll.

Die Zuordnung des Encoderheapobjekts darf nicht freigegeben werden, bevor gpubasierte Befehle, die auf die Ausführung verweisen, abgeschlossen werden.

Beachten Sie, dass die neu konfigurierten Eingabeargumente in aufgezeichneten Befehlen innerhalb zulässiger Grenzen (z. B. unterschiedliche Zielauflösungen in zulässigen Auflösungslisten) parallel mit demselben Encoderheap instance vorhanden sein können, sofern die Zielauflösung vom angegebenen Encoderheap unterstützt wird.

In der aktuellen Version unterstützen wir jeweils nur einen Ausführungsablauf mit denselben Encoder- oder Encoderheapinstanzen. Alle Befehle für diese Objekte müssen in serialisierter Reihenfolge aufgezeichnet und übermittelt werden, d. h. von einem einzelnen CPU-Thread oder aus mehreren Threads so synchronisiert werden, dass die Befehle in einer serialisierten Reihenfolge aufgezeichnet werden.

Der Videoencoder- und Videoencoderheap kann verwendet werden, um Befehle aus mehreren Befehlslisten aufzuzeichnen, kann jedoch jeweils nur einer Befehlsliste zugeordnet sein. Die Anwendung ist für die gleichzeitige Synchronisierung einzelner Zugriffe auf den Videoencoder und den Videoencoderheap verantwortlich. Die Anwendung muss auch Videocodierungsbefehle für die Videoencoder- und Videoencoderheaps in der Reihenfolge aufzeichnen, in der sie auf der GPU ausgeführt werden.

pInputArguments

Eine D3D12_VIDEO_ENCODER_ENCODEFRAME_INPUT_ARGUMENTS, die Eingabeargumente für den Codierungsvorgang darstellt.

pOutputArguments

Eine D3D12_VIDEO_ENCODER_ENCODEFRAME_OUTPUT_ARGUMENTS, die Ausgabeargumente für den Codierungsvorgang darstellt.

Rückgabewert

Keine

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Build 22000
Unterstützte Mindestversion (Server) Windows Build 22000
Kopfzeile d3d12video.h