我正在使用OpenIMAJ在视频上绘制面部关键点,但它本身就停留在第一步。 这是我试图运行的代码::
Video<MBFImage> video;
video = new XuggleVideo("file://E:/AV/out2.flv");//XuggleVideo("file:"+fileName);
VideoDisplay<MBFImage> display = VideoDisplay.createVideoDisplay(video);
display.addVideoListener(
new VideoDisplayListener<MBFImage>() {
public void beforeUpdate( MBFImage frame ) {
FaceDetector<DetectedFace,FImage> fd = new HaarCascadeDetector(40);
List<DetectedFace> faces = fd.detectFaces( Transforms.calculateIntensity(frame));
for( DetectedFace face : faces ) {
frame.drawShape(face.getBounds(), RGBColour.RED);
}
}
public void afterUpdate( VideoDisplay<MBFImage> display ) {
}
});
当我运行它时打印
在屏幕上file:/// E:/AV/out2.flv URL文件:/// E:/AV/out2.flv无法打开 通过ffmpeg。尝试打开URL到URL。 11:14:12.505 [Finalizer] DEBUG com.xuggle.xuggler - 关闭悬空容器 (../../../../../../../ CSRC / COM / xuggle / xuggler / Container.cpp:146)
然后就消失了。如果我使用video = new XuggleVideo(new File(“E:/AV/out2.flv”)),结果是一样的;
此外,如果我将文件保留在项目中,然后执行video = new XuggleVideo(new File(“out2.flv”));我得到了相同的结果。
如果我将链接放在浏览器中,我就可以访问该文件。出了什么问题?
更新:我得到了这个
out2.flv 12:03:06.485 [Finalizer] DEBUG com.xuggle.xuggler - 关闭 悬空集装箱 (../../../../../../../ CSRC / COM / xuggle / xuggler / Container.cpp:146)
如果我使用video = new XuggleVideo("out2.flv");
答案 0 :(得分:0)
删除“文件”并仅将您的路径设为“E:/AV/out2.flv”。它会起作用。