Вход

Просмотр полной версии : Jpeg viewer



alone
11.10.2013, 17:06
Адаптировал классический вьювер - самый-самый первый вьювер Jpeg на Спекки - под экран ATM Turbo 2 (выбирать режим BRG). Заодно впервые за 9 лет немного ускорил и исправил несоответствие доке при длинных последовательностях #FF, но таких файлов пока не нашёл.

http://alonecoder.nedopc.com/zx/JPG050.rar

jerri
11.10.2013, 17:19
на картинке diskzone.jpg в режиме BRG благополучно сбросилось.

alone
11.10.2013, 17:23
BRG в этой версии требует ATM Turbo 2. Памяти не осталось!

jerri
11.10.2013, 17:24
хмм давно бы интерфейс поменял :)

TSL
01.02.2014, 20:07
Вот к примеру библиотека (http://elm-chan.org/fsw/tjpgd/00index.html) на С, адаптированная для микроконтроллеров. Собирается влёт наверное для любого процессора, для которого есть компилятор С. Лично я собирал ее для Z80 IAR-ом, и проверил - она отлично работает. По скорости на уровне сабжа данного топика. Либа превосходно документирована, сорцы абсолютно читабельны и комментированы, все настройки четко вынесены в хэдер. Практическая польза налицо.

А вот ответь, alone: в чем практическая ценность твоего джпег вьювера?

Vitamin
01.02.2014, 20:11
Возможности Амиги на Спектруме: http://tslabs.info/forum
В чем практическая ценность, если есть Амига и эмуляторы Амиги на самых разных платформ?

TSL
01.02.2014, 20:26
А где я написал что это Амига?

---------- Post added at 18:26 ---------- Previous post was at 18:24 ----------

И да, офтоп же.

Vitamin
01.02.2014, 20:36
А где я написал что это Амига?
Я процитировал.


И да, офтоп же.
Конечно. Библиотеки для микроконтроллеров к спектруму отношения не имеют.

TSL
01.02.2014, 20:39
Разбираем цитату:
"Возможности Амиги на Спектруме".
Т.е. ты считаешь что "возможности Х" и "Х" это то же самое. Садись, зачет по логике.

Библиотеки для микроконтроллеров, процессоров, софтовых корок ФПГА, если они компилируются для Z80 и практически работают на спектруме, ящитаю имеют отношение к спектруму. Согласен ты или нет, не спрашиваю. С логикой мы разобрались в предыдущем пункте.

Vitamin
01.02.2014, 21:00
Т.е. ты считаешь что "возможности Х" и "Х" это то же самое. Садись, зачет по логике.
Т.е. ты считаешь, что "unterY, предоставляющее возможности Х" кому-то нужно при наличии "uberZ, предоставляющего возожности X" и собсно самого "Х"? Садись, незачет по здравому смыслу.


Библиотеки для микроконтроллеров, процессоров, софтовых корок ФПГА, если они компилируются для Z80 и практически работают на спектруме, ящитаю имеют отношение к спектруму.
Вот если работают (есть публично доступные прецеденты), тогда имеют. Иначе- звездунство.

Говоришь, по скорости на уровне сабжа? Отлично, докажи- приложи пару снапшотов с процессом распаковки сабжем и либой чтоб каждый мог убедиться.

TSL
01.02.2014, 21:10
Со здравым смыслом плохо тогда и у автора топика. Зачем на унтерХЗчо джпег вьюевер, если есть i7 с экраном 1920х1080?

---------- Post added at 19:10 ---------- Previous post was at 19:07 ----------

Что касается демонстрации либы, то я замерял время генерации RGB888 бинаря на выходе без каличного дитеринга в АТМ экран. Дитеринг увольте. А sample предоставлю.

Vitamin
01.02.2014, 21:19
Со здравым смыслом плохо тогда и у автора топика. Зачем на унтерХЗчо джпег вьюевер, если есть i7 с экраном 1920х1080?
На этом форуме у все со здравым смыслом плохо, если рассматривать с этой точки зрения. Только вот некоторые альтернативно одаренные считают, что их just for fun важнее, чем чужой.


Что касается демонстрации либы, то я замерял время генерации RGB888 бинаря на выходе без каличного дитеринга в АТМ экран. Дитеринг увольте.
И с чем сравнивалось это время? "Опустим газету в серную кислоту, а журнал в дистиллированную воду. Вы видите какая разница?"


А sample предоставлю.
Отличненько!
Распаковка ч/б картинки 256х192 на обычный спековский экран с флойдом (ну или обычный threshold с поправкой на дизер) - имхо, самый простой кейс.
Ах да, есть еще один вьювер джпегов на спектруме. Его тоже бы не мешало включить в сравнение.

Strunov
01.02.2014, 21:20
де без каличного дитеринга в АТМ
экран. Дитеринг увольте.

Что вы делаете на этом форуме? Какой смысл рендерить в нечто, что невозможно вывести на экран спектрума, и рассказывать про это на ЭТОМ форуме.....

TSL
01.02.2014, 21:22
Опять проблемы с логикой.
Во1х: кто сказал, что RGB888 невозможно после необходимой обработки вывести на экран спектрума?
Во2х: АТМ - спектрум только в мозгах его главного пиараса. Для большей части этого форума это либо НЕ спектрум, либо неведомое нечто. Не говоря уже про ВоС и поуэт.

Vitamin
01.02.2014, 21:23
Strunov, зачем же так резко? Товарищ не знал, что громкие заявления надо подкреплять доказательствами. Но он обещал исправиться. Надеюсь на это и уповаю.

TSL
01.02.2014, 21:31
Ха. Ну допустим скорость будет поменьше. Предполагаемый список того, что еще надо доказывать:
1. Что компилится под з80.
2. Что генерит аутпут из джпега.
3. Что сорцы читаемы и понимаемы.
4. Что автор их подробно прокомментировал и избежал намека на компетенцию потенциального их читателя.
5. ????

---------- Post added at 19:28 ---------- Previous post was at 19:27 ----------



Ах да, есть еще один вьювер джпегов на спектруме. Его тоже бы не мешало включить в сравнение.
Приложи если не затруднит.

---------- Post added at 19:31 ---------- Previous post was at 19:28 ----------


в чем практическая ценность твоего джпег вьювера?
Какбэ автор отвечать не будет?

Vitamin
01.02.2014, 21:35
1. Что компилится под з80.
Доказательство само по себе бессмысленно. Интересен результат компиляции разными компиляторами.


2. Что генерит аутпут из джпега.
Бгг... Если не генерит, о чем речь тогда?


3. Что сорцы читаемы и понимаемы.
Целиком и полностью соглашаясь с важностью этого фактора как программист, замечу, что пользователю программы глубоко похрен насколько читаемы и понимаемы сорцы. Распаковка джпега- это конечная задача, а значит вносимые изменения маловероятны (разумеется, при наличии хорошего интерфейса, подходящего под широкий спектр окружений).


допустим скорость будет поменьше
А вот уже исходя из вышеперечисленного, можно и решать, стоит ли овчинка выделки.

---------- Post added at 21:35 ---------- Previous post was at 21:34 ----------


Приложи если не затруднит.
Jpeg/Gif Laboratory v1.6 by SAM style (http://vtrdos.ru/system/GFXCON16.ZIP)

Strunov
01.02.2014, 21:45
кто сказал, что RGB888 невозможно
после необходимой обработки вывести на
экран спектрума ?
И что же это интересно будет за обработка? Уж не каличный ли дизеринг?

TSL
01.02.2014, 22:48
Конечно каличный. А ты знаешь такой дитеринг из труколора, чтоб на 6912 не выглядел каличным? Отсюда и вопрос (задаю в 3й раз): а нафига?
Либа, которую я привел, является отличным примером, по которому юзер сможет:
1) собрать не глядя депакер джпегов для любой своей поделки,
2) разобраться в принципе работы алго джпег распаковки,
3) улыбнуться и заняться производством действительно полезного софта для (не)любимого детища КС.
А вот с сабжем данного топика проканает только п.3.
----
Витамин, хитрый ты человек. Заставил меня писать софты, будто мне делать нечего. Будет тебе и пример и сравнение результатов :v2_dizzy_tea:

perestoronin
01.02.2014, 23:28
jpeg как бы из прошлого, может png кто захочет попробывать на z80 ?

psb
02.02.2014, 18:41
может png кто захочет попробывать на z80 ?
тоже взять либу и скомпилить в иаре? что пробовать-то? оно БУДЕТ работать.

perestoronin
02.02.2014, 22:08
тоже взять либу и скомпилить
если сделаете и поделитесь результатами и набором тестовых картинок png оптимизированных под максимальную скорость просмотра на спектруме, я только благодарен буду.

goodboy
02.02.2014, 23:44
если сделаете и поделитесь результатами и набором тестовых картинок png оптимизированных под максимальную скорость просмотра на спектруме, я только благодарен буду.
а максимальный размер файла в trdos не смущает ?

Vitamin
02.02.2014, 23:45
а максимальный размер файла в trdos не смущает ?
636кб?:) Вполне хватит чтоб вместить довольно большую картинку.

TSL
03.02.2014, 00:54
а максимальный размер файла в trdos не смущает ?
А... кхм.. я собсно про трдос даже думать не собирался.

perestoronin
03.02.2014, 02:00
а максимальный размер файла в trdos не смущает ?
Нет, не смущает, я не предполагал просмотр png картинок не оптимизированных в png формате под экран спектрума или какой-либо улучшенной его версии (АТМ, Профи, ZX-Evo).

Пережимать на лету для просмотра картинки я даже и не прошу, лишь только возможность отображать заранее подготовленные картинки в формате png с разрешением под экран спектрума и, если удастся, отображать часть картинки png в режиме окна просмотра части картинки с возможностью курсором перемещать окно просмотра по картинке.

psb
03.02.2014, 02:26
если сделаете и поделитесь результатами и набором тестовых картинок png оптимизированных под максимальную скорость просмотра на спектруме, я только благодарен буду.
а дальше что? ради чего мне тратить свое время на неинтересные мне вещи? или есть сомнения, что оно заработает?

Vitamin
03.02.2014, 07:07
или есть сомнения, что оно заработает?
Различий между теорией и практикой на практике больше, чем в теории. И есть только единственный способ это проверить... Но он чисто теоретический.

TSL
03.02.2014, 13:08
Слушай, да ты прям тролишь во нарушение всех правил форума! Если я собрал сорец, дал на вход тестовую картинку с сорцов автора, получил на выходе РГБ битмап, этого не достаточно?

Vitamin
03.02.2014, 14:24
Слушай, да ты прям тролишь во нарушение всех правил форума! Если я собрал сорец, дал на вход тестовую картинку с сорцов автора, получил на выходе РГБ битмап, этого не достаточно?
Это ты к кому обращался?

Лично я жду обещанный прототип, позволяющий оценить скорость распаковки и удобство использования. Это архиполезное дело (в отличие от разглагольствований "возьмите библиотеку и будет щастье, не царское это дело пробовать самому"). Так что распри- за кадром.

psb
03.02.2014, 15:25
Это архиполезное дело
имхо - сомнительно. так и так оно на спеке малоюзабельно.

Vitamin
03.02.2014, 15:30
на спеке малоюзабельно.
Вот этот вопрос как раз и выясняет TSL.

psb
03.02.2014, 15:35
Vitamin, тут дойдет до того, что есть спек или не спек. на 14/28/50 мгц и 256ц может быть вполне юзабельно.

я уж не говорю, что есть мнение, что медленный вывод картинки - это ок и никак не мешает. я его не разделяю, но оно есть. так что все тут субъективно.

Vitamin
03.02.2014, 15:38
psb, вопрос один-единственный: окупает ли удобство использования внешней библиотеки разницу в скорости или нет. Каким боком оверклок и оверцвета связаны с дилеммой "быстро на асме" или "понятно на С"?

psb
03.02.2014, 15:50
есть разница в декодинге (предположим) 10 сек и 12 сек? и то, и другое медленно. но в одном можно разобраться и перезаюзать, а другое - сложно.

Vitamin
03.02.2014, 15:52
есть разница в декодинге (предположим) 10 сек и 12 сек? и то, и другое медленно. но в одном можно разобраться и перезаюзать, а другое - сложно.
Ответ очевиден- будут брать более удобное. Ты какого-то другого ответа ждал?

TSL
03.02.2014, 15:53
Vitamin, тут дойдет до того, что есть спек или не спек. на 14/28/50 мгц и 256ц может быть вполне юзабельно.

А я и сделаю под 256с. Не под АТМ же.

Vitamin
03.02.2014, 15:55
А я и сделаю под 256с. Не под АТМ же.
Сделай сначала под обычный экран. Чтоб было с чем сравнивать.

psb
03.02.2014, 15:55
Ответ очевиден- будут брать более удобное.
конечно очевиден:) но очевидно то, что всё оно неудобное;) к слову, интерфейс тоже играет роль в этом, но никак не относится к самому декодеру, о котором здесь речь.


А я и сделаю под 256с.
а это не спектрум:)

Vitamin
03.02.2014, 15:58
всё оно неудобное
А что же тогда "удобное" на твой взгляд?

TSL
03.02.2014, 16:03
Сделай сначала под обычный экран. Чтоб было с чем сравнивать.
Даже не собираюсь. Аргументы приводил выше. Тратить время на еще одно жалкое подобие, увольте.


а это не спектрум:)
Конечно. Как и АТМ. :D

psb
03.02.2014, 16:05
А что же тогда "удобное" на твой взгляд?
вменяемый интерфейс + вменяемая скорость. ждать кучу времени пока прорисуется одна картинка - это не есть удобство. вот на пц - удобно. на 50 мгц и хотя бы 256ц, возможно, тоже будет удобно. это имхо.

Vitamin
03.02.2014, 16:07
Даже не собираюсь. Аргументы приводил выше. Тратить время на еще одно жалкое подобие, увольте.
Т.е. заявления "по скорости на уровне сабжа данного топика" так и останутся высосанными из пальца? Ну ок, соси дальше, не отвлекайся...

TSL
03.02.2014, 16:40
А то. Скорость на глаз замеряешь на вменяемом вьювере с вменяемым аутпутом. А мерять скорость на бесполезной поделке - не вижу смысла.

---------- Post added at 14:40 ---------- Previous post was at 14:33 ----------

Кстати, в который раз не услышал ответа: в чем смысл сабжа данного топика.
Вопрос был Алону, но интересно услышать и твое мнение (Vitamin).

perestoronin
03.02.2014, 16:43
в чем смысл
В чём смысл лабораторных работ был на примитивных даже по меркам 90х процессоров и контроллеров?
Так же и здесь, смысл есть, так как большинство пользователей zx слабы по части программирования даже на Бейсике.
Думаю им было бы интересно поковырять подобный проект как в топике.

Vitamin
03.02.2014, 16:45
в чем смысл сабжа данного топика.
Порт известной спектрумовской софтины под АТМ. Смысла столько же, сколько в оригинальном софте.

---------- Post added at 16:45 ---------- Previous post was at 16:44 ----------


вменяемый интерфейс
И чем невменяем интерфейс упомянутой либы tjpgd?

TSL
03.02.2014, 16:46
В чём смысл лабораторных работ был на примитивных даже по меркам 90х процессоров и контроллеров?
Я и в 90-х не видел в нем никакого смысла. Тупо прокачка ЧСВ преподов, которые даже в 90-х давали студикам хтонические чумаданы с 8080 и светодиодными восьмерками. Когда в то же время в Польше студики проходили лабы на асме на 386х.

---------- Post added at 14:46 ---------- Previous post was at 14:45 ----------


Порт известной спектрумовской софтины под АТМ. Смысла столько же, сколько в оригинальном софте.
Т.е. дважды бессмысленный софт. ОК.

Vitamin
03.02.2014, 16:48
Т.е. дважды бессмысленный софт. ОК.
Предположим. А чего осмысленного и относящегося к спеку вообще есть?

TSL
03.02.2014, 16:54
Демы, тысячи их. Игры, овер 9000. То что выглядит красиво by design, а не каличным подобием и жалкой попыткой впихнуть невпихуемое и всем доказать что и на спеке можно распаковывать RAR-ы. Причем на все 128 килобайт.

Vitamin
03.02.2014, 17:01
Демы, тысячи их
Пфффф... И в чем их смысл? Просмотр джпега тоже можно рассматривать как дему есичо.


То что выглядит красиво by design
У каждого свое понятие красоты. Кто-то на код любуется в отладчике, кто-то на заставки.


а не каличным подобием и жалкой попыткой впихнуть невпихуемое и всем доказать что и на спеке можно распаковывать RAR-ы. Причем на все 128 килобайт.
Ну ты же пытаешься невпихуемые спрайтеги в прошивку пентевы затолкать, выкидывая нахрен все остальное. Чем это хуже?

Я ж говорю- некоторые альтернативно одаренные считают, что их хобби самое хоббистое хобби из всех хоббей.

TSL
03.02.2014, 17:17
Ну, кто на что. Сальвадор Дали на какашки любовался. Да, критерий красоты - штука противоречивая.
Спрайтики кстате вполне впихуемы, и вполне гармонично впихнуты. Некоторые вон до сих пор на них облизываются, а хрен им ггг.

Hacker VBI
03.02.2014, 17:29
TSL, давай уже жпеги, во что угодно)

TSL
03.02.2014, 17:36
Спокуха чувак! Усе буде )

alone
14.07.2014, 20:43
TSL> Что касается демонстрации либы, то я замерял время генерации RGB888 бинаря на выходе без каличного дитеринга в АТМ экран. Дитеринг увольте. А sample предоставлю.

Всё-таки не верится насчёт скорости. Где sample?

alone
14.07.2014, 23:03
Похоже, ответа не будет.

TSL
14.07.2014, 23:06
За это время я успел прикрутить либу к АРМ Cortex M3 и она щас работает на объекте, показывает простому нороту рекламу на плазмах 55", а времени на фигню не нашлось. Подожди, придет и твоя очередь.

alone
16.07.2014, 14:53
Я понимаю, что бампание темы про твою конфу много времени занимает, но когда будет обещанный sample? Ты, кстати, не мне его обещал. Мне ты много чего другого обещал.

TSL
16.07.2014, 15:05
Я понимаю, что бампание темы про твою конфу много времени занимает, но когда будет обещанный sample? Ты, кстати, не мне его обещал. Мне ты много чего другого обещал.
Ты кто, мальчик? О_о

John North
16.07.2014, 19:33
слилось чё..

TSL
19.10.2014, 10:34
Обещанного три года ждут.
Сабж для 6912 и тсконф.

Что умеет:
- пруф оф концепт, потому гуя и тд нету,
- 2 версии: для 6912 - без дитеринга и цвета - тупо старший бит зеленого канала, для TS-Conf - 256 цветов на экране, формат цвета RGB 3:3:2, тоже без дитеринга, вполне смотрибельно,
- джпеги любого разрешения, но масштабирование не производится, а отображается только верхний левый прямоугольник, 256х192 для 6912 и 320х240 для тсконфы,
- никакие трдосы не поцдерживаются, вместо этого используется SD карта, засунутая в Z-Controller. Поддерживаются все типы карт и все типы фатов.

Как юзать:
- накидать с корень сдкарты джпегов,
- запустить софт,
- эникей позволяет прерывать распаковку текущей картинки и переходить к следующей.

Использованы либы ChaN-а PetitFS (http://elm-chan.org/fsw/ff/00index_p.html) и TJpgDec (http://elm-chan.org/fsw/tjpgd/00index.html). На слепить все в кучу ушло часа 4 общего времени.
Скорость работы ужасная - у скептически настроенного спектрумиста может возникнуть ощущение, что декодер написан на бейсице, но это не так. Зато работает надежно и стабильно. Вообще, есть сильное подозрение, что код декодера сильно неоптимальный, потому что тестировал на том же иаре джпег энкодер(!) (https://code.google.com/p/jpegant/) и он работает раз в 6 быстрее, чем собсно декодер.

Сорцы в аттаче, IAR можно взять отсюда (https://dl.dropboxusercontent.com/u/31743315/Dev/IAR%20ewz80.rar).

TSL
19.10.2014, 10:35
слилось чё..
Декодни джпегцов.

Sergey
19.10.2014, 22:07
Декодни джпегцов.
слилось чё..

sergio78
20.10.2014, 19:28
ничего не понял? из за чего вообще базар?

denpopov
20.10.2014, 19:38
ничего не понял? из за чего вообще базар?

так...отголоски...