Возможно ли поднять максимальное значение гаммы?

Cool Reader
Post Reply
sergeyvl
Posts: 1654
Joined: Sun Nov 13, 2011 5:43 pm
My ELO: 1700-1800
Location: Харьков
Contact:

Возможно ли поднять максимальное значение гаммы?

Post by sergeyvl »

Покопался немного в движке и выяснил вопрос.

В принципе возможно.

В CR сейчас есть 30 уровней гаммы: 0.3 ... 1.9.

Для каждого уровня в файле gammatbl.h хранится таблица. Например:

Code: Select all

static const unsigned char gamma_table_0[256] = { // gamma=0.300000
      0,   0,   1,   1,   1,   2,   2,   2,   2,   3,   3,   3,   4,   4,   4,   5,   5,   5,   6,   6,   6,   6,
      7,   7,   7,   8,   8,   8,   9,   9,   9,  10,  10,  10,  11,  11,  11,  12,  12,  12,  13,  13,  13,  14,
     14,  14,  15,  15,  15,  16,  16,  17,  17,  17,  18,  18,  18,  19,  19,  19,  20,  20,  20,  21,  21,  22,
     22,  22,  23,  23,  23,  24,  24,  25,  25,  25,  26,  26,  26,  27,  27,  28,  28,  28,  29,  29,  30,  30,
     30,  31,  31,  32,  32,  32,  33,  33,  34,  34,  35,  35,  35,  36,  36,  37,  37,  38,  38,  38,  39,  39,
     40,  40,  41,  41,  42,  42,  42,  43,  43,  44,  44,  45,  45,  46,  46,  47,  47,  48,  48,  49,  49,  50,
     50,  51,  51,  52,  52,  53,  53,  54,  54,  55,  55,  56,  56,  57,  57,  58,  58,  59,  60,  60,  61,  61,
     62,  62,  63,  64,  64,  65,  65,  66,  67,  67,  68,  68,  69,  70,  70,  71,  72,  72,  73,  74,  74,  75,
     76,  76,  77,  78,  78,  79,  80,  81,  81,  82,  83,  83,  84,  85,  86,  87,  87,  88,  89,  90,  91,  91,
     92,  93,  94,  95,  96,  97,  98,  99, 100, 100, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113,
    114, 116, 117, 118, 119, 121, 122, 124, 125, 126, 128, 130, 131, 133, 134, 136, 138, 140, 142, 144, 146, 148,
    151, 153, 156, 158, 161, 165, 168, 172, 177, 182, 188, 195, 207, 255, };
static const unsigned char gamma_table_1[256] = { // gamma=0.350000
      0,   0,   1,   1,   1,   2,   2,   2,   3,   3,   4,   4,   4,   5,   5,   5,   6,   6,   6,   7,   7,   8,
      8,   8,   9,   9,   9,  10,  10,  11,  11,  11,  12,  12,  12,  13,  13,  14,  14,  14,  15,  15,  16,  16,
     16,  17,  17,  18,  18,  18,  19,  19,  20,  20,  20,  21,  21,  22,  22,  22,  23,  23,  24,  24,  25,  25,
     25,  26,  26,  27,  27,  28,  28,  28,  29,  29,  30,  30,  31,  31,  31,  32,  32,  33,  33,  34,  34,  35,
     35,  36,  36,  37,  37,  37,  38,  38,  39,  39,  40,  40,  41,  41,  42,  42,  43,  43,  44,  44,  45,  45,
     46,  46,  47,  47,  48,  48,  49,  49,  50,  50,  51,  51,  52,  52,  53,  54,  54,  55,  55,  56,  56,  57,
     57,  58,  59,  59,  60,  60,  61,  61,  62,  63,  63,  64,  64,  65,  66,  66,  67,  67,  68,  69,  69,  70,
     71,  71,  72,  73,  73,  74,  75,  75,  76,  77,  77,  78,  79,  79,  80,  81,  81,  82,  83,  84,  84,  85,
     86,  87,  87,  88,  89,  90,  90,  91,  92,  93,  94,  94,  95,  96,  97,  98,  99, 100, 100, 101, 102, 103,
    104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 122, 123, 124, 125, 126,
    128, 129, 130, 132, 133, 134, 136, 137, 139, 140, 142, 143, 145, 147, 149, 150, 152, 154, 156, 158, 160, 163,
    165, 168, 170, 173, 176, 179, 183, 186, 191, 195, 201, 208, 218, 255, };
...
Если добавлять свои уровни, нужно для них чем-то заполнять эту таблицу. У меня пока нет идей как её заполнять. Если знаете что это уже сделано кем-то в какой-то версии CR, дайте ссылку на исходники (git-репозиторий) я гляну.

Metazoa
Posts: 130
Joined: Wed Apr 29, 2015 1:01 pm
My ELO: I don't know
Location: Одесса

Re: Возможно ли поднять максимальное значение гаммы?

Post by Metazoa »

Не то чтобы готовая таблица, но:
https://github.com/blchinezu/pocketbook ... mmagen.cpp
Kobo Aura One

Metazoa
Posts: 130
Joined: Wed Apr 29, 2015 1:01 pm
My ELO: I don't know
Location: Одесса

Re: Возможно ли поднять максимальное значение гаммы?

Post by Metazoa »

Kobo Aura One

sergeyvl
Posts: 1654
Joined: Sun Nov 13, 2011 5:43 pm
My ELO: 1700-1800
Location: Харьков
Contact:

Re: Возможно ли поднять максимальное значение гаммы?

Post by sergeyvl »

Гранд-мерси! Получилось скомпилить и сгенерить какую-то гамму.

Сгенерировал (0.3 - 2.5). Но не пойму одну вещь. Изменения заметны при переходе 0.9 <-> 1 и 1.9 <-> 2 и все. Интересно почему?

И еще, при увеличении гаммы начинает теряться сглаживание шрифтов :)

kaznelson
Posts: 331
Joined: Thu Jan 22, 2015 6:37 am
My ELO: I don't know

Re: Возможно ли поднять максимальное значение гаммы?

Post by kaznelson »

https://github.com/blchinezu/pocketbook ... r/releases
Там в сорцах есть gammatbl.h, однако как оказалось, у brucelee мелконарезанная гамма только до 2.0 - а далее 3.0, 5.0, 7.0, 11.0...
Kobo Aura H2O, Kobo Glo HD, Kindle Paperwhite 2

sergeyvl
Posts: 1654
Joined: Sun Nov 13, 2011 5:43 pm
My ELO: 1700-1800
Location: Харьков
Contact:

Re: Возможно ли поднять максимальное значение гаммы?

Post by sergeyvl »

Вобщем получилось. Завтра выложу. А то что сглаживание теряется - для больших DPI не беда. Жду пожеланий к таблице гаммы. Такая как у Брюса Ли ?

kaznelson
Posts: 331
Joined: Thu Jan 22, 2015 6:37 am
My ELO: I don't know

Re: Возможно ли поднять максимальное значение гаммы?

Post by kaznelson »

sergeyvl wrote:Жду пожеланий к таблице гаммы. Такая как у Брюса Ли ?
До 2.5-3.0 хотелось бы с мелким шагом, стандартным 0.1 хотя бы...
Kobo Aura H2O, Kobo Glo HD, Kindle Paperwhite 2

sergeyvl
Posts: 1654
Joined: Sun Nov 13, 2011 5:43 pm
My ELO: 1700-1800
Location: Харьков
Contact:

Re: Возможно ли поднять максимальное значение гаммы?

Post by sergeyvl »

Вобщем сделал в сегодняшней сборке 2016-03-25. Уровни гаммы:

Code: Select all

static const double gamma_levels[] = { 0.3, 0.35, 0.4, 0.45, 0.5, 0.55, 0.6, 0.65, 0.7, 0.75, 0.8, 0.85, 0.9, 0.95, 0.98, 1, 1.02, 1.05, 1.1, 1.15
, 1.2, 1.25, 1.3, 1.35, 1.4, 1.45, 1.5, 1.6, 1.7, 1.8, 1.9, 2, 2.1, 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, 2.8, 2.9, 3, 3.5, 4, 4.5, 5, 5.5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };

Metazoa
Posts: 130
Joined: Wed Apr 29, 2015 1:01 pm
My ELO: I don't know
Location: Одесса

Re: Возможно ли поднять максимальное значение гаммы?

Post by Metazoa »

Интересно как оно будет дружить (или не дружить) с хинтингом и сглаживанием.
Kobo Aura One

Post Reply