共用方式為


AudioFileStream 類別

定義

處理部分音訊檔案。

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

這個檔案的魔術 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, IntPtr)

用來從基礎 AudioFileStream 物件擷取任意屬性值的低階常式。

GetProperty(AudioFileStreamProperty, Int32)

用來從基礎 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。 請改用公開的 Managed 屬性。

適用於

另請參閱