![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Привет всем!
Хочу отправить в сеть объект AWT BufferedImage. Дело ясное, что для того, чтобы отправить в сеть объект, он должен быть Serializable, но, увы BufferedImage не таков. Следовательно, надо писать wrapper, котый бы включал в себя данные из BufferedImage и мог бы быть Serializable. Вот 2 штуки таковых:
Все эти wrapper(ы) работают очень медленно и занимают порядка половины секунды на рисунке 1024 * 768, что абсолютно не приемлимо... Посоветуйте, пожалуйста, как ускорить процесс сериализации объекта BufferedImage. -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| Hroft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 20.10.2003 Где: Москва Репутация: нет Всего: 3 |
Я, наверно, жутко туплю, но чем не устраивает
|
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Hroft, так, как ты предложил, работать не будет.
Это сообщение отредактировал(а) val - 16.2.2006, 19:29 -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| Nobody |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
А что именно занимает полсекунды? Сериализация? Или ещё и отправка по сети + десериализация?
-------------------- |
|||
|
||||
| kkorsakoff |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.10.2005 Где: Санкт-Петербург Репутация: нет Всего: 14 |
ИМХО, такой способ не пройдет. Не претендую на единственно правильное решение, но я при помощи ImageIO писал картинку в массив byte и передавал его по сети. Затем на стороне клиента создавал BufferedImage из этого массива. Я сжимал в jpeg, но можно передавать и в png. Скорость была вполне приемлимая. Сама запись картинки в массив - практически мгновенно.
|
|||
|
||||
| val |
|
||||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Да, превращение BufferedImage в сериализирумый объект.
Кой был размер у картинки? -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
||||
|
|||||
| Nobody |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
val, а в каких форматах? Просто если bmp, то это картинка на несколько мегабайт, что довольно много.
-------------------- |
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Ага, BMP. И по-другому никак, так как картинка не должна быть искажена. -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| Nobody |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 25.8.2003 Где: Россия, Москва Репутация: 1 Всего: 16 |
val, Думаю ты с этим ничего не сделаешь.
-------------------- |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
val, а тебе вообще какое веремя нужено?
У меня картинка 1600x1200x24BPP перегоняется в BMP за 200-250 мсек. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Странно, у меня 1024*768*24 перегоняется за 300 мсек.
Какой у тебя JDK и как ты перегоняешь картинку? -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Правда это еще от производительности процессора и типа памяти зависит, у меня самый обычный Celeron 1.8 с 512 метрами на борту...
-------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
JDK 1.5, перегоняю так:
Сегодня для рисунка 1280x1024x24BPP на P4 3.0ГГц получил следующие результаты:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| val |
|
|||
![]() Program developer ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 992 Регистрация: 14.1.2003 Где: г. Киев Репутация: нет Всего: 7 |
Ну, вобщем-то понятно, машинка у тебя, конечно, побыстрее будет, но и то, не совсем так, как хотелось.
Смотри, мне надо захватывать содержимое экрана и отправлять его содержимое в сеть. При самом пройстой реализации этой задачки имеем: 1. Захват экрана в объект BuffredImage длиться примерно 100 мсек. 2. Конвертация - 100 мсек. Имеем - 200 мсек, то есть такая операция даже на твоей мощной машинке возможна только 5 раз в секунду, что, конечно, крайне неприятно. В любом случае, спасибо, мне приятно знать, что я всё делаю правильно. -------------------- Терпимость - величайшее благо человечества... Ярчайший признак интеллекта – постоянно хорошее настроение… |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |