编解码器是如何注册的?

问题描述:

我想要深入了解编解码器领域以及它是如何工作的。编解码器是如何注册的?

的主要驱动器是安装编解码器的不确定性包处理某些无法播放的视频,从而结束了不允许这些文件的播放反正。这通常会在后面安装其他编解码器包后变得复杂。我还注意到,有时只需重新安装编解码器包可能会导致以前播放的视频在重新安装编解码器包后无法播放。

我最感兴趣的是安装编解码器包(Shark007,CCCP,K-Lite)时在后台发生的事情 - 特别是Windows媒体播放器如何向不同播放器注册编解码器?是否有WMP内部已知的编解码器的列表,获取新的编解码器?我怎样才能知道我是否有特定编解码器的特定编码类型? DirectShow及其过滤器如何与新的编解码器一起工作?

大部分,我发现已经相当*,大部分的意见是与解码包的设置和/或安装其他编解码器包玩弄的信息.. :(

任何类型的意见或建议的对在这一领域的进一步信息(书籍,链接等),将不胜感激!:)

+0

请查看[RadLight过滤器管理器](http://www.dvbviewer.tv/forum/topic/2543-radlight-filter-manager-v16/) – wimh 2012-04-16 07:32:00

+0

感谢您的链接!该工具听起来很有用 – Ross 2012-04-22 22:58:40

在Windows中使用最广泛的多媒体API是DirectShow的,正如你在问题标签标明你的目标也许正是它。还有其他的API。重要提示:DirectShow是不是 Windows Media Player的主要API:WMP将尝试通过Media Foundation播放文件,如果失败,则第二次尝试将利用传统的DirectShow。尽管如此,DirectShow是应用程序中最常用的。

DirectShow中,多媒体管道是从它们通过其管脚连成的曲线图滤波器构建的。所连接的结构具有流过的数据,例如,从文件传输到设备的解码视频/音频。编解码器是这个管道中经常使用的组件。

编解码器的配准是Filter Mapper子系统的权限范围。它负责所有注册,并提供连接选项Intelligent Connect - 将东西连接在一起的子系统,包括在需要时提供编解码器,并且应用程序请求自动提供编解码器。

,你会发现在MSDN上,DirectShow下内部的最好的文档。

+0

谢谢你的解释!我将进一步探索你已经提到过的Filter Mapper和Intelligent Connect,并研究Media Foundation。 – Ross 2012-04-22 22:58:02