Свежие комментарии

Title Comment
Ага, я об этом, уже засыпая,

Ага, я об этом, уже засыпая, сам подумал, но не успел попробовать :)

Во, смотри что

Во, смотри что сработало:

Control Center - Select All - Cropping
Snap to Manually Specified Degree Boundary

И для широты задал 0.33333333333333, для долготы 1.0

И все карты разом - офигачило нормально!

(для другого масштаба - надо смотреть как листы нарезаны, но смысл тот же)

Багу все-таки стоило бы

Багу все-таки стоило бы отрепортить, как мне кажется....

>> нафига она мне вся такая расжатая постоянно в памяти > >Ч

>> нафига она мне вся такая расжатая постоянно в памяти
>
>Чтобы поскроллить ее и позумить быстро. Ну и память же надо куда-то девать, а то понакупили 64-битных систем...

Если стоит задача куда-то девать память, можно сделать PNG с нулевым сжатием.

> Я сам дошел где-то с год назад и до сих пор в изумлении, то что у меня в одной программе делает изрядно кода (скажем, ~1000 строк, потому что параллельно и все такое) - делает теперь (в дпугой программе) 20-строчный шейдер.

Теперь осталось сделать всё то же самое WebGL-ем, и будет совсем хорошо.

На гис-лабе посоветовали

На гис-лабе посоветовали сначала по рядам обрезать юг-север а потом по столбцам запад-восток, вручную задавая границы. Работает, но оооочень заморочно, особенно столбцы выбирать в списке.
И, да, там поля ввода в градусах, по 20 минут задавать тоже так себе. Но работает. Идеально всё стыкуется.

> Мы пишем онлайновый видеоредактор не для Сергея Михалкова

> Мы пишем онлайновый видеоредактор не для Сергея Михалкова

В этом и разница. Я то целюсь в узкий рынок, потому что а) пишу про то, в чем понимаю б) пишу и для себя тоже.

> нафига она мне вся такая расжатая постоянно в памяти Чтоб

> нафига она мне вся такая расжатая постоянно в памяти

Чтобы поскроллить ее и позумить быстро. Ну и память же надо куда-то девать, а то понакупили 64-битных систем...

Мне, кстати, сдается, что ты никогда до OpenGL-я не доходил. Я сам дошел где-то с год назад и до сих пор в изумлении, то что у меня в одной программе делает изрядно кода (скажем, ~1000 строк, потому что параллельно и все такое) - делает теперь (в дпугой программе) 20-строчный шейдер. Цена вопроса - чипсетные интелы с OpenGL 1.5, но таких уже крайне мало (и есть, в принципе, эмулятор на DX9)

> Полгига запаковать zip-ом - это сколько? А вот известно с

> Полгига запаковать zip-ом - это сколько?

А вот известно сколько. Берем 229-мегабайтный нежатый Tiff и делаем:

$ time tiff2png 0.IIQ.tiff
real 0m43.362s
user 0m42.745s

43 секунды, короче. 5 мегабайт в секунду. Жмется в два раза.

Это: Intel(R) Core(TM) i3-2120 CPU @ 3.30GHz

libpng у нас в природе одна, других не носят.

Вот и ответ на вопрос "быстро ли это..."

Интуиция обманывает тебя. Типичное время обработки (распако

Интуиция обманывает тебя.

Типичное время обработки (распаковки, преобразования, показа) "картинки фотоаппаратного размера, но не JPEG" - 2-4 секунды.
Что невероятно много, когда этих картинок - тысячи. А JPEG - не всех устраивает (и именно в эту группу я и целюсь своим софтом).

А смешнее всего то, что почти все "производители мелкой и средней руки" (но не Adobe) пользуются для этой "распаковки, преобразования" - одним и тем же кодом.

> Ну вот полчаса в HD с приличным качеством - это сколько ги

> Ну вот полчаса в HD с приличным качеством - это сколько гигов .mts?

Какая разница? Мы пишем онлайновый видеоредактор не для Сергея Михалкова.

> В смысле - ты сам, лично, без ансамбля, пользуешься онлайн-версиями своих программ?

Я пользуюсь онлайновыми версиями чужих программ.

> Но за сжатие данных для передачи их в фронтенд для визуали

> Но за сжатие данных для передачи их в фронтенд для визуализации *внутри одного приложения* полагается ровно оно же.

Хранить легкосжимаемые данные в сжатом виде внутри программы - нормально.
Если у меня есть огромная картинка, и я никогда не показывать от неё юзеру больше маленького кусочка, нафига она мне вся такая расжатая постоянно в памяти?

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

Нормальный домашний юзер с видеокамерой редко снимает ролики дольше трёх минут (собственно он редко снимает ролики дольше 40 секунд), и обычно он их хочет в итоге залить на Ютуб. Go figure.

"Вход на Ютуб с редактированием" - очень разумный сценарий приложения.

Ну как, global mapper -

Ну как, global mapper - trial, карты - с веба...

> Потому что сжать, чтобы тут же, через долю секунды, разжат

> Потому что сжать, чтобы тут же, через долю секунды, разжать - просто глупо.

Если через долю секунды - то не глупо, а пофигу.

Глупо если это медленно.

> Но на них эффективность еще важнее, чем на нормальном компьтере и идея кидаться внутри приложения жатыми PNG меня пугает.

Интуиция подсказывает мне, что в 21-м веке абсолютно любые операции, которые ты проделываешь с одиночной статической картинкой фотоаппаратного размера, выполняются за нулевое время на любом процессоре, включая телефонный.

Полностью с тобой согласен! Но за сжатие данных для передачи

Полностью с тобой согласен!
Но за сжатие данных для передачи их в фронтенд для визуализации *внутри одного приложения* полагается ровно оно же.

Вместе с тем, если ты считаешь, что пользователю не впадлу поаплоадить полгигабайта прежде чем начать работать - я это учту. Есть у меня идея приложения за которое платить per use будут охотнее, чем покупать. Потому что нужно не каждый день.

Даже не ясно, репортить ли

Даже не ясно, репортить ли багу, и если репортить то -- как. Правовой статус что карт в примере что моей копии глобалмэппера сомнительный :)

> Загрузите .mts, получите .flv. Ну вот полчаса в HD с при

> Загрузите .mts, получите .flv.

Ну вот полчаса в HD с приличным качеством - это сколько гигов .mts?

> Кто юзер онлайновых версий программ? Да все. Вот я например.

В смысле - ты сам, лично, без ансамбля, пользуешься онлайн-версиями своих программ?
Ну молодец, че.

Там, действительно, ерунда

Там, действительно, ерунда какая-то.

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

> Так вот, пишут, что 25 мегабайт json распарсить - уже проб

> Так вот, пишут, что 25 мегабайт json распарсить - уже проблема, кровь-кишки-распидарасило.

Я думаю убивать без суда и следствия надо начинать на уровне трёхкилобайтного json-а. А за 25 мегабайтный надо перед смертью пытать несколько недель.

Это примерно как сделать SQL-ную таблицу с двумя миллионами полей.

> Сбросьте с вашей камеры нежатый CinemaDNG, сконвертируйте

> Сбросьте с вашей камеры нежатый CinemaDNG, сконвертируйте его в mpeg

Это какие-то странные слова - CinemaDNG, mpeg... Загрузите .mts, получите .flv.

А ещё лучше - получите URL на ютубе.

> залейте на сайт за недельку

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

> Вопрос: а юзер этого безумия - кто?

Кто юзер онлайновых версий программ? Да все. Вот я например.

Ну, это генштаб 59-го года,

Ну, это генштаб 59-го года, сканированный, с рутрекера (пять раздач, каталог верхнего уровня называется _map у всех, везде вотремарк поехали.нет). ggc-то только Россию покрывает.
Питер из этой же раздачи нормально (ну плюс-минус пяток пикселей) кропает.
А вот эту ЮВА -- я говорю -- точки стоят идеально, все 9 штук на лист, а при кропе он отрезает вдвое больше (в пикселях), чем надо от каждого листа -- серьёзно залезая в рисунок -- и как результат -- дыры. При этом, если включить полупрозранчость слоёв, видно, что линии рамки (внутренние края) у соседних листов совмещаются с точностью в 1-2 пикселя, т.е. если резать таки ровно по рамке, без лишнего, то всё должно совпасть идеально.

Прямо хоть пиши скрипт на перле, который физически по MAP-файлам порежет картинки и переделает MAP-файлы.

На форуме у Глобалмаппера есть тема 2007 (!) года с такой проблемой и ответом "нууу, у нас эта фича только для США-Канады-Месики, но мы подумаем об её универсализации". Не подумали?

Ну вот я честно - не видел

Ну вот я честно - не видел проблем ни с ggc (которые, правда, исходно электрические), ни с нормально отсканированным генштабом.

А что там с F47 - не знаю, надо смотреть что там за привязка (может она просто не в той системе координат, в которой карта?)

Вдогонку. Тут в одном закрытом чатике обсуждают проблему виз

Вдогонку.
Тут в одном закрытом чатике обсуждают проблему визуализации большого количества данных. Как раз на HTML5/js
Так вот, пишут, что 25 мегабайт json распарсить - уже проблема, кровь-кишки-распидарасило.

И я, отчего-то, не удивлен.

Слушай, а ты с GM вообще

Слушай, а ты с GM вообще понимаешь как бороться? Я вот загрузил, скажем F-47 весь в 200k (двухкилометровка). Убираю рамки -- дыры в одну рамку шириной.
Но я запускаю Image Rectifier -- и смотрю, что восточные точки из листа, скажем, F-47-01 в точности попадают на рамку (западную) листа F-47-02. Т.е. привязка очень точная, точнее не сделать. И что теперь? Почему края плохо режутся?
И если пальцем на экране "прижать" край любого листа (начало рамки) и сказать Crop, то видно, что отрезает он гораздо дальше, чем рамка, залезая внутрь листа!

> Имелся ввиду именно lossless. PNG сжимает внутри себя defl

> Имелся ввиду именно lossless. PNG сжимает внутри себя deflate-ом от zip-а. Непонятно, почему именно его ты не хочешь обсуждать,

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

> Как-то ты это всё очень детально обсуждаешь, я бы даже сказал серьезно

Да, естественно. Потому что есть планшеты и прочие телефоны, где HTML5 - довольно натуральный путь.
Но на них эффективность еще важнее, чем на нормальном компьтере и идея кидаться внутри приложения жатыми PNG меня пугает.

> Я все это прочитал и все равно не понимаю, что я выиграю

> Я все это прочитал и все равно не понимаю, что я выиграю

Ты выиграешь уплывание существенной части твоего продукта в очень высококачественную живую среду (HTML и CEF) из фиговатой и умирающей (Qt).

> обсуждать lossless PNG, имелся в виду, вероятно, нежатый, я не хочу

Имелся ввиду именно lossless. PNG сжимает внутри себя deflate-ом от zip-а. Непонятно, почему именно его ты не хочешь обсуждать, отличный формат для внутреннего обмена.

> Что потеряю - выше написано (в перечислении того, что я беру из Qt). Thread pool, Map/Reduce, общий одинаковый и работающий интерфейс к OpenGL, много всего.

Как-то ты это всё очень детально обсуждаешь, я бы даже сказал серьезно. Обычно когда человеку советуют выбросить нах глюкавый M$ Виндоуз и перейти на правильный кошерный Линукс ответ бывает короче и конкретнее.

Понятно что менять в живой программе базовую UI+ библиотеку на что-то совершенно другое как самый минимум очень лень.

Да-да, видеоредакторы. Сбросьте с вашей камеры нежатый Cine

Да-да, видеоредакторы. Сбросьте с вашей камеры нежатый CinemaDNG, сконвертируйте его в mpeg, залейте на сайт за недельку и потом, почти сразу, редактируйте.

Вопрос: а юзер этого безумия - кто?

Я все это прочитал и все равно не понимаю, что я выиграю (об

Я все это прочитал и все равно не понимаю, что я выиграю (обсуждать lossless PNG, имелся в виду, вероятно, нежатый, я не хочу)?

Что потеряю - выше написано (в перечислении того, что я беру из Qt). Thread pool, Map/Reduce, общий одинаковый и работающий интерфейс к OpenGL, много всего.

> Дискуссия CEF vs IWebBrowser, равно как и "вебовость" прил

> Дискуссия CEF vs IWebBrowser, равно как и "вебовость" приложения меня совершенно не волнует.

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

OCR-ы вон онлайновые делают. Видеоредакторы.

> В смысле, "написан"? В смысле написан. > Как мне получит

> В смысле, "написан"?

В смысле написан.

> Как мне получить этот объект "внутри" яваскрипта?

Никаки. Связка между JS и C++ примерно на уровне SQL и C++. С++ объект внутри SQL не получают.

> Ну там скормить ему файл, подождать пока прожует, потом он выплюнет 400 мегабайт (например) RGB-битмепа

JS узнаёт у юзера имя файла и передает его C++. С++ жуёт. Когда прожевал - вызывает, например, OpenGL, если хочется экстрима.

> Сгенерировать JPEG и скормить его этому CEF-у? Херня же какая-то....

И так тоже можно. Только не JPEG конечно, а loseless PNG. Я бы именно так и сделал, и всё верчение-зуменье засунул в JS, типа такого:

http://demo.leadtools.com/HTML5/ViewerDemo.htm

> У меня приложение для быстрого жевания гигабайтов фоточек.

Ну и жуй себе, внутри C++. А потом отдавай простым UI-шны средствам для показа юзеру. Мы в 21-м веке, сейчас это визуалбейсиковая задачка - показать на экране двухмерную картинку сжатым размером ну пусть даже 60 мегабайт (на самом деле небось 16, да?). Делать надо через визуалбейсик, т.е. JS, canvas и WebGL как самый максимум. WebGL уже очевидно оверкилл для показа двухмерных картинок, но если надо извращений...

Мдааа... Дыры в пол-квадрата

Мдааа... Дыры в пол-квадрата сетки везде... Ещё и привязывать это всё вручную, я рехнусь :(

Pages

Subscribe to comments_recent_new