Eu estou trabalhando em um aplicativo AR que faz processamento de imagem pesada usando NDK. O resultado é de 10 quadros na melhor das hipóteses.
Eu acredito que parte do problema é a maneira que eu trabalho com a câmera no Android.
Gostaria de saber qual é a maneira mais eficiente de obter os quadros da câmera no Android 4 e acima.
P.S - Eu estou usando a velha técnica "setPreviewCallback" que eu entendo é muito ineficiente com a memória (aloca memória para cada quadro e, em seguida, GC deve limpar).
Obrigado!
Respostas:
1 para resposta № 1Definitivamente, usando setPreviewCallbackWithBuffer () é mais eficiente. Sua milhagem pode variar, mas o Samsung Note 10 é capaz de servir 30 quadros WVGA por segundo (e codificação). Você não precisa de 4.0 para isso, esta API está disponível desde 2.2.
P.S. Você mediu o tempo que seu processamento de imagem pesado leva?