Показаны сообщения с ярлыком software. Показать все сообщения
Показаны сообщения с ярлыком software. Показать все сообщения

2017-09-12

Файлы с фото: упорядочиваем имена

Недавно вернулся из поездки, притащил оттуда фотки аж на трёх фотоаппаратах. Так уж получилось: Honor 8 Pro хорошо умеет делать фотографии в условиях низкой освещенности и на него можно сделать селфи, Note 4 поражает четкостью и насыщенностью в нормальных условиях, но на него селфи не сделаешь (попала пыль в переднюю камеру), а Canon EOS 1100D и вовсе не телефон, а полноценная камера, хоть и старенькая, но как минимум с оптическим зумом.

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

В итоге, скачанные c одной камеры файлы называются датой-временем, типа 20170830_121103.jpg, на другой - тоже самое, но с неотключаемым префиксом IMG_20170830_121103.jpg, а Canon и вовсе лепит снимки с номерами по возрастанию: IMG_5678.JPG. Как их теперь объединить в один упорядоченный по имени файловый массив, да еще и соблюсти хронологию?!... Ах да, дополнительая беда: перед съемкой я совершенно позабыл выставить на них одинаковое время... 

Ругать кроме себя некого, но можно все-таки попробовать разобраться. Мне помогла замечательная утилита exiftool из пакета libimage-exiftool-perl. Она умеет читать EXIF-информацию из файла (не только из картинок, кстати) и производить над ней несложные, но чертовски востребованные мной операции. Используем её, чтобы получить все файлы с именами типа 20170830_121103.jpg.

Итак, среди двух страниц разнообразных тегов нам нужен только CreateDate, его можно получить так:

$ exiftool -CreateDate IMG_5555.JPG
Create Date                     : 2017:09:03 15:20:01

Воспользуемся специальной опцией -d, чтобы преобразовать время как можно ближе к будущему имени файла:

$ exiftool -CreateDate -d "%Y%m%d_%H%M%S.jpg" IMG_5555.JPG 
Create Date                     : 20170903_152001.jpg

Разобьем строку на два поля по двоеточию, возьмем второе и срежем первый символ:

$ exiftool -CreateDate -d "%Y%m%d_%H%M%S.jpg" IMG_5555.JPG | awk -F':' '{print substr($2,2)}'
20170903_152001.jpg


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

Не отчаиваемся! Выбираем одну из камер, которая будет "эталоном". Берем вторую, наблюдаем разницу во времени, хоть с точностью до секунды (но обычно это минуты или даже часы, из-за разных таймзон). Пусть это будет 24 минуты, например. 

Используем опцию exiftool -globalTimeShift, указывая аргументом ей это самое смещение (знак впереди указывает в каком направлении надо сдвинуть временную метку). И натравливаем нижеприводимый скрипт на файлы этой камеры:

#!/bin/bash

for fname in *.JPG; do
  newname=$(exiftool -CreateDate -globalTimeShift "+0:0:0 0:24:0" -d "%Y%m%d_%H%M%S.jpg" $fname | awk -F':' '{print substr($2,2)}')
  mv "$fname" "$newname"
done

Если камер несколько, вычисляем для каждой из них свое смещение от "эталонной", меняем в скрипте зачение аргумента -globalTimeShift и натравливаем на файлы с фотографиями.

Ура, готово! Теперь все файлы называются единообразно, упорядочены по времени, и только внутри у них в EXIF по-прежнему сохранено исходное значение.

В моем случае это не важно, но если нужно, то всемогущий exiftool может и это исправить тоже. 

man exiftool ;)


2010-11-30

Open Source!

Только что по работе пытались разобраться, почему не работает добытый на просторах интернета код, реализующий общение с модемом. Все, как обычно - бубен, метод научного тыка, мистика всякая. А помог в итоге исходник программы gtk-term. Так что даже при наличии доступа в инет,  Open Source - это круто.

2009-01-23

ICQ заработало

Надо же, ICQ опять заработало, точнее мой QiP 2005, билд 8080.

Чем-то мне это напоминает газовый конфликт Украины и России...

2009-01-22

Долой ICQ!

Давно хотел это сделать, но все как-то не было случая.

Теперь, всвязи с очередной сменой закрытого протокола Oscar, мой QiP 2005 перестал работать. Да и не только у меня, как я понимаю. Недолго думая, поставил Google Talk, чтобы была возможность общаться с коллегами.

Теперь я понимаю смысл фразы "кризис - это масса новых возможностей".

Оригинальный клиент не поставлю никогда: не хочу смотреть рекламу.

2008-11-27

Garnet VM beta 3 для N810

Вышла очередная версия Garnet VM. Все еще beta. Бегло посмотрел изменения:
  • различные фиксы в основных компонентах Garnet VM (звучит многообещающе)
  • просто фиксы в Garnet PIM (хорошо, что я им так и не додумался воспользоваться!)
  • будут работать приложения Billard 5.0 и Toxic Balls (дались им эти погремушки, однако).
Надо будет проверить, может пофиксили звук...

2008-10-18

Файл .docx

Прислали по почте документ с расширением .docx, и мой офис отказался его открывать. Это, видите ли, новый формат M$ Office 2007.

Чтобы просмотреть файл размеров 12Кбайт, не содержащий только текст, пришлось качать FileFormatConverters.exe размером в 27.6 Мбайт.

Но самое обидное - Google Docs такое расширение не поддерживает! А было бы весьма логично для этого сервиса...

2008-10-17

Спеллчекер

Есть CMS, которая позволяет редактировать статьи через веб-интерфейс.

Человеку свойственно ошибаться, в том числе синтаксически. Как же добиться отсутствия весьма позорных очепяток в публикациях, которые даже после исправления спустя месяцы радуют наш глаз в поисковом выводе?
  1. Вариант для трудолюбивых: попросить автора делать cut'n'paste в M$ Word со включенной проверкой грамматики и пунктуации. Ворд стоит у большинства, но это - лишнее действие, которое всегда можно забыть предпринять (это из серии "дураков работа ищет" ;)
  2. Выкинуть M$ Explorer и поставить наконец Firefox. Надежнее, безопаснее, удобнее. В многострочных полях ввода орфографические ошибки подчеркиваются красным. Но нет, есть некоторые граждане, которые фанатично привержены M$IE. Обычный аргумент "есть сайты, которые работают только из-под Explrer-а". Ага, конечно, они так специально сделаны, чтобы "пощупать" ваш M$IE на известные, но незапатченные проблемы безопасности (шучу, конечно, еще ведь есть ActiveX).
  3. Установить Google Desktop на M$IE. После этого появляется возможность активировать режим проверки орфографии в формах и полях вввода. Обратно, все подчеркивается красным. Плюс дополнительные фичи, о которых я подробно писал, например, здесь.
Что еще предложить? Даже и не знаю. Видимо, последней мерой будет доработка CMS до функции проверки орфографии на сервере и возврата к редактированию, пока найдена хотя бы одна ошибка. Но это тоже будет не очень удобно пользователю.

А что думаете по этому поводу Вы? ;)

2008-10-14

Android для Palm

Йон Форт (Jon Fortt) в своей статье высказывает смелую идею: призывает компанию Palm отказаться от выпуска PalmOS II (которая вот-вот уже должна наконец выйти) и вместо этого оседлать Android (и попутно разозлить Microsoft).

Идея не только смелая, но и рациональная. На волне-то мирового финансового кризиса.

Возможно, это и есть последний реальный шанс для Palm отыграть свои позиции на рынке смартфонов. Особенно после провала проектов с PalmOS Cobalt, а также манипуляций Access вокруг PalmSource.

C PalmOS, им придется многое наверстывать: недавно мне предложили поучаствовать в проекте под PalmOS 5, а я даже не стал читать ТЗ - программировать под Palm мне уже неинтересно. Думаю, я не один такой, а иметь армию лояльных разработчиков - вопрос жизни ОС.

Особенно мне понравилось у Йона такое высказывание: "В наше время, набор приложений зачастую важнее операционной системы." Гм. Ну, давайте вспомним осень 1979 года и первую программу-электронную таблицу Visicalc, которая помогла Apple захватить рынок, потому что работала только на Apple II. Выходит, такое было всегда?

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

В настоящий момент ни одна из платформ не может похвастаться, что ей это удалось на 100%. Даже iPhone.

2008-10-13

Windows OEM - не для простых смертных

Теперь самостоятельная покупка и установка Windows OEM для физического лица исключена.

Раньше в соглашении http://www.microsoft.com/Rus/Licensing/General/Oem.mspx было написано, что:

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

Порыскав по магазинам в поисках OEM и обломавшись, с удивлением обнаружил, что текст там теперь другой:

Может ли покупатель приобрести OEM-версию отдельно от компьютера?

OEM-версии программного обеспечения предназначены ТОЛЬКО для
сборщиков/производителей персональных компьютеров и серверов. Они не предназначены для распространения конечным пользователям отдельно от компьютерной техники. Данное требование неукоснительно применяется по отношению к настольным прикладным программам и серверному программному обеспечению. В случае необходимости поставки настольных прикладных программ и серверного ПО отдельно от компьютеров следует использовать коробочные версии или корпоративные лицензии.

То есть, надо быть юриком или ЧП.

Коробочная версия, например, XP стоит на 500 руб. дороже.

Здравствуй, мировой финансовый кризис?

2008-08-08

NoteCase для Maemo

В свежем LXF#107 нашел статью про менеджер заметок NoteCase:

Если зайти на сайт NoteCase, можно увидеть множество экранных снимков программы с мониторов с низким разрешением, на таких платформах, как Sharp Zaurus и Maemo.

В итоге я обнаружил очень симпатичное приложение на GTK+, которое и вправду имеет сборку для Maemo (полностью Hildonизировано). Очень странно, что его нет в Extras.



Работает не только под Linux, но и под Windows, Mac OS X и FreeBSD. Случилось так, что я бросил лаптоп на работе, под рукой была N810 и я начал набирать в ней текст - на следующий день я без проблем перетащил написанное с Maemo в Vista.

Умеет располагать заметки в виде дерева, выделять текст цветом, жирностью, подчеркивать/зачеркивать, вставлять картинки и прикреплять файлы, экспортировать и импортировать четыре формата данных, шифровать через blowfish. Очень зрелая, хотя и бесплатная программа.

2008-08-07

DHCP в Vista

Фирма Microsoft не перестает удивлять своими нововведениями. Если вы - владелец сети, в которой стоит DHCP-сервер стороннего производителя, машины под Windows XP спокойно получают адреса, а под Vista - ничего не пашет, то может помочь правка реестра:

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\
Parameters\Interfaces\{GUID}

  • выбираем по GUID сетевой интерфейс, на котором проблемы
  • изменяем или рисуем новый параметр DhcpConnEnableBcastFlagToggle типа DWORD32 и выставляем его в 0
Честно говоря, это бубен. Оригинал здесь.

2008-08-06

Обновил modest

Достало меня видеть, как показывается "Электронная почта будет закрыта", полез я искать обновление modest/tinymail. Установил новый репо, проапдейтился (главное - вовремя вспомнить, что "Распространение" = chinook ;).

Сборка 12 от июня, libtinymail был 1.0.0-svn3690, стал 1.0.0-svn3699, сам modest был 1.0-2008.23-2, стал 1.0-2008.24-1.

В итоге все равно не помогло: точно так же трапается. Может не там копаю?..

Позабавило замечание: NOTE: modest is a work in progress; there will be bugs. But it's ready for evaluation.

Может, конечно, так оно и есть. Но не слишком ли сыровато получилось для включения в Diablo?

2008-07-29

RSS вместо почты

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

Получается, что система уведомлений мягко повисает в воздухе, потому что честно сгенерированные ей предупреждения... просто никуда не отсылаются. Однако, есть log-файл, есть доступ через VPN. Следовательно, информация все-таки доступна, просто надо ей грамотно ей распорядиться!

Решение пришло как-то само собой - откачивать логи, элементарно парсить и отдавать наружу RSS-лентой. Нововведение с RSS населению понравилось ;) Честно говоря, я готовился к смертельной схватке с ретроградами, но обошлось (хотя и пришлось провести ликбез по общению с liferea).

Ингридиенты: postgresql, perl (5.8), libdbi-perl, libdbd-pg-perl, libxml-rss-perl, liferea (у клиента). Написание двух скриптов (один - зкаладка в базу логов, другой - отдача по RSS) заняла в неспешном режиме 2 рабочих дня, шлифовка - еще 3 дня. В принципе, я доволен, потому что получилось просто, а я люблю простые решения...

2008-07-25

Guitar Tuner for maemo

Захотелось мне как-то настроить гитару. Обычно я делал это при помощи своего Palm LD, но поскольку он работает только по очень большим праздникам, моя рука потянулась к N810.

Поскольку я смутно помнил, что в каком-то блоге видел в списке must have подобное приложение, поиск все-таки увенчался успехом. Это оказался Tuner, by Josep Torra. Правда, он его слегка подзабросил, но все равно, под Diablo можно установить версию 0.0.3, предварительно позаботившись о наличии gstreamer0.10-plugins-base-extra (в пакете зависимости не стоит, просто GStreamer обругает вас при запуске - и весь сказ).

Рисует две октавы фортепиано, в которые надо тыкать стилусом. Нажимаешь - пищит. Отпускаешь - перестает. Кто настраивал гитару, тот меня поймет ;), что тут надо иметь три руки.

Умеет считывать с микрофонного входа сигнал и показывать частоту. Тоже хреново получается - частота гуляет достаточно сильно: один раз ущипнул, другой, третий - получаешь разброс 30-1300 Гц. Наверное, надо молоточком по струнам бить под строго определенным углом ;)

Пришлось скачать "Настройка Гитары 0.4 beta 2" by Алоизий Магарыч и поставить на ББ.

А жаль, идея-то хорошая. Еще один пункт в моем списке "чтобы мне такого написать в свободное время на пенсии", кроме maemo-uptime-home.

2008-07-12

Вышел новый Pidgin

Ну, наконец-то. А то как AOL обновили в очередной раз свой протокол общения ICQ-клиентов со своими серверами на прошлой неделе, так все разработчики пошли клепать новые версии своих продуктов (это к вопросу о том, что ICQ 1211 вам втирает - "качайте клиентов ICQ только с нашего сайта").

Вот дело дошло и до pidgin. Новая версия 2.4.3 вполне работоспособна под maemo Diablo 4.1, правда пока доступна только из репозитория 'chinook'. Автор скоро обещает закинуть ее и в extras для diablo тоже, а пока нетерпеливые типа меня, могут временно вбить в диспетчере приложений для каталога extras в графу "Распространение" слово chinook и обновиться.

2008-07-10

Неученье - тьма

Сегодня на работе тщательно убеждал коллегу, что ядро linux 2.6.9 - вовсе не последнее в ветке 2.6, и точно менее свежее, чем 2.6.20.

Дошло до такой степени, что потом даже сам полез на kernel.org. Бывает же, однако... Ведь там на заглавной же странице написано, какое из них последнее...

2008-07-08

Android

Начитался разных статей про то, как прошить Андроида в N810. Решил попробовать сам.

Ну, зверек конечно занятный, НО.... penguinbait с ITT пишет, что надо обязательно наградить деньгами гениального QWERTY12 за его нелегкую работу. Я не понял, за что.

После установки имиджа и самого .deb - пакета, в меню приложений появляется пункт "Android". После его активации проходит секунд 15, экран гаснет, дальше видим еще секунд 20 красную точку на манер осциллографа - типа, Android загружается. После этого можно заценить браузер, приложение контактов, карты.

Браузер вроде бы, чисто субъективно, пашет быстрее. Но проверить его толком абсолютно невозможно: с клавиатуры нельзя набрать не только русских символов (было бы странно, если бы это было возможно), но и вообще любые НЕ-буквенные варианты (сюда попали цифры и пунктуация). Так что можно ходить исключительно по ссылкам в дефолтных закладках.

Калибровка экрана нарушена, поэтому стилусом управляться сложно: надо делать поправку, как на ветер при стрельбе. Кстати, на WiFi-соединение он "садится" по родной настройке в Maemo.

Снесу его, абсолютно бесполезная вещь. Даже не похвастаешься коллегам ;)

2008-07-04

Первые ощущения от Diablo

Стабильность не улучшилась, борюсь с этим при помощи автономного режима. Недавно я болел (т.е. оно лежало на столе себе спокойно, а я - рядом на кровати) - раз в пару суток происходит ребут (я это слышал по характерной нокиевской мелодии). Я уже начал грешить на "Webmail notifier" - может это все из-за него? Однажды утром обнаружил интересное окно о том, что почтовому клиенту стало плохо (точно текст на припомню).

Беспроводная сеть часто сообщает, что не может соединиться с предпочтительными сетями, приходится ее вручную "тыкать носом" в строку в списке. Раньше такого не было.

Браузер иногда не переключает в строке ввода язык, приходится стартовать еще одно окно, и делать это там, а потом возвращаться обратно. Очень удобно!

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

2008-06-25

Дался мне этот Diablo...

Прошил я Diablo. Прошилось. Ладно, стал восстанавливать настройки - после этого попытка соединения по WiFi оканчивается для устройства полным провалом - matchbox вроде живой, но вот hildon не на что не реагирует. А по ssh не зайти - ибо он еще не установлен.

Перешивал раза три - в итоге на восстановление настроек плюнул. Но тут меня ждал другой сюрприз: пропала половина приложений, а некоторые репозитории стали говорить при попытке взять список пакетов 404 Not Found. Это потому, блин, что по умолчанию AM лезет в ветку diablo и не находит ее, естественно. Лечится относительно просто - надо в поле "Распространение" (вот такой вот русский перевод) вбить chinook, пока авторы репозитория не снимутся с ручника и не сделают хотя бы линк diablo -> chinook. Именно так поставился FBReader.

Но это еще тоже полбеды. Самый попс начинается с репозиториями, которые пробиты по умолчанию самой Nokia! Созерцаю следующую ошибку:

W: GPG Error: http://catalogue.tableteer.nokia.com diablo Release: Следующие подписи неверные: BADSIG XXXXXX Nokia repository signing key 1v1

Это уже ни в какие ворота... Release.gpg датируется 24.06.2008 12:54. Может конечно это я что-то не так делаю, но что-то мне подсказывает, что я, как тупой пользователь, тут совершенно не при чем. Конечно, можно везде попробивать chinook, но это кажется мне глубоко неправильным и делать я так не буду.

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

2008-06-16

PIM на maemo

Решил я разведать, как портировать контакты из пальмы в таблетку. Ответ глубоко поразил мою психику - на таблетке нет нормального PIM. Действительно, запускаем встроенные контакты - там есть следующие поля:
  • Имя, Фамилия
  • Псевдоним
  • Фотография
  • Телефон
  • E-mail
  • Jabber
  • Веб-адрес
Причем, телефонов, мыла, jabber-а и www можно добавить сколько угодно много. Но ни слова про почтовый адрес, день рождения, и пр.

В wiki от internettablettalk вычитал, что:

Note that the tablet is not a PDA and, as such, caution should be exercised in migrating from a dedicated PDA to an internet tablet device. Having said that, these options work well for some users.

Дальше ссылки на GPE и... на PalmOS!

Интересное кино получается. А почему бы таблетке не быть нормальным PIM-ом? Обратимся к священным докам: Using Maemo Address Book API. Опуская подробности, вижу, что:

...e_book_query_field_exists uses the EContactField enumeration that contains many common field types, such as E_CONTACT_FULL_NAME, E_CONTACT_HOMEPAGE_URL and E_CONTACT_EMAIL_1 (the full list can be found in the include file libebook/e-contact.h).

А дальше начинается самое интересное: приглядевшись к указанному хидеру уже в SDK, находим в enum EContactField тучу значений, например:

E_CONTACT_ADDRESS_LABEL_HOME
E_CONTACT_ADDRESS_LABEL_WORK
E_CONTACT_ADDRESS_LABEL_OTHER
E_CONTACT_PHONE_BUSINESS
E_CONTACT_PHONE_CAR
E_CONTACT_PHONE_COMPANY
E_CONTACT_PHONE_HOME
E_CONTACT_PHONE_MOBILE
E_CONTACT_BIRTH_DAY


Короче, Evolution Data Server рулит. Конечно, не хватает E_CONTACT_PHONE_TOILET, но я научусь с этим жить. Однако, основной вопрос повисает в воздухе - так есть эти поля или нет?!

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

Кто виноват? Что делать? Как обустроить PIM в maemo? Эти вопросы, наверное, волнуют не только меня. Первый и самый очевидный вывод - подкорректировать библиотеку libosso-abook: это был бы самый правильный метод, т.к. все приложения получат в распоряжение новые диалоговые окна, в которых будут уже новые элементы. Может быть даже, бинарная совместимость не нарушится.

Но, увы, к великому разочарованию, этот исходник Nokia закрыла от посторонних глаз. Вот такая вот грустная концовка истории - как не странно, OSSO расшифровывается Open Source Software voor Overheden... Ну и где тут Open Source?!...