Beispiel #1
0
        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);
        }
Beispiel #2
0
        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);
        }