Android TextureView.getBitmap () ist sehr langsam

9

Ich habe eine Android-App mit der Kamera konfiguriert, um ihre Vorschau an eine TextureView zu senden. In der onSurfaceTextureUpdated-Methode meines SurfaceTextureListener ziehe ich den Vorschau-Frame als Bitmap heraus mit:

%Vor%

Es funktioniert gut, dauert aber sehr lange (ca. 200-250 ms für ein 720x1280 Bild). Es scheint, dass dies viel schneller gehen sollte. Irgendwelche Gedanken darüber, wie ich die Leistung dieser Operation verbessern kann?

    
ajselvig 31.05.2013, 04:40
quelle

1 Antwort

-1

Wenn Sie diesen Befehl verwenden, um die Vorschau zu erhalten, wird aus der Vorschau eine neue Bitmap generiert. Dies dauert so lange, bis die Anwendung ausgeführt wird. Mein Vorschlag wäre, diese Operation in einem Hintergrund-Thread durchzuführen, der in diesem Link erklärt wird:

Ссылка

Außerdem können Sie Operationen stapeln, bei denen dieser Vorgang zuerst in der onPostExecute-Funktion abgeschlossen werden muss.

Dies ermöglicht es dem Haupt-UI-Thread zu funktionieren und auf alles reagieren zu können, was der Benutzer während dieser Zeit möglicherweise tun muss.

Dies ist vielleicht nicht die perfekte Antwort, die Sie suchen, aber ich hoffe, es hilft.

    
sp10acnFIFO 21.07.2014 10:59
quelle

Tags und Links