AudioBuffers.SetData Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
SetData(Int32, IntPtr) |
Establece el búfer de datos para uno de los búferes de audio, sin actualizar el tamaño del búfer. |
SetData(Int32, IntPtr, Int32) |
Establece el búfer de datos para uno de los búferes de audio. |
SetData(Int32, IntPtr)
Establece el búfer de datos para uno de los búferes de audio, sin actualizar el tamaño del búfer.
public void SetData (int index, IntPtr data);
member this.SetData : int * nativeint -> unit
Parámetros
- index
- Int32
Índice del búfer al que se va a acceder.
- data
-
IntPtr
nativeint
Puntero a los datos que se van a establecer para el búfer especificado.
Comentarios
Puede usar este método para intercambiar uno de los búferes, sin actualizar el tamaño del búfer.
//
// 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]);
}
Se aplica a
SetData(Int32, IntPtr, Int32)
Establece el búfer de datos para uno de los búferes de audio.
public void SetData (int index, IntPtr data, int dataByteSize);
member this.SetData : int * nativeint * int -> unit
Parámetros
- index
- Int32
Índice del búfer al que se va a acceder.
- data
-
IntPtr
nativeint
Puntero a los datos que se van a establecer para el búfer especificado.
- dataByteSize
- Int32
Tamaño del búfer.
Comentarios
//
// 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 ();
}