Sunday, March 31, 2019

Joystick Visualizer

Here we go.

This simple web page is used to visualize your joystick buttons and axes.
Yep, there are only few widgets, but layout still may be complex enough.

There is direct link to the preset shown above:

As it utilizes javascript Gamepad API, it can support up to 4 devices.
It's highly recommended to use Chrome-based web browser since Firefox doesn't see all possible axes.

Important notice. The Joystick Visualizer does not store your personal data, nor uses cookies. All presets you'd made are stored at your web-browser local storage.

The visualizer was (in primary) created for using whilst playing Elite: Dangerous. Of course, it may also be used in other various simulator games. My friend CMDR [Dax] requested visualizator that is as much flexible as possible to freely support his 2 joysticks with throttle and pedals setup.

This visualizer is good at use as a "Browser" source in OBS application.
I asked CMDR [Dax] to give me a sight on his experience of using the visualizer with OBS. Here is his comprehensive answer:

Using Joystick Visualizer in OBS.

Step 1. Configure widgets.
- go to
- double click anywhere to add widget. You may use buttons, hats, labels and single or double axis widgets.
- configure widgets. Double click on widget, set label(s) and joystick(s) and axis number(s). These numbers you can find using the "Joysticks" menu.
- configure general settings like shadows, colors etc.
- save yor settings.

Step 2. OBS.
Well, you will need to experiment a bit with settings to achieve decent results.

Disclaimer: These are mine personal recommendatons. They work for me, your mileage may vary.

At first, choose a proper color for your chroma key background. The usual acid green is not always the best option. We'll need a bit of theory here.

The ChromaKey technology works as a dynamic mask determined by the color. This color is filtered out by software during the video processing and all areas of that color are considered as transparent.
This works very well with sharp-edged objects, where we have a distinct border between the colors. But if you have any kind of antialiasing, shadows or edge feathering involved, things are more complicated because of the process called "color spill" which is basically a blending of the colors at the edges of an object. To minimise this effect you need to choose the chroma key color which is:
 a) opposite to the color of the object
 b) not very bright
Some numbers to illustrate this:
Every color is composed from 3 basic color channels - Red, Green and Blue. In 24 bit color palette each color value can be from 0 to 255 (or from 00h to FFh in hexadecimal notation)

#ff7100 - this is the code for orange color of Elite Dangerous.  As you can see, it consists of 255 (FFh) Red, 113 (71h) Green and 0 (00h) Blue. Since this orange color does not contain Blue channel at all, a kind of blue chroma key color will be easiest to remove and is the best choice for orange widgets. Also, it should be not too bright, because the dull colors "spill" less. The shade of blue with code #000080 shoud work just fine.

Chroma key color should be set in "Settings" menu of Teall Joystick site. Save your configuration and then use "Export" in the "Save" dialog. You will see the "Direct link" option, copy that link.

Now we need to add this to OBS.

In OBS add new "Browser" source.
Insert the link that you have copied from the website to the "URL" field and set desired browser window size. I recommend to start with the size of your video frame and than reduce it to the minimal required dimensions later. When you click OK, you should see your widgets in the OBS along with chroma key background. Now we need to remove it.

Right click on browser you have just created and choose "Filters". Click on "+" an add "Chroma Key" fiter.
Set "Key Color Type" to "Custom" and choose chroma key color either by using palette\number fields or color picker.

Now is the time for fine tuning.
Set "Similarity", "Smoothness"and "Key Color Spill Reduction" to minimum.
"Similarity" is how close to the base color you want OBS to remove. Adjusting this slider will allow OBS to remove wider chroma key color variations of the screen. Make sure not to increase this so much that some parts of your widget is being removed too.
Adjust "Similarity" so you can see the widgets clearly with minimal residue of chroma key color. It should be small value in our case since we have very uniform key color.
"Smoothness" works in tandem with "Similarity" in trying to make sure that the filter isn’t too harsh. You shouldn’t have to move this to a large degree. Use it to hone in on the perfect amount of what’s left on the screen.
"Spill Reduction" applies to the edges of what the filter is and isn’t removing from the screen. If you're noticing some key color residue on the edges of your widgets, move this slider to remove it.
Most probably, you will need to disable shadows in the website settings to get better results. This largely depends on used color schemes though.

Step 3. Final adjustments.
As the last steps, adjust widgets placing (you will need to save new settings and apply new URL to the OBS browser) and OBS browser overlay size. After the overlay size has been roughly set, you may crop the overlay instead of resize by holding "Alt" key while adjusting overlay borders.
Please note, that chromakey processing is a tough computational task, so you will need a computer with a decent CPU to avoid lags and framedrops.

As always, Joystick Visualizer is completely free for use and copy. If you like it, feel free to donate =)

Monday, February 18, 2019


Supermoon via my newtonian reflector binocular Yukon NRB 30Х50 and Nokia 6 smartphone =)

And photo by my colleague with Nikon AFS300mm f2.8 +2x + D500

Sunday, February 18, 2018


Today we were at dacha to clear snow and put some amount of snow inside greenhouse. And have thought, hey, it's the Maslenitsa today, so why not to make and burn the Lady Maslenitsa?

As we finished with snow, we realised we have time for this. Old slavic holiday is still alive, after all, even Christian Church have failed to cut it out.

Materials selected were newspapers and serviettes. The Lady is about to get burned.

It looks sadistic, but this is not the Spanish Inquisition, this is just old slavic joke.

Look at her face. She is happy.

Even now, I guess.

The winter should get gone.


Tuesday, November 14, 2017

Баркас Баунти

Легендарный баркас с вооруженного судна Его Величества "Баунти", на котором в 1789 году Блай и отказавшиеся примкнуть к банде восставших члены команды прошли 6500 километров от Тофуа (кусок камня посреди Тихого океана) до Купанга на Западном Тиморе.

Карта из википедии (зеленым показан маршрут Блая):

Путешествие заняло 47 дней. Все это время в баркасе было 18 человек, не считая Джона Нортона, которого аборигены убили на четвертый день, когда команда искала пресную воду и продовольствие на Тофуа.

Художественная иллюстрация современника события, наглядно показывающая, как тесно там было:

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

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

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

Выглядел этот баркас примерно как его показал Маккай в книге "Баунти. Анатомия корабля". (у меня есть эта книга, поэтому будем считать, что чертеж я взял оттуда):

Нетрудно посчитать, что длина лодки без рангоута не превышала и 7 метров.

На самой модели "Баунти" баркас выполнен небрежно и нелепо. Но насколько он маленький по сравнению с не очень большим "Баунти" виден сразу. Во-о-он он там посреди палубы торчит. Не видно? Вот то-то же.

Отдельная же модель уже куда лучше, хотя тоже с ужасными косяками. Часть из них я исправил (те, которые было просто исправить), часть же из-за лени оставил, как предлагается в инструкции по сборке. Как обычно, в таких вещах важно получить удовольствие, погружаясь в контекст эпохи, а точность до последнего гвоздя для этого не требуется.

Первая фотка -- собранные на киле и малкованные шпангоуты.
То, что пайолы уже приклеены -- это не моя идея, так было в инструкциях. Ясное дело, выглядят они ужасно неправильными. Ну а конские шпангоуты -- издержка простоты сборки. Ну ведь действительно с такими удобнее =)

Начало черновой обшивки.

Красота, да? =))

Сложнее всего в обшивке оказалось приклеить две последние планки борта.

После шпаклевания, шкурения и полировки.

Довольно уютненько уже.

В чистовой обшивке. Тут я тоже с зауживанием дощечек не заморачивался, а клеил как клеилось.

Вот и весла подгребли. Заодно уже поставлен руль, кат-балка и брашпиль.
Брашпиль и кат-балка использовались для операций со здоровенным якорем "Баунти". Он примерно такого же размера, как и "салазки" рядом с кат-балкой. По ним и двигали якорь.

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

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

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

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

В целом. Фок и грот, как не сложно догадаться, тоже коротковаты. Но модель смотрится довольно приятно, на мой взгляд. В модели отсутствовала половина бегучего такелажа (брасов, к примеру, вообще не было. Правильно, зачем они =)) Впрочем, я тоже особо усердствовать не стал: ниралы всякие тут будут явно непропорционально детализировать модель.

Вблизи (с другим освещением):

Остались мелочи -- убрать ворс с оставшихся нескольких ниток и смастерить бухточки смотанных веревок бегучего такелажа на утках.

Начало предыдущих публикации о сборке самого "Баунти":
HMS Bounty (Баунти. Начало и оглавление)

Saturday, December 24, 2016

Maple, Woodpecker and Squirrel

Today on morning stroll with Pierre around the house we met an awesome maple, a woodpecker and a squirrel at once.


Acer pseudoplatanus (mapple).

European green woodpecker.

Moustachial stripe is all black, so it is female.

Gray squirrel (Sciurus carolinensis).


"Wanna feed me?"