我正在使用 Xuggle 从 ip-camera 播放隔行扫描视频,并且确实需要去隔行选项,该选项存在于 FFMpeg 中(Xuggle 是 FFMpeg 库的 Java 包装器)。
不幸的是,Xuggle 没有公开去隔行选项(“-vf yadif”,如果我没记错的话)。所以,我对 Java BufferedImage deinterlacing 的纯 Java 解决方案或使 Xuggle 做到这一点的某种方式感兴趣。
现在我只是复制奇数行并丢弃偶数行。它很快,但质量当然不是很好。
// Interlaced image
BufferedImage img = (BufferedImage) event.getImage();
//duplicate odd lines
WritableRaster raster = img.getRaster();
for (int i = 0; i < raster.getHeight(); i += 2) {
int[] arr2 = null;
raster.setPixels(0, i + 1, raster.getWidth(), 1,
raster.getPixels(0, i, raster.getWidth(), 1,arr2));
}
//now img is deinterlaced
有人可以在这方面帮助我吗?