2

私は Xuggle を使用して ip-camera からインターレース ビデオを再生していますが、実際には FFMpeg に存在する deinterlace オプションが必要です (Xuggle は FFMpeg ライブラリの Java ラッパーです)。

残念ながら、デインターレース オプション (私の間違いでなければ "-vf yadif") は Xuggle では公開されていません。だから、Java BufferedImage デインターレースの純粋な 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

誰かがこの点で私を助けてくれますか?

4

1 に答える 1

0

JNIを介してFFMPEGのyadifフィルターを使用しました。Java の実現は非常に遅かった。

于 2012-11-19T20:19:14.477 に答える