python是家用软件视频库的合适选择

时间:2009-09-25 14:28:58

标签: python video video-library

我正在考虑创建一个视频库软件,该软件可以跟踪我的所有视频,并跟踪我已经没有观看过的视频和这样的统计数据。统计数据将特定于使用该软件的每个用户。

我的问题是,python是否适合创建这个软件,或者我需要像c ++这样的东西。

5 个答案:

答案 0 :(得分:6)

Python非常适合此类任务 - 事实上,最流行的视频网站YouTube实际上是用Python编程的(当然,使用来自Python的低级组件称为来完成Web等任务)服务,关系数据库,视频转码 - 对于所有这些类型的任务,有很多这样的可重用的开源组件,但是你的应用程序的逻辑流程和所有应用程序级逻辑都可以很好地用于Python)。

就在昨天晚上,在山景城举行的当地Python兴趣小组会议上,我们有新成员刚刚搬到硅谷,专门从事视频行业的基于Python的工作,他们说专业级视频交付业界也越来越倾向于使用Python - 像Pixar和ILM这样的忠实用户一直在使用Python,但在过去一两年里,业界普遍采用了Python。

答案 1 :(得分:1)

是。对于像这样的东西,Python比c ++更容易使用。您可能希望将其用作数据库的前端,例如sqlite3

答案 2 :(得分:1)

也许你应该看看这个项目: Moovida

这是一个完整的媒体中心,开源,用python编写,易于扩展。我不知道它是否会完全符合您的要求,但您可以轻松添加所需的功能。

答案 3 :(得分:1)

当然,几乎任何任务都可以使用几乎任何编程语言。但是在注意到这一点后,很明显不同的语言也适用于不同的任务。

C / C ++是非常“硬件友好”的语言。基本上,语言只是汇编程序之上的一个抽象级别,C使用指针等.C ++几乎就像一个(半)可移植的面向对象的汇编程序,如果想要搞笑的话。 :)这使得C / C ++快速且善于与硬件交谈。

但在其他情况下,这些相同的功能会变得错误。指针可以遍历整个内存,除非你小心,否则你会在整个地方泄漏内存。所以我会说(现在C人会生气)C / C ++实际上直接不合适你想做什么。

你想要一种更高的语言,更多的东西,如内存管理自动和无形。有许多可供选择,但毫无疑问Python非常适合这一点。 Python最近几年出现了编写这类软件的The New Cool Language,而很多多媒体软件如Freevo和已经提到过的Moovida都是用Python编写的。

答案 4 :(得分:1)

如果您希望代码快速实现,请使用C ++(或并行fortran)。

然而,在您的应用程序中,99%的运行时不会出现在您的代码中,它将出现在GUI库,OS调用,等待用户交互,调用库(用C编写)以打开视频文件并制作缩略图,那种东西。

因此,使用C ++将使您的代码速度提高100倍,因此您的应用程序将快1%,这完全没用。如果你用C ++编写它就需要几个月,而使用Python你会更快完成并且有更多的乐趣。

使用C ++甚至可以使它慢得多,因为在Python中你可以通过使用像哈希,集合,生成器等超级强大的原语来轻松构建更具可伸缩性的算法,在5分钟内尝试几种算法来查看哪一个是最好,导入一个已完成90%工作的图书馆等。

用Python编写。