Dlaczego kompresja PNG jest znacznie wolniejsza niż JPEG na Androida?
Bawiłem się trochę bitmapami na Androida i dowiedziałem się, że kompresja PNG zajmuje znacznie więcej czasu niż nawet najwyższej jakości JPEG. O wiele wiele więcej. W moim urządzeniu może to być około 10 sekund przeciwko 1.
AFAIK, PNG to w zasadzie filtrowane ciągi pikseli skompresowanych z deflacją. Cóż, znalezienie najlepszego filtru dla każdego ciągu może być czasochłonnym zadaniem, ale może wystąpić kompromis między szybkością a skutecznością kompresji. Nie powinno być tak wolniej niż JPEG. Jak to możliwe?
Może to na odwrót. Czy na Androida działa ultraszybka implementacja JPEG?
AKTUALIZACJA: Naprawdę po prostu robię takie rzeczy
mBitmap.compress(CompressFormat.JPEG, 100, stream);
i
mBitmap.compress(CompressFormat.PNG, 100, stream);