|
JPEG для ARM_, исходники прилагаю |
|
|
|
Jul 31 2008, 15:00
|
Участник

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

|
Цитата(etoja @ Jul 31 2008, 16:15)  Утомили балбесы вроде Nixona, рекомендующие поиск. Не знаешь - молчи.
Для Anatoly_P выкладываю простой исходник декодера jpeg с описанием формата и полезными примечаниями. Огромное спасибо. А то я уже начал разбираться в коде для компов... Т.к. действительно уже дофинга описаний из нета закатал. Т.е что-то удобоваримое фик найдешь.. Вообщем спасибо и большое.. Пойду домой со спокойной душой, а завтра разберемся
|
|
|
|
|
Aug 1 2008, 06:24
|
Участник

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

|
Здрасте! Посмотрел сегодня файл с кодом... М-да. Я уже такой начал ковырять раньше Он вообщем-то не для АРМ т.к. там есть ассемблерные вставки вроде как не АРМ. Этот файл я без переделок и проблем откомпилировал на Вижуал студии и все работает. так что для АРМ буду переделывать, надеюсь не много придется
|
|
|
|
|
Aug 1 2008, 08:02
|
Частый гость
 
Группа: Участник
Сообщений: 99
Регистрация: 22-03-07
Из: Novosibirsk
Пользователь №: 26 415

|
В microwindows есть ссылка на этот ресурс. Не смотрели?
|
|
|
|
|
Aug 1 2008, 08:06
|
Местный
  
Группа: Участник
Сообщений: 336
Регистрация: 7-03-07
Из: Петербург
Пользователь №: 25 961

|
Цитата(Anatoly_P @ Aug 1 2008, 09:24)  Он вообщем-то не для АРМ т.к. там есть ассемблерные вставки вроде как не АРМ. Ассемблерные вставки аккуратно сделаны под ватком на х86. А где же #include "jpegdec.h"?
|
|
|
|
|
Aug 1 2008, 11:09
|

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

|
Цитата Ассемблерные вставки аккуратно сделаны под ватком на х86. А где же #include "jpegdec.h"? Этот пример найдёте на ресурсе, из поста SergeiCh-а. Кстати, uC/GUI имееет функции работы с BMP и JPEG файлами...
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Aug 1 2008, 11:46
|
Участник

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

|
Цитата(SergeiCh @ Aug 1 2008, 11:02)  В microwindows есть ссылка на этот ресурс. Не смотрели? Есть у меня и это, но там слишком дофига. так сказать на все случае жизни. Лучше вышеуказанный пример портировать на АРМ. Чем сейчас и занимаюсь
|
|
|
|
|
Aug 1 2008, 12:11
|
Участник

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

|
Главная проблема пока видится в том, чтобы с меньшими затратами определить, что делают асмовские вставки . Я в асме для 086 совсем не силен
|
|
|
|
|
Aug 3 2008, 04:57
|

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

|
Цитата неправда. Асмовые модули лежат в папке uC-CPU - посмотрите в любом порте Я про GUI, а Вы про саму ось... Вот здесь Itch давал ссылку на сборку uC/GUI, в которой есть JPEG, Memdev, Multilayer. Проверил, качается. И ни какого асма.
--------------------
Если зайца бить, его можно и спички научить зажигать Сколько дурака не бей - умнее не будет. Зато опытнее
|
|
|
|
|
Aug 4 2008, 14:54
|
Участник

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

|
Похоже вариантов исходников JPG в сети только два: один от разработчиков формата, а второй от Cristi Cuturicu. Первый вариант слишком большой т.к. на все случае жизни. Ковыряние со вторым у меня зашло в тупичок т.к. линковщик пишет, что памяти не хватает 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
|
|
|
|
|
Aug 5 2008, 05:37
|
Участник

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

|
Цитата(VAI @ Aug 5 2008, 06:10)  Вы совсем слепой? А чуть выше я ссылку на uC/GUI дал. И русскими буквами написано, там есть поддержка JPG, и написана на С. Вот не надо ругаться, скатал я исходники по Вашей ссылке. Так они точно такие(во всяком случае очень похожи с первого взгляда), как на сайте разработчиков JPG. Это и логично, зачем изобретать велосипед, если разработчики формата дают код. Только там все в куче и конвертация из формата в формат и кодирование и декодирование. А хотелось бы код только декодера...
|
|
|
|
|
Aug 5 2008, 09:03
|

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

|
Код у румынского программиста очень хороший: структурирован, прост и понятен. Я портировал его тексты для LPC2138 и LPC2106. Все вопросы можно решить, предварительно почитав описание JPEG. Лучшим описанием JPEG является, к сожалению, американский армейский стандарт.
|
|
|
|
|
Aug 6 2008, 06:45
|
Участник

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

|
Цитата(etoja @ Aug 5 2008, 12:03)  Код у румынского программиста очень хороший: структурирован, прост и понятен. Я портировал его тексты для LPC2138 и LPC2106. Все вопросы можно решить, предварительно почитав описание JPEG. Лучшим описанием JPEG является, к сожалению, американский армейский стандарт. А я вот к сожалению в портированию застрял на нехватке памяти... У меня только 512к внешней ОЗУ. Данные по алгоритму румынского товарища туда не помещаются. Не подскажете Вы как с этим обошлись? Спасибо за стандарт, счас начну читать...
|
|
|
|
|
Aug 6 2008, 07:07
|

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

|
Цитата Данные по алгоритму румынского товарища туда не помещаются. Простите, но там нужен входной буфер, выходной (размером с картинку), 64 элемента буфера DCT, таблички уровней квантизации (мелочь, по 64 байта) и табличка Хаффмана (это побольше, но в пределах нескольких килобайт). Как Вы ухитряетесь не помещаться, не понятно. Приведите map-файл, чтоли...
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Aug 6 2008, 14:08
|
Участник

Группа: Участник
Сообщений: 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 к и сожрут.. Вообщем придется таки в алгоритм въезжать
|
|
|
|
|
Aug 8 2008, 08:40
|
Участник

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

|
Цитата(etoja @ Aug 6 2008, 17:23)  Декодирование по Хафману можно поместить в несколько килобайт (код+данные). Еслиб Вы ещё и ссылку подкинули, где этот алгоритм доходчиво описан, то совсем здоро былобы.. :-)
|
|
|
|
|
Aug 11 2008, 06:48
|
Участник

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

|
Цитата(etoja @ Aug 8 2008, 12:11)  Алгоритм и исходники Стэнфордского университета. ... О!! Большое спасибо. Таких исходников больше ни у кого не было. Да ещё с описанием файлов. Совсем шикарно.  Только пока я добрался уже 25 человек скатало.... Спасибо. Пока другим занимаюсь, но от JPEG мне не отделаться... (Хотел я в свое время в Бауманский поступать, но учился, можно сказать, в соседнем)
|
|
|
|
|
Aug 13 2008, 15:45
|
Знающий
   
Группа: Свой
Сообщений: 509
Регистрация: 19-07-07
Из: г. Таганрог
Пользователь №: 29 246

|
Цитата(etoja @ Aug 8 2008, 13:11)  Алгоритм и исходники Стэнфордского университета.
Кстати, высокое качество образования Стэнфордского университета связано с переводом на английский язык лекций российского Имперского физико-технического института ещё в царское время. После революции этот институт, организованный 175 лет назад, был переименован в Бауманский. Может бросите ссылку на исходники этого университета. И еще один нескромный вопрос, кто нибудь с MJPEG работал? Уже неделю не могу нормальной доки найти. Судя по тому что нашел он очень просто делается из JPEG-ов, но как при это формируется файл видео?
Сообщение отредактировал Vitaliy_ARM - Aug 13 2008, 15:46
--------------------
Умные речи подобны строкам, напечатанным курсивом. К. Прутков
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|