2010-12-03 121 views
1

我在写一个使用Quartz Composer作为实时视频处理器的交互式编辑视频应用程序。时间和同步在我的应用程序中非常重要。Unix域套接字,Udp套接字Objective C使用什么?

我的第一个以C++编码的应用程序必须在此“时间”“停止”等此“路径”“此文件视频”“开始”等处发送诸如“play”之类的命令。对于此udp套接字工作正常 。 我为每个命令使用一个套接字,所以命令的顺序永远不会混乱,这样的事情将是致命的!

真正的问题是,当我的Quartz Composer Patch开始发送当前时间到我的第二个应用程序,该应用程序将控制我的时间线条,以便用户具有视频实际进度的图形表示Udp套接字只是速度不够快,以不同顺序或重复发送数据包。

虽然那unix套接字域可以帮助我,但是当我查看所有的例子,我在网上发现在C编写,而不是在objC和Quartz Composer的插件只能在objC编码我知道我可以自己包装C代码,但在开始这个艰巨的任务之前,如何确定Unix套接字是我需要的?

真正的Unix套接字是否足够快速且足够可靠用于我想要做的事情?

是否有另一种方法,你知道objC中的同步过程我看看管道,共享内存,但我不清楚如何在我的插件中实现这一点。

+0

通过“我为每个命令使用一个套接字”,你的意思是你每次都打开一个新的套接字吗?你使用UDP作为本地(单机)IPC吗?你想知道,如果Unix域套接字足够快? – 2010-12-03 15:47:23

+0

是的,我使用UDP本地机器我想知道,如果Unix域套接字是足够快的发送例如25/s或30/s更新到我的图形用户界面在其他应用程序UDP只是卡住了...是的,我使用我发送给视频应用程序的每个命令的套接字之一播放一个说停止一个设置视频的开始时间等 – Nairo 2010-12-03 22:02:32

回答

0

是我使用UDP本地机器 我想知道如果Unix域套接字的 更快足够例如 25帧/秒或30帧/秒的更新在 其他应用UDP发送给我的GUI刚刚获得 卡...

Unix套接字可能会快一点,而且可能更重要的是他们提供可靠的传送(不像UDP)。但是你对速度的评论以及UDP作为协议阻止你每秒向GUI发布30次更新的想法让我认为这个问题不在协议的选择中,而是在其他任何地方。换句话说,我认为Unix套接字将比UDP更快,但我怀疑他们会解决您的实际问题。