文件读取功能

[与此页面关联的功能 Windows Media Format 11 SDK 是旧版功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用源读取器和接收器编写器,而不是 Windows Media Format 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

读取 ASF 文件是 Windows Media Format SDK 的主要功能之一。 支持两种类型的读取:异步和同步。 异步文件读取由读取器对象处理。 同步读取器对象用于同步读取文件。 有关不同读取对象的详细信息,请参阅 读取器对象同步读取器对象

在最基本的异步文件读取方案中,必须实现读取器对象将在样本准备就绪时调用的回调方法。 开始读取文件后,应用程序将等待示例传递到回调方法。 异步读取对于播放器应用程序很有用,并支持同步读取中不可用的功能。 如果应用程序需要从网络位置读取文件,或者需要与运行 Windows Media 服务 的服务器进行交互,则必须使用 读取器 对象。 读取器对象的缺点是,每个传递的输出都使用单独的线程。 此外,读取器对象在提供示例的方式上不如同步读取器灵活。

使用同步读取器时,无需使用任何回调方法。 相反,你可以选择文件的一部分,通过方法调用一次读取和检索一个示例。 同步读取器非常适合内容编辑应用程序的需求,其中快速访问特定示例至关重要。 由于同步读取器不使用任何回调方法,因此可以创建应用程序来读取 ASF 文件,同时尽量减少编码开销。 但是,同步读取器无法从网络位置打开文件,无法与运行Windows Media 服务的服务器交互,也无法读取受 DRM 保护的文件。

以下主题讨论读取器和同步读取器的功能。

主题 说明
用户分配的示例支持 讨论读取器和同步读取器中的缓冲区分配,以及用户分配如何提高性能。
输出格式枚举 讨论输出格式枚举。

 

此外,写入功能部分中的以下主题也适用于文件读取:

功能

读取 ASF 文件