public void LoadFile(string soundPath) { if (string.IsNullOrEmpty(soundPath) || !File.Exists(soundPath)) { FreeStream(); return; } // Free Stream FreeStream(); // File Stream var fileMemory = File.ReadAllBytes(soundPath); // _handle = Bass.CreateStream(soundfile, 0, 0, BassFlags.Default | BassFlags.Float | BassFlags.AutoFree); // _handle = Bass.CreateStream(soundfile); _handle = Bass.CreateStream(fileMemory, 0, fileMemory.Length, BassFlags.Default); // Free try { fileMemory = null; File.Delete(soundPath); GC.Collect(); } catch { } if (_handle == 0) { Console.WriteLine("Player: Error Creating stream for {0} {1:G}", soundPath, Bass.LastError); return; } _Length = Bass.ChannelBytes2Seconds(_handle, Bass.ChannelGetLength(_handle)); // Bass.FloatingPointDSP = true; if (Bass.ChannelSetDevice(_handle, 1)) { Console.WriteLine("Player: Error Set Device {0:G}", Bass.LastError); return; } // Set Volume Volume = _VolumeTrack.Value / 100.0; // Set Balance Balance = _PanTrack.Value / 100.0f; // Play Play(true); }
public double Bytes2Seconds(long Bytes) { return(Bass.ChannelBytes2Seconds(Handle, Bytes)); }