public AudioStream open_audio(uint ind, IMixer mixer, AudioStream.FrameReadyFunction frameready) { Trace.Assert(!this.audiostreams.Any(_stream => _stream.info.ind == this.AudioStreams[ind].info.ind)); var result = this.AudioStreams[ind].open(mixer.SampleRate, mixer.Format, mixer.ChannelLayout, frameready); this.audiostreams.Add(result); return(result); }
public AudioStream open_audio(uint ind, int samplerate, AudioFormat fmt, ChannelsLayout channellayout, AudioStream.FrameReadyFunction frameready) { Trace.Assert(!this.audiostreams.Any(_stream => _stream.info.ind == this.AudioStreams[ind].info.ind)); var result = this.AudioStreams[ind].open(samplerate, fmt, channellayout, frameready); this.audiostreams.Add(result); return(result); }
internal AudioStream open(int samplerate, AudioFormat format, ChannelsLayout channelslayout, AudioStream.FrameReadyFunction frameready) { this._framedelegate = new AudioStream.FrameReadyFunction(frameready); var error = new StringBuilder(1024); var audstream = Imports._player_openaudio(Player._player, info.ind, samplerate, format, channelslayout, Marshal.GetFunctionPointerForDelegate(frameready), error); BBRException.CheckError(error, $"open_audio"); return(new AudioStream(this, audstream)); }