Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
24 кадра в секунду достаточно, если вы в детстве книжки про телевизор не читали)))
Вообще-то в аналоговых телевизорах с ЭЛТ была чересстрочная развертка, но только потому, что в те годы не могли в заданной полос пропускания гнать полноценные кадры, выдавали сначала четные строки, потом нечетные, а за счет послесвечения трубки не было видно мерцания. Я не только книжки читал, но и студентом на ремонте телеков неплохо халтурил ))
Вообще-то в аналоговых телевизорах с ЭЛТ была чересстрочная развертка, но только потому, что в те годы не могли в заданной полос пропускания гнать полноценные кадры, выдавали сначала четные строки, потом нечетные, а за счет послесвечения трубки не было видно мерцания. Я не только книжки читал, но и студентом на ремонте телеков неплохо халтурил ))
Функция ChartRedraw (перерисовки чарта) имеет стоимость 40 милисекунд, так что обновлять таймер через 16 нет смысла.
40 милисекунд это соответствует 25 кадров в секунду что равно скорости восприятия человека.
Ну нет, Николай, конечно же меньше. На моем компьютере это чуть меньше 2 миллисекунд при COLOR_FORMAT_ARGB_NORMALIZE , и меньше миллисекунды при COLOR_FORMAT_XRGB_NOALPHA
И как видно из прикрепленного примера скрипта (TestSpeedCanv.ex5) задержка между кадрами в 30 миллисекунд (32 кадров в секунду) абсолютно достаточна для глаз. Кстати все видео снимается именно с такой частотой. С большей частотой снимают, когда нужно замедленное воспроизведение.
Максимальная частота работы функции таймера - 15-16 mc.
Да, так и есть. (только не частота, а период. Максимальная частота = 64 Гц)
Только добавлю уточнение:
шаг изменения периода для таймера = 15.625 миллисекунды.
Т.е. при команде EventSetMillisecondTimer(1) и при команде EventSetMillisecondTimer(10) реальный период будет 15.625 мс.
при команде EventSetMillisecondTimer(21) и при команде EventSetMillisecondTimer(30) реальный период будет 31.25 мс.
при команде EventSetMillisecondTimer(95) и при команде EventSetMillisecondTimer(105) реальный период будет 109.375 мс.
и т.д.
Вообще-то в аналоговых телевизорах с ЭЛТ была чересстрочная развертка, но только потому, что в те годы не могли в заданной полос пропускания гнать полноценные кадры, выдавали сначала четные строки, потом нечетные, а за счет послесвечения трубки не было видно мерцания. Я не только книжки читал, но и студентом на ремонте телеков неплохо халтурил ))
Вообще-то в аналоговых телевизорах с ЭЛТ была чересстрочная развертка, но только потому, что в те годы не могли в заданной полос пропускания гнать полноценные кадры, выдавали сначала четные строки, потом нечетные, а за счет послесвечения трубки не было видно мерцания. Я не только книжки читал, но и студентом на ремонте телеков неплохо халтурил ))
И что? Вас там не учили, что в видео, для обеспечения эффекта естественного равномерного движения, достаточно 24 кадров в секунду? А проблема мерцания это проблема монитора (телевизора).
И что? Вас там не учили, что в видео, для обеспечения эффекта естественного равномерного движения, достаточно 24 кадров в секунду? А проблема мерцания это проблема монитора (телевизора).
сейчас даже в телефонах есть видео 50 фпс)
снимите одно и тоже, быстрое движение, в 24 фпс и 50 фпс и сравните
пс. а Чарли Чаплин снимал 15 фпс - более чем достаточно)
Вообще-то в аналоговых телевизорах с ЭЛТ была чересстрочная развертка, но только потому, что в те годы не могли в заданной полос пропускания гнать полноценные кадры, выдавали сначала четные строки, потом нечетные, а за счет послесвечения трубки не было видно мерцания. Я не только книжки читал, но и студентом на ремонте телеков неплохо халтурил ))
да, но эти полукадры были разные, а не с одного и того же кадра.
И благодаря этому движения были более плавные чем 25 фпс в компе.
сейчас даже в телефонах есть видео 50 фпс)
снимите одно и тоже, быстрое движение, в 24 фпс и 50 фпс и сравните
пс. а Чарли Чаплин снимал 15 фпс - более чем достаточно)
Потрясает глубина познаний! ...и тонкость восприятия! Обычно все видят рывки и неестественность движения в фильмах Чарли Чаплина.
Да, так и есть. (только не частота, а период. Максимальная частота = 64 Гц)
Только добавлю уточнение:
шаг изменения периода для таймера = 15.625 миллисекунды.
Т.е. при команде EventSetMillisecondTimer(1) и при команде EventSetMillisecondTimer(10) реальный период будет 15.625 мс.
при команде EventSetMillisecondTimer(21) и при команде EventSetMillisecondTimer(30) реальный период будет 31.25 мс.
при команде EventSetMillisecondTimer(95) и при команде EventSetMillisecondTimer(105) реальный период будет 109.375 мс.
и т.д.
Спасибо за поправку, Николай.
Столь точных замеров периодов не делал, но обращал внимание, что бывают пропуски некоторых периодов. Частота неидеальна. Особенно, в диапазоне малых значений периодов (16-25 мс). То есть, если поставить 16 мс, то довольно часто пауза будет состовлять 32 миллисекунды.
Происходит что то вроде сбоев в частоте периодов. Своего рода электронная аритмия.
Поэтому думаю, если поставить период в 40 мс (что достаточно для восприятия человека), а таймер будет пропускать некоторые периоды? Тогда мы получим не 24 кадра в секунду, а 18-24. В зависимости от того, сколько периодов таймер пропустит. Думаю, оптимальным вариантом будет период таймера в 25 мс. Что я изначально и установил у себя.