예제 #1
0
		private bool TryFillFromStream(BaseMusicStream stream)
		{
			int size = stream.Read(byteBuffer, BufferSize);
			if (size <= 0)
				return false;
			XAudioBuffer.AudioDataPointer = GetBufferHandle();
			XAudioBuffer.AudioBytes = size;
			int blockAlign = stream.Channels * 2;
			XAudioBuffer.PlayLength = size / blockAlign;
			return true;
		}
예제 #2
0
        private bool TryStream(int buffer)
        {
            int bytesRead = musicStream.Read(bufferData, BufferSize);

            if (bytesRead == 0)
            {
                return(false);
            }
            openAL.BufferData(buffer, format, bufferData, bytesRead, musicStream.Samplerate);
            openAL.QueueBufferInChannel(buffer, channelHandle);
            return(true);
        }
예제 #3
0
        private bool TryStream()
        {
            var buffer    = new byte[BufferSize];
            int bytesRead = musicStream.Read(buffer, BufferSize);

            if (bytesRead == 0)
            {
                return(false);
            }
            source.SubmitBuffer(buffer, 0, bytesRead);
            return(true);
        }
예제 #4
0
        private bool TryFillFromStream(BaseMusicStream stream)
        {
            int size = stream.Read(byteBuffer, BufferSize);

            if (size <= 0)
            {
                return(false);
            }
            XAudioBuffer.AudioDataPointer = GetBufferHandle();
            XAudioBuffer.AudioBytes       = size;
            int blockAlign = stream.Channels * 2;

            XAudioBuffer.PlayLength = size / blockAlign;
            return(true);
        }
예제 #5
0
        private bool TryFillFromStream(BaseMusicStream stream)
        {
            int size = stream.Read(byteBuffer, BufferSize);

            if (size <= 0)
            {
                return(false);
            }
            bufferStream.Position = 0;
            bufferStream.Write(byteBuffer, 0, size);
            bufferStream.Position   = 0;
            XAudioBuffer.AudioData  = bufferStream;
            XAudioBuffer.AudioBytes = size;
            int blockAlign = stream.Channels * 2;

            XAudioBuffer.PlayLength = size / blockAlign;
            return(true);
        }