NVorbis.source

所属分类:音频处理
开发工具:C#
文件大小:217KB
下载次数:8
上传日期:2013-01-30 18:29:01
上 传 者cn886372
说明:  纯.net实现对ogg 文件的读写播放 用到了本人上传的另一个类库NAudio
(Ogg File Play)

文件列表:
COPYING (2671, 2012-09-20)
Lib (0, 2012-09-20)
Lib\ACache.cs (5192, 2012-09-20)
Lib\DataPacket.cs (6723, 2012-09-20)
Lib\Huffman.cs (2022, 2012-09-20)
Lib\IPacketProvider.cs (759, 2012-09-20)
Lib\IVorbisStreamStatus.cs (2389, 2012-09-20)
Lib\Mdct.cs (37155, 2012-09-20)
Lib\NVorbis.csproj (5836, 2012-09-20)
Lib\Ogg (0, 2012-09-20)
Lib\Ogg\OggContainerReader.cs (14115, 2012-09-20)
Lib\Ogg\OggPacket.cs (2738, 2012-09-20)
Lib\Ogg\OggPacketReader.cs (11177, 2012-09-20)
Lib\Ogg\OggPageFlags.cs (756, 2012-09-20)
Lib\Properties (0, 2012-09-20)
Lib\Properties\AssemblyInfo.cs (625, 2012-09-20)
Lib\RingBuffer.cs (4767, 2012-09-20)
Lib\Utils.cs (4252, 2012-09-20)
Lib\VorbisCodebook.cs (9550, 2012-09-20)
Lib\VorbisFloor.cs (29552, 2012-09-20)
Lib\VorbisMapping.cs (4581, 2012-09-20)
Lib\VorbisMode.cs (4300, 2012-09-20)
Lib\VorbisReader.cs (12225, 2012-09-20)
Lib\VorbisResidue.cs (11749, 2012-09-20)
Lib\VorbisStreamDecoder.cs (28961, 2012-09-20)
Lib\VorbisTime.cs (1542, 2012-09-20)
NAudioSupport (0, 2012-09-20)
NAudioSupport\NAudioSupport.csproj (2596, 2012-09-20)
NAudioSupport\Properties (0, 2012-09-20)
NAudioSupport\Properties\AssemblyInfo.cs (635, 2012-09-20)
NAudioSupport\VorbisWaveReader.cs (5560, 2012-09-20)
NVorbis.sln (3483, 2012-09-20)
References (0, 2012-09-20)
References\NAudio license.txt (2660, 2012-09-20)
References\NAudio.dll (391168, 2012-09-20)
TODO (676, 2012-09-20)
TestApp (0, 2012-09-20)
TestApp\Program.cs (2948, 2012-09-20)
... ...

NVorbis ------- NVorbis is a .Net library for decoding Xiph.org Vorbis files. It is purely managed code, and should run correctly in partial-trust environments. This implementation is based on the Vorbis specification found on xiph.org. The MDCT and Huffman codeword generator were borrowed from public domain implementations at http://nothings.org/stb_vorbis/. Currently the only container supported is Xiph.org Ogg. Matroska and RTP are planned. To use: - Create an instance of NVorbis.VorbisReader (pass the Ogg Vorbis filename in) - Use these properties to gather data about the logical stream: - Channels - SampleRate - TotalTime - A TimeSpan indicating the total length of the audio data - DecodedTime - A TimeSpan indicating the last returned sample's timestamp - NominalBitrate, UpperBitrate, and LowerBitrate - These are the encoder's reported bitrates - Vendor - The encoder's vendor string - Comments - An array of comments in the file (usually tags) - Call "int ReadSamples(float[], int, int)" to retrieve the next batch of samples. It will return 0 when the logical Vorbis stream is done. - For NAudio support: - Reference NVorbis.NAudioSupport.dll - Create an instance of NVorbis.NAudioSupport.VorbisWaveReader - VorbisWaveReader implements NAudio.Wave.WaveStream. History ------- 0.1 - 08/03/2012 * Initial Release 0.2 - 08/07/2012 * Swapped out LGPL code for public domain implementations * Relicensed under Ms-PL * Added NAudio support project * Added test files & app * Performance improvements 0.3 - 08/08/2012 * Fixed Page / Packet decode (packets overlapping 2 pages) * Fixed "no energy" packet handling * Fixed packet reader not merging when unsolicited packets are added * Added .gitignore * Added initial multi-stream support * Added statistics (see VorbisReader.Stats) 0.4 - 08/14/2012 * Refactoring to clean up code and make room for later improvements * Changed lapping algorithm to be simpler * Switched to higher-performance clipping algorithm * Some cleanup 0.4.1 - 09/11/2012 * Fixed a couple Ogg container bugs * Optimized memory allocations for better performance / memory usage 0.5 - 09/20/2012 * Added seeking support * Changed OggPacketReader to use a doubly-linked list for the packet queue / history * Changed OggPacketReader.GetTotalPageCount() to count pages directly instead of making .AddPacket(...) keep a list * Fixed a few bugs (mostly race conditions in multi-threaded playback scenarios) * Added multi-stream support to VorbisWaveReader * Added several info properties to VorbisWaveReader

近期下载者

相关文件


收藏者