У меня программа очень часто берет битмап и переводит его в массив байтов, следующим образом:
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 5, bytes);
И потом я беру массив из bytes
. Мне нужно как-то ускорить работу метода compress
, подскажите пожалуйста как. Может есть какой-то еще способ перевести bitmap в массив байтов. Но дело в том, что я массив потом еще передаю через Socket
, поэтому огромным он не должен быть.
И еще, этот битмап я получаю с image
. Вот код:
Image.Plane[] planes = image.getPlanes();
ByteBuffer buffer = planes[0].getBuffer();
int pixelStride = planes[0].getPixelStride();
int rowStride = planes[0].getRowStride();
int rowPadding = rowStride - pixelStride * displayWidth;
bitmap = Bitmap.createBitmap(displayWidth + rowPadding / pixelStride,
displayHeight, Bitmap.Config.ARGB_4444);
bitmap.copyPixelsFromBuffer(buffer);
По этому если кто-то знает, может сам экземпляр Image
можно передать как-то, чтобы времени много не занимало, то скажите пожалуйста
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
ПриветСама ассоциация работает правильно, но не сохраняется author_id у поста
есть заполненный числовой двумерный массив А[N][W] (по условию верхняя строка нули, а справа внизу максимум) и вектор w[N], и требуется следуя...
В приложения программно (Java коде) вывожу несколько LinearLayoutНе как не могу поставить программно этому LinearLayout фон имеющего drawable