是否可以在OpenCV中向后播放视频?通过API调用或缓冲视频帧并将顺序反转为新的视频文件.
谢谢
这是一个关于软件设计的一般"noob"问题,所以如果它看起来模糊不清我道歉,但我真的很感激这个建议.请注意,下面描述的系统纯粹是一个示例,而不是我想到的特定产品.
我经常需要结合使用不同语言编写的几个库或实用程序的功能.例如,如果我想为桌面编写高性能音频处理应用程序,我将用C/C++编写它.然后,我想添加一个漂亮的GUI.但我不想学习Qt.我喜欢Adobe Air的外观和感觉,并希望使用它.后来,我需要访问USB设备.但USB库我只有一个Java API.如何将所有这些元素组合在一起,以利用它们的相对优势?
显然,我无法将这些不同的元素编译成一个可执行文件.因此,我需要单独创建和运行它们,并为它们提供一种通信方式.最常见的方法似乎是使用IPC(进程间通信),例如共享内存或套接字.我更喜欢套接字的想法,因为程序可能会在网络上的单独机器上运行.
因此,我决定使用自定义API创建本地客户端/服务器系统,以允许这些元素进行通信.例如,Air应用程序将从C应用程序接收消息,告诉它更新它的UI.在Java中运行的USB应用程序将使用套接字将来自USB硬件的音频流传输到C应用程序中.
我的问题:以这种方式使用本地套接字是设计这样一个系统的典型方法吗?性能是否会比真正的本机应用程序(例如Java或C中的所有内容,在单个可执行文件中)更糟糕?这种方法似乎很容易出错,难以维护?
我经常发现自己遇到了现有软件库的限制(例如图形库具有漂亮,灵活的UI但无法访问低级硬件,或者媒体库可以混合许多音频流,但不支持视频播放),发现它非常令人沮丧.如果有人可以建议最好的方法来组合像这样的任意软件库,我真的很感激.
提前致谢!