AudioBuffers.SetData 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
오버로드
SetData(Int32, IntPtr) |
버퍼 크기를 업데이트하지 않고 오디오 버퍼 중 하나에 대한 데이터 버퍼를 설정합니다. |
SetData(Int32, IntPtr, Int32) |
오디오 버퍼 중 하나에 대한 데이터 버퍼를 설정합니다. |
SetData(Int32, IntPtr)
버퍼 크기를 업데이트하지 않고 오디오 버퍼 중 하나에 대한 데이터 버퍼를 설정합니다.
public void SetData (int index, IntPtr data);
member this.SetData : int * nativeint -> unit
매개 변수
- index
- Int32
액세스할 버퍼의 인덱스입니다.
- data
-
IntPtr
nativeint
지정된 버퍼에 대해 설정할 데이터에 대한 포인터입니다.
설명
이 메서드를 사용하여 버퍼 크기를 업데이트하지 않고 버퍼 중 하나를 교체할 수 있습니다.
//
// 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]);
}
적용 대상
SetData(Int32, IntPtr, Int32)
오디오 버퍼 중 하나에 대한 데이터 버퍼를 설정합니다.
public void SetData (int index, IntPtr data, int dataByteSize);
member this.SetData : int * nativeint * int -> unit
매개 변수
- index
- Int32
액세스할 버퍼의 인덱스입니다.
- data
-
IntPtr
nativeint
지정된 버퍼에 대해 설정할 데이터에 대한 포인터입니다.
- dataByteSize
- Int32
버퍼의 크기입니다.
설명
//
// 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 ();
}