本文整理汇总了C#中IWavePlayer.Init方法的典型用法代码示例。如果您正苦于以下问题:C# IWavePlayer.Init方法的具体用法?C# IWavePlayer.Init怎么用?C# IWavePlayer.Init使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IWavePlayer
的用法示例。
在下文中一共展示了IWavePlayer.Init方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Connect
private void Connect(IPEndPoint endPoint, int inputDeviceNumber, INetworkChatCodec codec)
{
waveIn = new WaveIn();
waveIn.BufferMilliseconds = 50;
waveIn.DeviceNumber = inputDeviceNumber;
waveIn.WaveFormat = codec.RecordFormat;
waveIn.DataAvailable += waveIn_DataAvailable;
waveIn.StartRecording();
udpSender = new UdpClient();
udpListener = new UdpClient();
// To allow us to talk to ourselves for test purposes:
// http://stackoverflow.com/questions/687868/sending-and-receiving-udp-packets-between-two-programs-on-the-same-computer
udpListener.Client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);
udpListener.Client.Bind(endPoint);
udpSender.Connect(endPoint);
waveOut = new WaveOut();
waveProvider = new BufferedWaveProvider(codec.RecordFormat);
waveOut.Init(waveProvider);
waveOut.Play();
connected = true;
var state = new ListenerThreadState { Codec = codec, EndPoint = endPoint };
ThreadPool.QueueUserWorkItem(ListenerThread, state);
}
示例2: playWave
/// <summary>
/// Lejátszik egy .mp3 fájlt
/// </summary>
/// <param name="audioFile">.mp3 fájl</param>
public static void playWave(string audioFile)
{
thread = new WaveOut();
stream = CreateInputStream(audioFile);
thread.Init(stream);
thread.Play();
}
示例3: play_Click
private void play_Click(object sender, EventArgs e)
{
if (playlist.SelectedItems.Count>0)
{
id = fn.IndexOf(playlist.SelectedItem.ToString());
if (waveOutDevice.PlaybackState.ToString() != "Paused")
{
t.Stop();
stp();
audioFileReader = new AudioFileReader(fp[id]);
waveOutDevice = new WaveOut();
waveOutDevice.Init(audioFileReader);
trackbar.Maximum = (int)audioFileReader.TotalTime.TotalSeconds + 1;
//deb.Items.Add(audioFileReader.TotalTime.Seconds.ToString());
audioFileReader.Volume = (float)vol.Value / 100;
waveOutDevice.Play();
t.Start();
}
else
{
waveOutDevice.Play();
t.Start();
}
}
}
示例4: PianoSynth
public PianoSynth()
{
mixer = new WaveMixerStream32();
mixer.AutoStop = false;
int i = 0;
foreach (var note in noteFiles)
{
reader[i] = new WaveFileReader(note);
offsetStream[i] = new WaveOffsetStream(reader[i]);
channelSteam[i] = new WaveChannel32(offsetStream[i]);
channelSteam[i].Position = channelSteam[i].Length;
mixer.AddInputStream(channelSteam[i]);
i++;
}
if (waveOutDevice == null)
{
waveOutDevice = new WaveOut {DeviceNumber = 0};
waveOutDevice.Init(mixer);
waveOutDevice.Volume = 0;
waveOutDevice.Play();
waveOutDevice.Volume = 100;
}
}
示例5: Load
public bool Load(string path, Guid device)
{
var cext = path.GetExt();
_myWaveOut = new DirectSoundOut(device);
try
{
_myWaveStream = _codecs.First(v => v.Extensions.Contains(cext)).CreateWaveStream(path);
}
catch
{
return false;
}
if (_myWaveStream == null) return false;
if (_myWaveStream.WaveFormat.Channels == 2)
{
_myBalanceSampleProvider = new BalanceSampleProvider(_myWaveStream.ToSampleProvider());
_myVolumeSampleProvider = new VolumeSampleProvider(_myBalanceSampleProvider);
_myBalanceSampleProvider.Pan = (float)Balance;
}
else _myVolumeSampleProvider = new VolumeSampleProvider(_myWaveStream.ToSampleProvider());
_myEqualizer = new Equalizer(_myVolumeSampleProvider, _equalizerBands) { Enabled = _enableEqualizer };
_myWaveOut.Init(_myEqualizer);
_myWaveOut.PlaybackStopped += MyWaveOutOnPlaybackStopped;
_myVolumeSampleProvider.Volume = (float)Volume;
return true;
}
示例6: PlayFile
public int PlayFile(string filename)
{
waveOutDevice = new WaveOut();
mainOutputStream = CreateInputStream(filename);
waveOutDevice.Init(mainOutputStream);
waveOutDevice.Play();
return 0;
}
示例7: AudioPlaybackEngine
public AudioPlaybackEngine(int sampleRate = 44100, int channelCount = 2)
{
outputDevice = new WaveOutEvent();
mixer = new MixingSampleProvider(WaveFormat.CreateIeeeFloatWaveFormat(sampleRate, channelCount));
mixer.ReadFully = true;
outputDevice.Init(mixer);
outputDevice.Play();
}
示例8: Audio
public Audio(string filename)
{
this.fileName = filename;
waveOutDevice = new DirectSoundOut(50);
mainOutputStream = CreateInputStream(filename);
waveOutDevice.Init(mainOutputStream);
isPlaying = false;
}
示例9: AudioPlaya
public AudioPlaya(string filename) {
waveOutDevice = new WaveOut();
waveOutDevice.Init(stream = loadFromFile(filename));
waveOutDevice.PlaybackStopped += (object sender, StoppedEventArgs e) =>
{
if (Finished != null)
Finished(this);
};
}
示例10: PlaySong
public void PlaySong()
{
// Instantiate audio player
waveOutDevice = new WaveOut();
// Set MP3 to play
audioFileReader = new AudioFileReader(GetSong());
// Init device and call play
waveOutDevice.Init(audioFileReader);
waveOutDevice.Play();
}
示例11: Init
public void Init(string waveFilePath)
{
// 4410 samples == 100 milliseconds
int sampleRate = 44100;
int blockSize = (int) (sampleRate * 0.15f); //6615;
int channels = 2;
vstStream = new VSTStream(sampleRate, channels, blockSize, this.plugins, waveFilePath); //blocksize 4410 samples gave stuttering? 6615 was perfect, 8820 was OK (small glitches)!
playbackDevice = new WaveOut(WaveCallbackInfo.FunctionCallback());
playbackDevice.Init(vstStream);
}
示例12: Stage
public override void Stage()
{
wavePlayer = new WaveOutEvent();
file = new AudioFileReader(_fileName);
file.Volume = 1;
wavePlayer.Init(file);
wavePlayer.PlaybackStopped += new EventHandler<StoppedEventArgs>(PlaybackEnded);
_currentStatus = Status.Staged;
}
示例13: Play
private void Play()
{
if (waveOut != null)
{
Stop();
}
waveOut = new WaveOut();
this.patternSequencer = new DrumPatternSampleProvider(pattern);
this.patternSequencer.Tempo = tempo;
waveOut.Init(patternSequencer);
waveOut.Play();
}
示例14: BeginPlayback
private void BeginPlayback(string filename)
{
Debug.Assert(wavePlayer == null);
wavePlayer = CreateWavePlayer();
audioFileReader = new AudioFileReader(filename);
audioFileReader.Volume = volumeSlider1.Volume;
wavePlayer.Init(audioFileReader);
wavePlayer.PlaybackStopped += OnPlaybackStopped;
wavePlayer.Play();
EnableButtons(true);
timer1.Enabled = true; // timer for updating current time label
}
示例15: button_play_Click
//Кнопка "Плей"
private void button_play_Click(object sender, EventArgs e)
{
button_stop.Enabled = true;
timer.Start();
ind = 2;
waveOutDevice = new WaveOut();
mainOutputStream = CreateInputStream(outputFilename);
waveOutDevice.Init(mainOutputStream);
waveOutDevice.Play();
button_play.Enabled = false;
button_rec.Enabled = false;
numeric.Enabled = false;
}