Video 为自定义视频输入硬件添加对QuickTime的支持

Video 为自定义视频输入硬件添加对QuickTime的支持,video,stream,quicktime,Video,Stream,Quicktime,我有一个自定义的硬件设备发送视频流 如何使此流可用于QuickTime应用程序 长话短说:在Windows上,我创建了一个DirectShow筛选器,因此任何与DirectShow兼容的应用程序都可以从我的设备中进行流式处理。我也希望在Mac OS X上这样做。我想QuickTime是一个不错的选择,但我在apple开发者网站上找不到准确的答案。希望你能使用Mac OS 10.7查看一下。苹果制作的CoreMediao.framework。 CoreMediaIO是多媒体硬件的设备抽象层(DAL

我有一个自定义的硬件设备发送视频流

如何使此流可用于QuickTime应用程序


长话短说:在Windows上,我创建了一个DirectShow筛选器,因此任何与DirectShow兼容的应用程序都可以从我的设备中进行流式处理。我也希望在Mac OS X上这样做。我想QuickTime是一个不错的选择,但我在apple开发者网站上找不到准确的答案。

希望你能使用Mac OS 10.7查看一下。苹果制作的CoreMediao.framework。
CoreMediaIO是多媒体硬件的设备抽象层(DAL)。它取代了传统的QuickTime VDIG组件API。
在MacOSX技术概述的“媒体层”一章中有一个

不幸的是,CoreMediao尚未出现在苹果的文档中,但它有一些非常详细的头文件。
它们位于:

/System/Library/Frameworks/CoreMediaIO.framework/Headers
CMIOHardware似乎是一个很好的起点(从标题中的“概述”部分):

CoreMediaIO设备抽象层(DAL)提供了一个应用程序可以访问媒体硬件的抽象。到 为此,DAL提供了一小组 提供对系统各部分的访问。所有CoreMediaIO对象的基类都是CMIOObject类。其他重要 类包括CMIOSystemObject、CMIODevice、, CMIOStream和CMIOControl


如果您必须支持较旧版本的OS X,您还可以看看
VDIG组件已弃用,仅32位。

我相信您需要的是10.7 Lion和iOS4中引入的CoreMedia.framework。更多详细信息以及API和示例-@SaurabhG:其中哪些部分与实现设备支持相关,而不是与设备的应用程序使用相关?以及相应的OSX指南-如果有帮助,请发表评论@SaurabhG:这个问题是关于实现对设备的支持。@PeterHosey:这确实让回答这个问题有点冒险,因为实际上没有关于为新(甚至旧的QTKit)AVFoundation框架编写设备驱动程序的好文档。也就是说,我建议在CoreMediao框架中四处看看。不过,绝对没有公开文档。如果您订阅了Mac developer程序,您可以在此论坛线程中找到一些使用CoreMediao.framework编写Lion user space视频捕获驱动程序的示例代码-在这一点上,我认为最好与ADC联系。这有助于在QuickTime中增加对新型视频输入设备的支持吗?嘿,Peter,当您提到视频流时,设备是否通过网络发送视频流?或者它只是一个捕获设备?我没提到视频流。据我所知,问题是关于添加对本地插入的自定义设备的支持,而不是网络上的流源。即使它是联网的,也不一定意味着它是一个HTTP服务器,或者提问者可以修改其内容以支持HTTP直播。在最初的问题中,它是一个发送视频流的设备。彼得,你的问题是什么?在不知道它是什么样的数据源的情况下,我们如何确定解决方案?如果设备是本地插入的,那么这是一个设备驱动程序问题,最好在你向我提问时查看macam项目,最好向提问者提问。是的,我知道问题说的是“设备发送视频流”,但它并没有说它是通过网络发送的,问题的其他元素暗示它不一定是网络意义上的流。