本文整理汇总了C#中IAudioStream.Dispose方法的典型用法代码示例。如果您正苦于以下问题:C# IAudioStream.Dispose方法的具体用法?C# IAudioStream.Dispose怎么用?C# IAudioStream.Dispose使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IAudioStream
的用法示例。
在下文中一共展示了IAudioStream.Dispose方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: PlayStream
public SoundHandle PlayStream(SoundType type, IAudioStream stream, int id = -1, int volume = 255,
int balance = 0, bool autofreeStream = true, bool permanent = false, bool reverseStereo = false)
{
lock (_gate)
{
if (stream == null)
{
// Console.Error.WriteLine("stream is null");
return new SoundHandle();
}
Debug.Assert(IsReady);
// Prevent duplicate sounds
if (id != -1)
{
for (var i = 0; i != NumChannels; i++)
if (_channels[i] != null && _channels[i].Id == id)
{
// Delete the stream if were asked to auto-dispose it.
// Note: This could cause trouble if the client code does not
// yet expect the stream to be gone. The primary example to
// keep in mind here is QueuingAudioStream.
// Thus, as a quick rule of thumb, you should never, ever,
// try to play QueuingAudioStreams with a sound id.
if (autofreeStream)
stream.Dispose();
return new SoundHandle();
}
}
// Create the channel
var chan = new Channel(this, type, stream, autofreeStream, reverseStereo, id, permanent)
{
Volume = volume,
Balance = balance
};
return InsertChannel(chan);
}
}