实时个性化视频

时间:2014-11-14 20:53:19

标签: video video-streaming html5-video

我想从数据库或用户输入中获取自定义文本的视频,如下所示: http://videopersonalization.net/kia.html

有人可以在不使用第三方的情况下阐明这个过程吗?

1 个答案:

答案 0 :(得分:1)

好的,这将是一个非常高级的答案(没有代码),因为这是一项非常重要的工作。你需要研究细节。

首先,您需要在原始视频中进行功能跟踪。这为您提供了一组跟踪框架中对象或对象部分的移动点。我知道Adobe Premiere Pro包含了这样做的方法;我假设它提供了一种方法来将坐标保存为您可以在软件中使用的格式,尽管我实际上没有检查过。我猜测Final Cut Pro可能有相同的功能。

如果您想以编程方式完成所有操作,OpenCV(计算机视觉库)也可以进行功能跟踪。

对于每个视频,您需要在曲面上手动选择希望文本显示的几个点。渲染与这些点相关的文本。如何渲染移动文本是一个很大的主题,并且取决于您希望它出现的真实程度,以及您是否希望它与原始视频的光照条件完全匹配。希望你已经对图形有所了解。

在您的服务器软件中,每次请求进入个性化视频时,您都会将视频解码为原始位图帧中的任何格式,将文本渲染到每个帧上,然后将其编码为交付格式如mp4或webm。您可以使用ffmpeg执行此操作,方法是通过命令行版本的ffmpeg或使用软件中的库进行管道传输。如果您想要低延迟,则可能必须在呈现时将视频流回客户端。我最好的猜测是,您链接的示例会执行此操作,尽管视频足够短,可以将整个视频编码为文件,然后传输。

或者,为了节省服务器上的CPU处理,您可以将原始视频发送到Web客户端,加上跟踪点的坐标,并使用WebGL在浏览器中呈现文本。它可能很难保持完美同步。