реклама на сайте
подробности

 
 
> JPEG для ARM_, исходники прилагаю
etoja
сообщение Jul 31 2008, 13:15
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Утомили балбесы вроде Nixona, рекомендующие поиск.
Не знаешь - молчи.

Для Anatoly_P выкладываю простой исходник декодера jpeg с описанием формата и полезными примечаниями.
Прикрепленные файлы
Прикрепленный файл  jpeg_decoder.zip ( 25.97 килобайт ) Кол-во скачиваний: 300
 
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 27)
Nixon
сообщение Jul 31 2008, 13:22
Сообщение #2


Гуру
******

Группа: Админы
Сообщений: 2 736
Регистрация: 17-06-04
Из: Киев
Пользователь №: 48



Э, за что ж меня так?


--------------------
Вам помочь или не мешать?
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Jul 31 2008, 15:00
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(etoja @ Jul 31 2008, 16:15) *
Утомили балбесы вроде Nixona, рекомендующие поиск.
Не знаешь - молчи.

Для Anatoly_P выкладываю простой исходник декодера jpeg с описанием формата и полезными примечаниями.


Огромное спасибо. А то я уже начал разбираться в коде для компов...
Т.к. действительно уже дофинга описаний из нета закатал. Т.е что-то удобоваримое фик найдешь..
Вообщем спасибо и большое..
Пойду домой со спокойной душой, а завтра разберемся yeah.gif
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 1 2008, 06:24
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Здрасте!
Посмотрел сегодня файл с кодом...
М-да. Я уже такой начал ковырять раньше
Он вообщем-то не для АРМ т.к. там есть ассемблерные вставки вроде как не АРМ.
Этот файл я без переделок и проблем откомпилировал на Вижуал студии и все работает.
так что для АРМ буду переделывать, надеюсь не много придется
Go to the top of the page
 
+Quote Post
SergeiCh
сообщение Aug 1 2008, 08:02
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 99
Регистрация: 22-03-07
Из: Novosibirsk
Пользователь №: 26 415



В microwindows есть ссылка на этот ресурс. Не смотрели?
Go to the top of the page
 
+Quote Post
AndrewN
сообщение Aug 1 2008, 08:06
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 336
Регистрация: 7-03-07
Из: Петербург
Пользователь №: 25 961



Цитата(Anatoly_P @ Aug 1 2008, 09:24) *
Он вообщем-то не для АРМ т.к. там есть ассемблерные вставки вроде как не АРМ.


Ассемблерные вставки аккуратно сделаны под ватком на х86. А где же #include "jpegdec.h"?
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 1 2008, 11:09
Сообщение #7


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата
Ассемблерные вставки аккуратно сделаны под ватком на х86. А где же #include "jpegdec.h"?

Этот пример найдёте на ресурсе, из поста SergeiCh-а.
Кстати, uC/GUI имееет функции работы с BMP и JPEG файлами...


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 1 2008, 11:46
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(SergeiCh @ Aug 1 2008, 11:02) *
В microwindows есть ссылка на этот ресурс. Не смотрели?

Есть у меня и это, но там слишком дофига. так сказать на все случае жизни. Лучше вышеуказанный пример портировать на АРМ.
Чем сейчас и занимаюсь
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 1 2008, 12:04
Сообщение #9


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Лучше вышеуказанный пример портировать на АРМ.


Рекомендую сразу IDCT на целочисленный заменить. Float - это не для мелких ARM'ов. Взять его можно в jpeg-6b, файл jidctfst.c, но еще надо глядеть на коэффициенты, там хитрость есть.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 1 2008, 12:11
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Главная проблема пока видится в том, чтобы с меньшими затратами определить, что делают асмовские вставки . Я в асме для 086 совсем не силен
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 2 2008, 14:17
Сообщение #11


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



uC/GUI написана на чистом С...


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Aug 2 2008, 21:24
Сообщение #12


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(VAI @ Aug 2 2008, 18:17) *
uC/GUI написана на чистом С...

неправда. Асмовые модули лежат в папке uC-CPU - посмотрите в любом порте
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 3 2008, 04:57
Сообщение #13


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата
неправда. Асмовые модули лежат в папке uC-CPU - посмотрите в любом порте

Я про GUI, а Вы про саму ось...
Вот здесь Itch давал ссылку на сборку uC/GUI, в которой есть JPEG, Memdev, Multilayer.
Проверил, качается.
И ни какого асма.


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Aug 3 2008, 09:16
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(VAI @ Aug 3 2008, 08:57) *
Я про GUI, а Вы про саму ось...

сорри, ступил, вы правы.
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 4 2008, 14:54
Сообщение #15


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Похоже вариантов исходников JPG в сети только два: один от разработчиков формата, а второй от Cristi Cuturicu.
Первый вариант слишком большой т.к. на все случае жизни.
Ковыряние со вторым у меня зашло в тупичок т.к. линковщик пишет, что памяти не хватает crying.gif

Error: L6406W: No space in execution regions with .ANY selector matching Section .bss(jpegdec.o).
Error: L6407W: Sections of aggregate size 0xa13b4 bytes could not fit into .ANY selector(s).

Может кто знает, как это обойти, проц LPC2468
Go to the top of the page
 
+Quote Post
VAI
сообщение Aug 5 2008, 03:10
Сообщение #16


Профессионал
*****

Группа: Модераторы
Сообщений: 1 120
Регистрация: 17-06-04
Пользователь №: 37



Цитата(Anatoly_P @ Aug 4 2008, 19:54) *
Похоже вариантов исходников JPG в сети только два: один от разработчиков формата, а второй от Cristi Cuturicu.

Вы совсем слепой? А чуть выше я ссылку на uC/GUI дал. И русскими буквами написано, там есть поддержка JPG, и написана на С.


--------------------
Если зайца бить, его можно и спички научить зажигать
Сколько дурака не бей - умнее не будет. Зато опытнее
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 5 2008, 05:37
Сообщение #17


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(VAI @ Aug 5 2008, 06:10) *
Вы совсем слепой? А чуть выше я ссылку на uC/GUI дал. И русскими буквами написано, там есть поддержка JPG, и написана на С.

Вот не надо ругаться, скатал я исходники по Вашей ссылке. Так они точно такие(во всяком случае очень похожи с первого взгляда), как на сайте разработчиков JPG. Это и логично, зачем изобретать велосипед, если разработчики формата дают код. Только там все в куче и конвертация из формата в формат и кодирование и декодирование. А хотелось бы код только декодера...
Go to the top of the page
 
+Quote Post
etoja
сообщение Aug 5 2008, 09:03
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Код у румынского программиста очень хороший: структурирован, прост и понятен.
Я портировал его тексты для LPC2138 и LPC2106.
Все вопросы можно решить, предварительно почитав описание JPEG.
Лучшим описанием JPEG является, к сожалению, американский армейский стандарт.
Прикрепленные файлы
Прикрепленный файл  jpeg_us_mil.zip ( 1016.11 килобайт ) Кол-во скачиваний: 303
 
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 6 2008, 06:45
Сообщение #19


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(etoja @ Aug 5 2008, 12:03) *
Код у румынского программиста очень хороший: структурирован, прост и понятен.
Я портировал его тексты для LPC2138 и LPC2106.
Все вопросы можно решить, предварительно почитав описание JPEG.
Лучшим описанием JPEG является, к сожалению, американский армейский стандарт.

А я вот к сожалению в портированию застрял на нехватке памяти... У меня только 512к внешней ОЗУ. Данные по алгоритму румынского товарища туда не помещаются. Не подскажете Вы как с этим обошлись?
Спасибо за стандарт, счас начну читать...
Go to the top of the page
 
+Quote Post
Rst7
сообщение Aug 6 2008, 07:07
Сообщение #20


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



Цитата
Данные по алгоритму румынского товарища туда не помещаются.


Простите, но там нужен входной буфер, выходной (размером с картинку), 64 элемента буфера DCT, таблички уровней квантизации (мелочь, по 64 байта) и табличка Хаффмана (это побольше, но в пределах нескольких килобайт). Как Вы ухитряетесь не помещаться, не понятно. Приведите map-файл, чтоли...


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
etoja
сообщение Aug 6 2008, 07:34
Сообщение #21


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Про память:
1) Если вам нужна картинка целиком, то потребуется память на весь несжатый кадр.
2) Если картинку нужно отображать на экране, то обрабатывайте квадратики 8х8 в порядке их чтения из
jpeg файла и сразу отправляйте на отображение в видеоконтроллер.
3) Буфер для входного jpeg файла тоже не нужен, поскольку jpeg файл состоит из записей о квадратиках 8х8, которые вы последовательно читаете и обрабатываете.
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 6 2008, 14:08
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(etoja @ Aug 6 2008, 10:34) *
Про память:
1) Если вам нужна картинка целиком, то потребуется память на весь несжатый кадр.
2) Если картинку нужно отображать на экране, то обрабатывайте квадратики 8х8 в порядке их чтения из
jpeg файла и сразу отправляйте на отображение в видеоконтроллер.
3) Буфер для входного jpeg файла тоже не нужен, поскольку jpeg файл состоит из записей о квадратиках 8х8, которые вы последовательно читаете и обрабатываете.

Спасибо за советик, в ходе разборок к этому и шел. Но не хотелось сильно в сам алгорит декодирования вникать, а там таблица Хофмана с каким-то полем V на 65 килобайт. А переменных для этой таблицы две по 4 т.е. все мои 512 к и сожрут..
Вообщем придется таки в алгоритм въезжать
Go to the top of the page
 
+Quote Post
etoja
сообщение Aug 6 2008, 14:23
Сообщение #23


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Декодирование по Хафману можно поместить в несколько килобайт (код+данные).
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 8 2008, 08:40
Сообщение #24


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(etoja @ Aug 6 2008, 17:23) *
Декодирование по Хафману можно поместить в несколько килобайт (код+данные).

Еслиб Вы ещё и ссылку подкинули, где этот алгоритм доходчиво описан, то совсем здоро былобы..
:-)
Go to the top of the page
 
+Quote Post
etoja
сообщение Aug 8 2008, 09:11
Сообщение #25


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Алгоритм и исходники Стэнфордского университета.

Кстати, высокое качество образования Стэнфордского университета связано с переводом на английский язык лекций российского Имперского физико-технического института ещё в царское время. После революции этот институт, организованный 175 лет назад, был переименован в Бауманский.
Прикрепленные файлы
Прикрепленный файл  PVRG_JPEG.zip ( 332.34 килобайт ) Кол-во скачиваний: 194
 
Go to the top of the page
 
+Quote Post
Anatoly_P
сообщение Aug 11 2008, 06:48
Сообщение #26


Участник
*

Группа: Участник
Сообщений: 32
Регистрация: 3-05-08
Из: Minsk
Пользователь №: 37 240



Цитата(etoja @ Aug 8 2008, 12:11) *
Алгоритм и исходники Стэнфордского университета.
...


О!! Большое спасибо. Таких исходников больше ни у кого не было. Да ещё с описанием файлов. Совсем шикарно. smile.gif Только пока я добрался уже 25 человек скатало.... smile.gif
Спасибо.
Пока другим занимаюсь, но от JPEG мне не отделаться...
(Хотел я в свое время в Бауманский поступать, но учился, можно сказать, в соседнем)
Go to the top of the page
 
+Quote Post
Vitaliy_ARM
сообщение Aug 13 2008, 15:45
Сообщение #27


Знающий
****

Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246



Цитата(etoja @ Aug 8 2008, 13:11) *
Алгоритм и исходники Стэнфордского университета.

Кстати, высокое качество образования Стэнфордского университета связано с переводом на английский язык лекций российского Имперского физико-технического института ещё в царское время. После революции этот институт, организованный 175 лет назад, был переименован в Бауманский.


Может бросите ссылку на исходники этого университета.

И еще один нескромный вопрос, кто нибудь с MJPEG работал? Уже неделю не могу нормальной доки найти. Судя по тому что нашел он очень просто делается из JPEG-ов, но как при это формируется файл видео?

Сообщение отредактировал Vitaliy_ARM - Aug 13 2008, 15:46


--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Aug 14 2008, 07:00
Сообщение #28


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(Vitaliy_ARM @ Aug 13 2008, 19:45) *
И еще один нескромный вопрос, кто нибудь с MJPEG работал? Уже неделю не могу нормальной доки найти. Судя по тому что нашел он очень просто делается из JPEG-ов, но как при это формируется файл видео?


bmrc.berkeley.edu MJPEG_chunkfile
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 04:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.01621 секунд с 7
ELECTRONIX ©2004-2016