4

我有一个应用程序可以从高清摄像头捕获实时视频并将其流式传输到视频流媒体服务器。我目前使用Adobe Flash Media Live Encoder(FMLE)将捕获的视频流发送到服务器。Java高清视频采集处理和流式传输

问题是FMLE不支持linux。我将acroos VLCJ和Xuggler作为FMLE的替代品,并且这些可以更好地控制编码的媒体,以便我们可以放入可选的运动检测器,滤波器等。是否可以使用VLCJ的视频捕捉支持支持和处理支持我的应用程序的xuggler。我的意思是,是否有任何常见的接口可以将捕获的流从vlcj呈现给Xuggler?

回答

0

没有现有的好的接口来链接这两个库(我知道),但你可能能够在两者之间传输原始数据。

VLCJ的DirectMediaPlayer具有呈现回调它提供了一个钩到所述原始像素数据(参照here特定示例)。通常,这是用于直接像素处理在Java层上(例如使视频灰度在上述例如),但没有真正的理由你为什么不应该能够将数据传递给Xuggler的IBuffer,然后将其转换为IVideoPicture(并从那里你在Xuggler土地。)

我从来没有试图自己做这样的事情,所以可能会有一些额外的刺激,你必须跳过 - 但原则上它似乎是可能的。主要问题是,如果你实时需要它,我认为速度会很快;在高清视频的CPU上做这一切都是你的处理器的问题。