ACMSTREAMHEADER-Struktur (msacm.h)

Die ACMSTREAMHEADER-Struktur definiert den Header, mit dem eine ACM-Konvertierungsquelle und ein Zielpufferpaar für einen Konvertierungsdatenstrom identifiziert werden.

Syntax

typedef struct tACMSTREAMHEADER {
  DWORD     cbStruct;
  DWORD     fdwStatus;
  DWORD_PTR dwUser;
  LPBYTE    pbSrc;
  DWORD     cbSrcLength;
  DWORD     cbSrcLengthUsed;
  DWORD_PTR dwSrcUser;
  LPBYTE    pbDst;
  DWORD     cbDstLength;
  DWORD     cbDstLengthUsed;
  DWORD_PTR dwDstUser;
  DWORD     dwReservedDriver[_DRVRESERVED];
} ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;

Members

cbStruct

Größe der ACMSTREAMHEADER-Struktur in Byte. Dieser Member muss initialisiert werden, bevor die Anwendung ACM-Streamfunktionen mit dieser Struktur aufruft. Die in diesem Member angegebene Größe muss groß genug sein, um die ACMSTREAMHEADER-Basisstruktur zu enthalten.

fdwStatus

Flags, die Informationen zu den Konvertierungspuffern enthalten. Dieser Member muss auf null initialisiert werden, bevor die Anwendung die acmStreamPrepareHeader-Funktion aufruft , und sollte nicht von der Anwendung geändert werden, während der Streamheader vorbereitet bleibt.

Name BESCHREIBUNG
ACMSTREAMHEADER_STATUSF_DONE
Legen Sie vom ACM oder Treiber fest, um anzugeben, dass die Konvertierung abgeschlossen ist und die Puffer an die Anwendung zurückgegeben werden.
ACMSTREAMHEADER_STATUSF_INQUEUE
Wird vom ACM oder Treiber festgelegt, um anzugeben, dass die Puffer für die Konvertierung in die Warteschlange eingereiht werden.
ACMSTREAMHEADER_STATUSF_PREPARED
Legen Sie vom ACM fest, um anzugeben, dass die Puffer mithilfe der Funktion acmStreamPrepareHeader vorbereitet wurden.

dwUser

Benutzerdaten. Dabei kann es sich um beliebige instance daten, die von der Anwendung angegeben werden.

pbSrc

Zeiger auf den Quellpuffer. Dieser Zeiger muss immer auf denselben Speicherort verweisen, während der Streamheader vorbereitet bleibt. Wenn eine Anwendung den Quellspeicherort ändern muss, muss sie die Vorbereitung des Headers aufheben und ihn mit dem alternativen Speicherort erneut erstellen.

cbSrcLength

Länge des Quellpuffers in Bytes, auf den pbSrc verweist. Wenn der Header vorbereitet ist, muss dieser Member die maximale Größe angeben, die im Quellpuffer verwendet wird. Konvertierungen können für Quelllängen durchgeführt werden, die kleiner oder gleich der ursprünglichen vorbereiteten Größe sind. Dieser Member muss jedoch auf die ursprüngliche Größe zurückgesetzt werden, wenn eine Anwendung den Header nicht vorbereitet.

cbSrcLengthUsed

Datenmenge in Bytes, die für die Konvertierung verwendet wird. Dieser Member ist erst gültig, wenn die Konvertierung abgeschlossen ist. Dieser Wert kann kleiner oder gleich cbSrcLength sein. Eine Anwendung muss den cbSrcLengthUsed-Member verwenden, wenn sie zum nächsten Teil der Quelldaten für den Konvertierungsdatenstrom wechselt.

dwSrcUser

Benutzerdaten. Dabei kann es sich um beliebige instance daten, die von der Anwendung angegeben werden.

pbDst

Zeiger auf den Zielpuffer. Dieser Zeiger muss immer auf denselben Speicherort verweisen, während der Streamheader vorbereitet bleibt. Wenn eine Anwendung den Zielspeicherort ändern muss, muss sie die Vorbereitung des Headers aufheben und ihn mit dem alternativen Speicherort erneut erstellen.

cbDstLength

Länge des Zielpuffers in Byte, auf den pbDst verweist. Wenn der Header vorbereitet ist, muss dieser Member die maximale Größe angeben, die im Zielpuffer verwendet wird.

cbDstLengthUsed

Datenmenge in Bytes, die von einer Konvertierung zurückgegeben wird. Dieser Member ist erst gültig, wenn die Konvertierung abgeschlossen ist. Dieser Wert kann kleiner oder gleich cbDstLength sein. Eine Anwendung muss das cbDstLengthUsed-Element verwenden, wenn sie zum nächsten Zielspeicherort für den Konvertierungsdatenstrom wechselt.

dwDstUser

Benutzerdaten. Dabei kann es sich um beliebige instance daten, die von der Anwendung angegeben werden.

dwReservedDriver[_DRVRESERVED]

Reserviert; nicht verwenden. Dieser Member erfordert keine Initialisierung durch die Anwendung und sollte nie geändert werden, während der Header vorbereitet bleibt.

Hinweise

Bevor eine ACMSTREAMHEADER-Struktur für eine Konvertierung verwendet werden kann, muss sie mithilfe der Funktion acmStreamPrepareHeader vorbereitet werden. Wenn eine Anwendung mit einer ACMSTREAMHEADER-Struktur fertig ist, muss sie die Funktion acmStreamUnprepareHeader aufrufen, bevor die Quell- und Zielpuffer freigegeben werden.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile msacm.h

Weitere Informationen

Audiokomprimierungs-Manager

Audiokomprimierungsstrukturen

acmStreamPrepareHeader

acmStreamUnprepareHeader