AudioBuffers.SetData Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
SetData(Int32, IntPtr) |
Legt den Datenpuffer für einen der Audiopuffer fest, ohne die Puffergröße zu aktualisieren. |
SetData(Int32, IntPtr, Int32) |
Legt den Datenpuffer für einen der Audiopuffer fest. |
SetData(Int32, IntPtr)
Legt den Datenpuffer für einen der Audiopuffer fest, ohne die Puffergröße zu aktualisieren.
public void SetData (int index, IntPtr data);
member this.SetData : int * nativeint -> unit
Parameter
- index
- Int32
Index des Puffers, auf den zugegriffen werden soll.
- data
-
IntPtr
nativeint
Zeiger auf die Daten, die für den angegebenen Puffer festgelegt werden sollen.
Hinweise
Mit dieser Methode können Sie einen der Puffer austauschen, ohne die Größe des Puffers zu aktualisieren.
//
// Creating an AudioBuffers structure
//
AudioBuffers SetupBuffers (int n = 2, int size = 4096)
{
var buffers = new AudioBuffers (n);
for (int i = 0; i < n; i++)
buffers.SetData (i, MyBuffers [0][i], size);
return buffers;
}
//
// Swap the buffers
//
void SwapBuffers (AudioBuffers buffers, int bufferGroup)
{
for (int i = 0; i < buffers.Count; i++)
buffers.SetData (i, MyBuffers [bufferGroup][i]);
}
Gilt für:
SetData(Int32, IntPtr, Int32)
Legt den Datenpuffer für einen der Audiopuffer fest.
public void SetData (int index, IntPtr data, int dataByteSize);
member this.SetData : int * nativeint * int -> unit
Parameter
- index
- Int32
Index des Puffers, auf den zugegriffen werden soll.
- data
-
IntPtr
nativeint
Zeiger auf die Daten, die für den angegebenen Puffer festgelegt werden sollen.
- dataByteSize
- Int32
Größe des Puffers.
Hinweise
//
// Creating an AudioBuffers structure
//
AudioBuffers SetupBuffers (int n = 2, int size = 4096)
{
var buffers = new AudioBuffers (n);
for (int i = 0; i < n; i++){
var buffer = Marshal.AllocHGlobal (size);
buffers.SetData (i, buffer, size);
}
return buffers;
}
void ReleaseBuffers (AudioBuffers buffers)
{
for (int i = 0; i < buffers.Count; i++){
var buf = buffers [i];
Marshal.ReleaseHGlobal (buf.Data);
}
buffers.Dispose ();
}