Video 实时个性化视频

Video 实时个性化视频,video,video-streaming,html5-video,Video,Video Streaming,Html5 Video,我希望实现一个视频,其中包含从数据库或用户输入中提取的自定义文本,如下所示: 有人能在不使用第三方的情况下解释一下这个过程吗?好的,这将是一个非常高层次的答案(没有代码),因为这是一个非常重要的任务。你需要研究一下细节 首先,您需要在原始视频中执行功能跟踪。这将为您提供一组移动点,用于跟踪帧中的对象或对象的一部分。我知道Adobe Premiere Pro包含了一种实现这一点的方法;我假设它提供了一种将坐标保存为可以在软件中使用的格式的方法,尽管我没有实际检查。我猜Final Cut Pro可

我希望实现一个视频,其中包含从数据库或用户输入中提取的自定义文本,如下所示:


有人能在不使用第三方的情况下解释一下这个过程吗?

好的,这将是一个非常高层次的答案(没有代码),因为这是一个非常重要的任务。你需要研究一下细节

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

OpenCV(一个计算机视觉库)也可以进行特征跟踪,如果你想通过编程实现的话

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

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


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

你说的“不使用第三方”是什么意思?你的意思是没有第三方库(在任何平台上编程的标准库之外)?“这可能是非常困难的。”阿尔德尔我的意思是不付钱给第三方使用他们的服务。