public Mp3FileAudioSource(Stream fileStream, string title = null) { var tagFile = TagLib.File.Create(new TaglibFileAbstraction(fileStream, title ?? "")); Title = BuildTitle(title, tagFile, null); MimeType = tagFile.MimeType; BitRate = tagFile.Properties.AudioBitrate; SampleRate = tagFile.Properties.AudioSampleRate; long contentStartOffset = tagFile.InvariantStartPosition; fileStream.Position = contentStartOffset; Stream = new ThrottleRateStream(fileStream, BitRate * 125); }
public Mp3FileAudioSource(string filePath, string title = null) { var tagFile = TagLib.File.Create(filePath); string filename = Path.GetFileNameWithoutExtension(filePath); Title = BuildTitle(title, tagFile, filename); MimeType = tagFile.MimeType; BitRate = tagFile.Properties.AudioBitrate; SampleRate = tagFile.Properties.AudioSampleRate; Stream fileStream = File.OpenRead(filePath); long contentStartOffset = tagFile.InvariantStartPosition; fileStream.Position = contentStartOffset; Stream = new ThrottleRateStream(fileStream, BitRate * 125); }