0
다른 크기로 뷰의 크기를 축소하려고했지만 몇 가지 문제가 있습니다. 컨텍스트는 비디오 플레이어 내부에 있습니다 (VLCJ 사용).ArrayIndexOutOfBoundsException 스케일을 시도하는 중
이 코드는 이미지의 크기를 조절하는 데 사용되지만 첫 번째 프레임 이후 이미지는 어떤 이유로 다음 이미지로 업데이트가 중지됩니다.
public void newFrameRecieved(int[] rgbBuffer)
{
this.image.setRGB(0, 0, this.size.width, this.size.height, rgbBuffer, 0, this.size.width);
after = new BufferedImage(this.getWidth(), this.getHeight(), this.image.getType());
at = new AffineTransform();
scalingFactorX = (double)this.getWidth()/ (double)this.image.getWidth();
scalingFactorY = (double)this.getHeight()/ (double)this.image.getHeight();
at.scale(scalingFactorX, scalingFactorY);
scaleOp = new AffineTransformOp(at, AffineTransformOp.TYPE_BILINEAR);
this.image = scaleOp.filter(this.image, after);
repaint();
}
중간 부분 (this.image.setRGB (...... 사이의 모든 코드)와() 다시 칠이) 경우 제거 작동 (스케일링 부분을 제외하고 ...)
여러분이 제공 할 수있는 도움에 정말 감사드립니다!
JNA: Callback uk.co.capr[email protected]4516af24 threw the following exception:
java.lang.ArrayIndexOutOfBoundsException: Coordinate out of bounds!
at sun.awt.image.IntegerInterleavedRaster.setDataElements(IntegerInterleavedRaster.java:301)
at java.awt.image.BufferedImage.setRGB(BufferedImage.java:1059)
at myVlcjWrapper.VideoSurfacePanel.newFrameRecieved(VideoSurfacePanel.java:65)
내가 그것을 해결하는 방법에 대한처럼 우둔 해요 문제를 이해 : 받았다 오류는 다음과 같습니다! 감사합니다.
크기를 조정하려는 이미지의 크기가 얼마나 큽니까? 픽셀 단위 – D3181
'image.setRGB'의 기능은 무엇입니까? – bradimus
현실적인 비디오 스트림이기 때문에 나는 말할 수 없다. 나는 1920x1080이라고 확신한다! – Payerl