AudioFileStream 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
处理部分音频文件。
public class AudioFileStream : IDisposable
type AudioFileStream = class
interface IDisposable
- 继承
-
AudioFileStream
- 实现
注解
如果要解码不在本地文件中的音频内容,或者要以区块的形式解码音频内容,请使用 AudioFileStream。 使用 ParseBytes 方法之一将新数据馈送到 AudioFileStream 中,解码的音频在 PacketDecoded 事件 (或 OnPacketDecoded 虚拟方法) 中提供,并且有关流的信息在 PropertyFound 事件 (或 OnPropertyFound 虚拟方法) 中引发。
例如,当你从网络流式传输音频时,这可用于分析音频文件。
此类中的方法和属性更新 属性以 LastError 跟踪分析期间的任何潜在错误,但不引发异常。
构造函数
AudioFileStream(AudioFileType) |
创建此对象的新实例。 |
字段
PacketDecoded |
解码数据包时会引发此事件。 |
PropertyFound |
在解码的数据上找到属性时,将引发此事件。 |
属性
AverageBytesPerPacket |
每个数据包的平均字节数。 此值对于比特率恒定的音频文件或具有数据包索引的音频文件是精确的,否则它是计算的平均值。 |
BitRate |
流的比特率(以位/秒为单位)。 |
ChannelLayout |
音频流的通道布局。 |
DataByteCount |
对于长度已知的流,为音频字节数据的数量。 |
DataFormat |
(作为 AudioStreamBasicDescription 的数据的格式 |
DataOffset |
音频日期与音频文件流开头的偏移量。 |
DataPacketCount |
音频文件流上的音频数据包数。 |
FileType |
音频流的音频文件类型。 |
FormatList |
音频流支持的格式列表。 |
LastError |
包含由 AudioFileStream 中的方法之一设置的最新错误代码。 |
MagicCookie |
此文件的 magic Cookie。 |
MaximumPacketSize |
音频文件流上数据的最大数据包大小 |
PacketSizeUpperBound |
最大可能的数据包大小。 |
PacketTableInfo |
包含有关音频文件流中有效帧的信息, (其开始和结束) 。 |
ReadyToProducePackets |
一旦文件流分析程序读取了足够多的标头,以便能够生成音频数据包,则设置为 true。 |
StreamBasicDescription |
数据的格式 |
方法
ByteToPacket(Int64, Int32, Boolean) |
将文件中的位置映射到音频数据包。 |
Close() |
关闭 (并释放音频流) 。 |
Dispose() |
释放 AudioFileStream 对象使用的资源。 |
Dispose(Boolean) |
释放 AudioFileStream 对象使用的资源。 |
Finalize() |
AudioFileStream 对象的终结器 |
FrameToPacket(Int64, Int32) |
返回数据包数和数据包 (中与请求的音频帧相对应的输出参数) 的帧偏移量。 |
GetProperty(AudioFileStreamProperty, Int32) |
用于从基础 AudioFileStream 对象中提取任意属性值的低级别例程。 |
GetProperty(AudioFileStreamProperty, Int32, IntPtr) |
用于从基础 AudioFileStream 对象中提取任意属性值的低级别例程。 |
OnPacketDecoded(Int32, IntPtr, AudioStreamPacketDescription[]) |
解码数据包时调用。 |
OnPropertyFound(AudioFileStreamProperty, AudioFileStreamPropertyFlag) |
在找到 propety 时调用。 |
PacketToByte(Int64, Boolean) |
将数据包号映射到音频文件流中的字节号。 |
PacketToFrame(Int64) |
将数据包编号映射到音频文件流中的音频帧编号。 |
ParseBytes(Byte[], Boolean) |
分析和解码提供的字节数组。 |
ParseBytes(Byte[], Int32, Int32, Boolean) |
分析和解码提供的字节数组的一部分。 |
ParseBytes(Int32, IntPtr, Boolean) |
分析和解码所提供的数据块。 |
Seek(Int64, Int64, Boolean) |
映射指定 packetOffset 的绝对文件偏移量。 |
SetProperty(AudioFileStreamProperty, Int32, IntPtr) |
低级别属性设置 API。 请改用公开的托管属性。 |