19 April 2012

Новый iPad

I.

Собственно, я еще до анонса писал, что если мы получим все то, что хотим получить, то новый iPad брать надо обязательно. Планшетник первого поколения в моей семье уже полтора года, и за это время он стал абсолютно незаменимой штукой, которой каждый день пользуются все члены семьи -- и я, и жена, и появившаяся за это время Виталина Александровна (ее уровень пока что это исключительно возня ладошкой по экрану).


Новенький iPad (32 Гб Wi-Fi) появился у меня только вчера вечером, я всю ночь не спал, но диагноз третьему поколению планшетов от Apple я готов вынести уже сейчас.

Если в двух словах -- полный восторг!...

17 April 2012

Мощь и гибкость

Довольно часто в практике использования C++ сталкиваешься с такими кейсами, отработав которые, понимаешь за что ты любишь этот язык.


Вот один из таких примеров.

Есть реализация некоего циклического FIFO буфера. Чтение из и запись в этот буфер происходит порционно, причем операции чтения иногда сдвигают указатель, а иногда нет. Для операций чтения и записи реализованы соответствующие вспомогательные классы -- итератор чтения и итератор записи, конструкторы которых принимают на вход собственно сам буфер, размер блока для операции и флаг "сдвигать или не сдвигать указатель" для итератора чтения. Итераторы не копируемые, используется RAII -- в своих деструкторах итераторы проверяют, что пользователь вычитал указанный объем данных, и, при необходимости, сдвигают соответствующий указатель внутри буфера.

И все было хорошо, ровно до момента, когда был написан код, в котором стало понятно, что на стек итератор больше не положишь -- функции требовался список итераторов, количество элементов в котором определялось уже во время исполнения. В ход пошел наш велосипед под называнием Utils::ManagedList -- контейнер, хранящий указатели и отвечающий за их удаление (аналоги есть в boost pointer container). Все хорошо, но функция эта относилась к 1% кода, в котором производительность была важной характеристикой, а используемое решение приводило к довольно интенсивной работе с кучей, которую сильно хотелось избежать.

10 April 2012

JPEG vs RAW

С RAW у меня как-то сразу не сложилось.
Ну, во-первых, вполне себе устраивало то, что я видел в jpeg. Особенно после мыльницы.
Во-вторых, raw файлик для моего NEX'а весит раза в три больше jpeg -- а тут, вы сами знаете, винтовой кризис в самом разгаре.
Ну и в-третьих, поработав немного с raw в Lightroom, я пришел к выводу, что тормоза это, а не работа... Нет, понятно, что когда у тебя изменение экспозиции для всего кадра за полсекунды пересчитывается это вроде как и не сильно много, но после работы с jpeg, где реакцию на дерганье ползунка получаешь просто мгновенную, это реально раздражает.

К теме raw я решил вернуться после того, как прочитал обзор NEX-5N у Стива, нашего, Хаффа. Стив пишет, что jpeg на этом девайсе выходит ну просто сказочный, и никакой NEX-C3, в котором вроде как должна стоят та же самая матрица, и рядом не стоял (я уже писал об этом).
Скачал я с dpreview файлы тестовых снимков, загрузил в Lightroom, стал сравнивать, и просто ахренел. В jpeg NEX-5N делает Canon 5D MarkII ну просто как стоячего -- смотрите сами!

Кликабельно. 5N vs 5DM2, jpeg, ISO 800

Статус-кво получилось восстановить только когда дело дошло до сравнения снимков в raw.
Другой любопытный факт -- в raw разница между NEX-5N и NEX-C3 минимальна, что определенно может быть аргументом в пользу версии о том, что в 5N просто улучшенный jpeg кодер и аппаратно от C3 он не отличается.

03 April 2012

Фикс vs зум

Написание епического поста "jpeg vs raw" временно откладывается, зато есть такая вот, не менее концептуальная тема, над которой я в последнее время тоже голову ломаю, так как нахожусь в несколько затянувшемся процессе смены фотоаппарата.

И вот @timurminulin, владелец Sony A77, протестировал по моей просьбе пару объективов -- довольно приличный зум от Sony 16-50 f2.8 и самый дешевый фикс Sony 50 f1.8. Архив с тестовыми снимками можно забрать здесь.

Что я имею сказать своим дилетантским рылом.

Ну, во-первых, похоже у Тимура довольно сильный бэк или фронт фокус на его зум объективе, причем он его так и не обнаружил с января. На снимках, сделанных с помощью 16-50, какой-то резкостью в области многострадального снеговика и не пахнет.

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

Виньетирование для Sony 50 f/1.8

Ну и в третьих, зум на фоне фикса выглядит совсем грустно, и если сравнивать их на одинаковой диафрагме 2.8, то зум выглядит темно и блекло, почти как фикс на 1.8.

f/2.8, кликабельно

На f/4.5 зум дает картинку получше, но до фикса все равно не дотягивает.

Собственно гистограммы фотографий: верхний ряд для фикса, нижний для зума, диафрагмы соответственно 1.8, 2.8, 4.5.

Гистограммы, кликабельно

Как-то так. Лишний раз задумаешься.