熟悉Windows的Mac OS X新手。 Windows具有DirectShow,大量内置过滤器,COM编程和GraphEdit,可以在您使用代码构建的图形上进行快速原型设计和窥探。
我现在要去Mac上使用相机,网络摄像头,麦克风,色彩空间,文件,分割,同步,渲染,文件读取,文件保存以及许多我需要采取的措施在将现场演出应用程序整合在一起时,授予DirecShow。在Mac方面,到目前为止我发现......什么都没有!要么我不知道在哪里看,要么我有最艰难的时间来平衡Mac的声誉,因为它易于处理媒体,具有连贯的编程能力,可以进入并开始使用媒体操作构建模块。
我已经看到一些弱的建议,使用gstreamer或一些库来进行QT,但我不能让自己相信这是Apple的方法。我遇到过一些QuickTime文档,但我不打算做转换,精灵,广播......
让大脑接受DirectShow培训意味着我甚至不知道Apple如何考虑提供类似DirectShow的功能。这意味着我不知道正确的关键字,甚至不知道在哪里看。图书?买了几个。现在我可以编写一些可以编辑你妹妹的婚礼视频的代码(如果我不能在这个主题上取得相当好的进展,我可能接下来会问你有什么值得的),但是要确定哪些过滤器是可用的以及如何将它们串在一起......没有。建议?
答案 0 :(得分:10)
目前,视频处理在Mac上经历了巨大的转变。 QuickTime非常陈旧,而且功能强大,因此在过去5年左右的时间里,它一直在进行增量替换。
也就是说,QTKit是未来支持的QuickTime子集(捕获,回放,格式转换和基本视频编辑)。传统的QuickTime API目前仍然存在,并且可能至少保持其主要功能在其他地方可用,但仅为32位。对于某些涉及视频的内容,您可能最终需要在某些地方使用它。
目前,iOS领先Mac,因为它可以从头开始AV Foundation。 Mac媒体框架的未来可能直接是AV基金会(QTKit是顶部的轻量级垫片)或QTKit的扩展看起来非常相似。
对于音频而言,Core Audio位于Mac和iOS上,不会很快消失。它非常强大,但在某些地方有些迟钝。幸运的是,在线支持非常好; mailing list是必不可少的资源。
对于过滤器和帧级处理,您可以像其他人一样提到Core Video,以及Core Image。对于动态图形,Quartz Composer包括图形编辑器和插件架构,用于添加自己的补丁。对于程序化程序动画和轻松混合渲染模型(OpenGL,Quartz,视频等),有Core Animation。
除了所有这些,当然没有理由你不能使用内置的东西不能做你想要的开源库。
要在下面发表评论:
在QuickTime(和QTKit)中,音频和视频等各种数据类型表示为轨道。可能不会立即清楚QuickTime可以打开音频以及视频文件格式。组合音频和视频的常用方法是:
QTMovie
。QTMovie
。QTTrack
对象,并将其添加到包含视频的QTMovie
。 Here's an example from Blender。您将看到如何在end_qt
函数中完成A / V多路复用。那里还有一些Core Audio的使用(AudioConverter*
)。 (在quicktime_export.c
中有一些经典的QuickTime导出代码,但它似乎没有音频。)