示例#1
0
        public AudFormat(Stream stream)
        {
            sourceStream = stream;

            if (!AudReader.LoadSound(stream, out audStreamFactory, out sampleRate, out sampleBits, out channels, out lengthInSeconds))
            {
                throw new InvalidDataException();
            }
        }
示例#2
0
        public AudFormat(Stream stream)
        {
            sourceStream = stream;

            if (!AudReader.LoadSound(stream, out audStreamFactory, out sampleRate))
            {
                throw new InvalidDataException();
            }
        }
示例#3
0
        public AudFormat(Stream stream)
        {
            this.stream = stream;

            var position = stream.Position;

            rawData = Exts.Lazy(() =>
            {
                try
                {
                    byte[] data;
                    if (!AudReader.LoadSound(stream, out data, out sampleRate))
                    {
                        throw new InvalidDataException();
                    }
                    return(data);
                }
                finally
                {
                    stream.Position = position;
                }
            });
        }