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 |