讨论一个mac平台上的多媒体文件处理软件的开发

2 views
Skip to first unread message

JArod Wen

unread,
Apr 6, 2010, 11:10:20 PM4/6/10
to cocoaChina
题目长了一些,但是最近实在是被这个项目压得够呛,节目也没时间做了……感觉很多问题来自与自己在mac开发方面经验严重不足,所以上来请教一下各位
了。

基本的程序是这样的:一个视频处理软件,能够读取QTMovie文件,并且支持下面的操作:
(1)用户可以在视频的任意一帧上进行像photoshot路径那样的选择点,线段,路径或者形状,这里把这四种操作通称为“测量”,然后每一帧的测量
(包括点和路径)会被保存到一个table中(table包含所有帧的同一种测量的数据)。table窗口作为一个panel显示,以便用户可以监视
table的内容(可以选择路径的功能已经实现了,通过subclass NSView)。同一个视频可以有多个不同的测量table与其相关。
(2)每个视频的音频可以提取出来,输出到table中。这个部份的功能(如何提取音频,如何转化数据)也已经完成。
(3)所有的table数据能够保存和打开。

看起来功能其实很简单,但是兄弟现在的问题是如何把这些功能整合起来。因为多个table可能对应一个视频文件,所以我们的一个想法是使用
bundle,也就是说,每次保存的时候,视频文件会和所有的table数据保存到一个bundle中。

一开始的设计,我们使用了NSDocument框架,因为很多有关数据的操作(主要是redo和auto save)已经在框架中实现,所以可能回比较
适合。但是后来一个问题是,使用NSDocument的话,每个bundle应该对应一个Document,其中包含所有的table数据,但在实际的
开发中,为了让每个table也支持redo和auto save,每个table在开始时就设计成了一个NSDocument的子类。但是现在这样的
话,需要有一个NSDocument的嵌套结构(视频对应的NSDocument会包含若干个table的NSDocument)。似乎
NSDocument架构不支持这样的嵌套……

最近情况又有了新的变化,项目的负责人开始觉得Core Data是个不错的选择,因为一旦实现了将所有table到core data的转换,
bundle和auto save的功能就比较容易实现,于是项目开始大刀阔斧的改革……

兄弟现在的问题是:
(1)如上的功能,用NSDocument架构实现,是不是一个比较好的选择?
(2)如果使用core data,理论上core data可以和NSDocument架构结合,这样的话,只要使用视频的NSDocument子
类,其他都使用core data,会不会比较容易实现?
(3)以上的功能,如果各位大大们要实现的话,会采用怎么样的架构?如果有不同的架构,优缺点又如何?

不知道说清楚了没有……希望各位有经验的大大们为小弟指点迷津!!拜谢!!!

yil...@gmail.com

unread,
Apr 7, 2010, 12:08:02 AM4/7/10
to cocoa...@googlegroups.com
http://www.cocoachina.com/bbs/read.php?tid=17864

小僧帮忙转过去乐:)

Send from lv2touch

在 2010-4-7,上午11:10,JArod Wen <jaro...@gmail.com> 写到:

> 题目长了一些,但是最近实在是被这个项目压得够呛,节目也没时间做了……感
> --
> http://cocoachina.com/
> http://cocoachina.com/bbs/
> http://cocoachina.com/wiki/
> You received this message because you are subscribed to the Google
> Groups "cocoaChina" group.
> To post to this group, send email to cocoa...@googlegroups.com
> To unsubscribe from this group, send email to
> cocoachina+...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/cocoachina?hl=en
>
> To unsubscribe, reply using "remove me" as the subject.

JArod Wen

unread,
Apr 7, 2010, 3:26:30 PM4/7/10
to cocoaChina
多谢乐兄!yo大已经回复了一条了,相当有帮助!多谢!!

On Apr 6, 9:08 pm, yile...@gmail.com wrote:
> http://www.cocoachina.com/bbs/read.php?tid=17864
>
> 小僧帮忙转过去乐:)
>
> Send from lv2touch
>

> 在 2010-4-7,上午11:10,JArod Wen <jarod...@gmail.com> 写到:
>
>
>
> > 题目长了一些,但是最近实在是被这个项目压得够呛,节目也没时间做了......感

> > NSDocument架构不支持这样的嵌套......


>
> > 最近情况又有了新的变化,项目的负责人开始觉得Core Data是个不错的选择,
> > 因为一旦实现了将所有table到core data的转换,

> > bundle和auto save的功能就比较容易实现,于是项目开始大刀阔斧的改革......


>
> > 兄弟现在的问题是:
> > (1)如上的功能,用NSDocument架构实现,是不是一个比较好的选择?
> > (2)如果使用core data,理论上core data可以和NSDocument架构结合,这样
> > 的话,只要使用视频的NSDocument子
> > 类,其他都使用core data,会不会比较容易实现?
> > (3)以上的功能,如果各位大大们要实现的话,会采用怎么样的架构?如果有
> > 不同的架构,优缺点又如何?
>

> > 不知道说清楚了没有......希望各位有经验的大大们为小弟指点迷津!!拜谢!

Reply all
Reply to author
Forward
0 new messages