SurfaceView in Bitmap
Ich versuche zu konvertieren meines SurfaceView (Kamera-Vorschau) in eine Bitmap für die face-detection-on-the-fly. Ich erhalte einen nicht null image, aber wenn ich Sie Anzeige auf einen Blick erscheint es schlicht in schwarz. Irgendwelche Ideen, was könnte der Grund sein und wie ist die Vorgehensweise?
(Ich glaube, es ist schwierig, aber nicht unmöglich, zum extrahieren der bitmap aus einer SurfaceView, aber niemand gepostet hat, keine Lösung)
class BackgroundView extends SurfaceView implements SurfaceHolder.Callback {
public BackgroundView(Context context) {
super(context);
//...
setDrawingCacheEnabled(true);
}
//...
}
private Runnable update = new Runnable() {
public void run() {
//Following statement is sending a black/blank image
faceView.updateFaces(backgroundView.getDrawingCache());
mHandler.postDelayed(update, (long) (1000));
}
};
- hat u haben eine Lösung habe ich auch immer Ebene, leeres Bild.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich habe es auf Arbeit mit der PreviewCallback:
public void onPreviewFrame(byte[] _data, Kamera _camera) {
}
Ich habe ein ähnliches problem, zu versuchen, um die video-frames, die aus einer VideoView. Ich habe versucht, alle Arten von Kombinationen dieser flags:
... (später in einer anderen Ansicht der draw () - Schleife)
Aber die "curFrame" bitmap-Bild, wenn auch nicht auf null, hat eine Breite und Höhe von " -1 " in den debugger. Es kann eine Art von DRM-Implementierung oder etwas, oder einfach nur eine Einschränkung der decoder, aber ich denke nicht, dass es möglich ist, die video-Pixel. Haben Sie vielleicht mehr Glück mit Ihrer Kamera haben Sie versucht, um das Spiel mit setWillNotCacheDrawing()? Lassen Sie mich wissen, wenn es funktioniert, weil das war mein fallback-plan!