Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
#Круги добра
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Стань частью фэнтези мира! Создай своего мага и погрузись в мир мощных тактических сражений. Оттачивай свое мастерство в онлайн битвах. Всё это в «Битве Магов»!

Битва Магов

Хардкорные, Мидкорные, Ролевые

Играть

Топ прошлой недели

  • SpongeGod SpongeGod 1 пост
  • Uncleyogurt007 Uncleyogurt007 9 постов
  • ZaTaS ZaTaS 3 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
2
R0dzy
R0dzy
3 года назад

WLOP показывает новые "живые" обои на своём мониторе с логотипом Ghostblade⁠⁠

Wlop Ghostblade Призрачный клинок Живые обои Арт 3D Blender Видео
2
4
krw.one
krw.one
3 года назад

Заставка для фанатов "ходячих"⁠⁠

Ходячие мертвецы Заставка Живые обои Windows 11 Обои на рабочий стол Видео
8
25
posehn
4 года назад

Видео обои Streets of Rage⁠⁠

Всем привет.

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

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

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Этап 1 - получение исходных картинок

Итак, начнем с того, что данная картинка с эмулятора капец какая большая, самый высокий небоскреб будет упираться в верхний край монитора.
Для глаз это будет как-то не очень, на мой взгляд. Потому надо сделать панораму из повторных фрагментов и немного расширить картинку в высоту, например, до 2000 пикселей.

Примерно вот так:

Моя исходная картинка разрешением 5000 на 2000

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Вроде норм, но заставка помимо прокрутки вправо имеет 4 состояния анимации огней небоскребов и фар автомобилей.

Будем отталкиваться от огней небоскребов. Итак, 4 состояния соответствуют 4 уровням яркости красных маячков: Выключены, Яркость 1, Яркость 2, Яркость 3.

Это значит, что нужно получить 4 панорамы в формате BMP,  потому что этот формат точно передает цвет.

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

На первый взгляд эти 4 панорамы не отличаются, но если увеличить и присмотреться (открыть в новом окне, изменить масштаб) - разница заметна.

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Теперь о том, как проходит анимация детально:

1. Каждый кадр - это сдвиг картинки вправо на 1 пиксель

2. Каждые 10 кадров - это смена яркости огней

3. Цикл анимации огней Выключены - Яркость 1 - Яркость 2 - Яркость 3 - Яркость 2 - Яркость 1

Получается так, мы берем кадр с учётом пропорций своего монитора. У меня монитор квадратный 4:3, разрешение 1280х1024. Высоту картинки я поднял до 2000 пикселей, значит длинна кадра будет 2500.

Вот представьте, что при нарезке кадров, вдоль исходника (5000х2000) попиксельно движется рамка размером 2500х2000 и копирует этот фрагмент из исходника, сохраняя его под очередным номером.

Если совсем углубиться, то выглядит это так:

Пусть у нас есть исходники (панорамы) и01, и02, и03, и04. Кадры нужны размером 2500х2000.

Открыли в Paint исходник и пытаемся получить кадры из исходника и01 путём выделения прямоугольной области с последующим сохранением. Изменяться будет только координата по X, она будет постоянно увеличиваться на 1.

Кадр_001: и01, область (0, 0, 2499, 2000)
Кадр_002: и01, область (1, 0, 2500, 2000)
Кадр_003: и01, область (2, 0, 2501, 2000)
Кадр_004: и01, область (3, 0, 2502, 2000)
Кадр_005: и01, область (4, 0, 2503, 2000)
Кадр_006: и01, область (5, 0, 2504, 2000)
Кадр_007: и01, область (6, 0, 2505, 2000)
Кадр_008: и01, область (7, 0, 2506, 2000)
Кадр_009: и01, область (8, 0, 2507, 2000)
Кадр_010: и01, область (9, 0, 2508, 2000)

После 10 кадров происходит смена яркости огней. Это значит, что следующие 10 кадров будут взяты из следующего исходника - и02. И так далее, согласно циклу анимации огней по 10 кадров будет копироваться из и03, и04, и03, и02.

Координата Х области продолжает увеличиваться вне зависимости от исходников. Основным ориентиром в данном примере является самый высокий небоскреб. Как только последний кадр будет похож на первый - цикл замкнется.

Выяснить количество кадров не так уж сложно. Достаточно посчитать количество пикселей между 2 самыми высокими небоскребами.

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Но возникает вопрос: Мне их больше тысячи нужно (1188 если быть точным). Это мне что теперь недели напролет сидеть вырезать в Paint эти долбанные кадры ???

Ответ: А вот тут всё гораздо проще. Я же говорил, что уже заморочился на эту тему, а значит решение есть!!!

На этом этапе нужно было всего лишь подготовить 4 панорамы-исходника.

Если первый этап не утомил - вперед ко второму, там будет еще веселее)))

2 Этап - Нарезка кадров с помощью Python

А я предупреждал, что будет весело ))))))))

Зачем нарезать вручную, когда можно это сделать программой, написанной в Python ? Но для этого нужно её установить. Проще это сделать, установив Anaconda (https://www.anaconda.com/products/individual).

А далее открываем Пуск и выбираем Jupyter Notebook

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

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

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Нажимаем New, выбираем Python 3 и открывается окно ввода кода:

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

В строку вводится код и запускается нажатием SHIFT + ENTER

Ну и конечно же сам код я предоставлю:

# импорт модуля Image
from PIL import Image
lf = 0
up = 0
rg = 2500
dw = 2000
delta = 0
files = ['f01.bmp','f02.bmp','f03.bmp','f04.bmp','f03.bmp','f02.bmp']
cropframe = []
for i in range(22):
for frame in range(6):
for copyframe in range(9):
# открыть изображение
path = 'D:/SOR/'+ files[frame]
if (delta < 10):
path2 = 'D:/SOR/Ready/'+ 'r000' + str(delta) + '.bmp'
if (delta < 100) and (delta > 9):
path2 = 'D:/SOR/Ready/'+ 'r00' + str(delta) + '.bmp'
if (delta < 1000) and (delta > 99):
path2 = 'D:/SOR/Ready/'+ 'r0' + str(delta) + '.bmp'
if (delta < 10000) and (delta > 999):
path2 = 'D:/SOR/Ready/'+ 'r' + str(delta) + '.bmp'
cropframe.append(delta)
cropframe.append(up)
cropframe.append(rg)
cropframe.append(dw)
cropreg = tuple(cropframe)
#print(cropreg)
Image1 = Image.open(path)
# обрезать изображение
croppedIm = Image1.crop(cropreg) #box_tuple- [left, up, right, bottom] of the image to crop
#croppedIm = Image1.crop((0,0,2500,2000))
croppedIm.save(path2)
delta = delta + 1
rg = rg + 1
cropreg = tuple()
cropframe = []
print('THE END')

Чтобы код корректно отрабатывал, нужно привести его к такому виду (с отступами) #comment_281497811

Давайте разберемся немного, какие цифры менять:

1. rg = 2500 и dw = 2000 - это длинна и ширина кадра

2. files = ['f01.bmp','f02.bmp','f03.bmp','f04.bmp','f03.bmp','f02.bmp'] - это массив имен файлов, которые описывают полный цикл анимации огней. Сами же файлы - это исходники, из которых будут вырезаться кадры. Рекомендуется переименовать файлы панорам в соответствии с приведенной строкой, т.е. f01.bmp, f02.bmp, f03.bmp, f04.bmp или заменить в тексте программы на свои имена.

3. В строке for i in range(22): нужно заменить число, чтобы получить нужное количество кадров. Например, требуется создать 1528 кадров, просто делим это количество на 60, забираем целую часть и увеличиваем на 1. То есть 1528 / 60 = 25,4 --> 25 + 1 = 26. Именно это число надо вписать в скобки, for i in range(26):

Итоговое количество созданных кадров не должно быть меньше 1528.

В итоге будет создано 26 * 60 = 1560 кадров. Лишнее всегда можно удалить.

4. path = 'D:/SOR/'+ files[frame] - это строка, которая указывает путь к файлу исходнику.

В кавычках указан путь к папке, где лежат 4 исходника, в данном примере - это папка SOR на диске D.

Здесь нужно только указать свою папку с исходниками.

5. path2 = 'D:/SOR/Ready/'+ 'r000' + str(delta) + '.bmp' - это строка, которая указывает путь сохранения кадра. В данном примере - это папка Ready, которая лежит в папке SOR на диске D.

Здесь нужно только указать свою папку для сохранения готовых кадров.

Вот так выглядит папка D:/SOR

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

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

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Ну вот, кадры готовы.

Всего 2 минуты нужно было программе чтобы создать 1188 кадров !!!
Дальше ещё веселее - Монтаж видео !!! Готовы ???

Этап 3 - Монтаж видео

По сути это короткий этап, но тоже мозговыносящий. А всё потому, что нужно найти нормальный видеоредактор с нормальным таймером. У некоторых редакторов 1 секунда - это 29 мс или фреймов, не знаю точно. У других 1 секунда - это 999 мс.

В общем надо понимать, сколько кадров в секунду будет у нас 25 или 30.

Я остановился на программе Movavi Video Editor Plus. Всё просто открываем программу, импортируем картинки (ага, ЩАС !!!).

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

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

Всем картинкам на временной шкале нужно задать длительность 25 мс

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Теперь осталось вывести это в видеофайл. У меня это MP4

Этап 4 - Запуск

Завершающий этап. Здесь нам поможет прога PUSH VIdeo Wallpaper

Видео обои Streets of Rage Streets of Rage, Живые обои, Видео, Длиннопост, Без звука

Всё просто: Нажимаем плюсик - Выбираем видео - Сворачиваем окно в трей (не закрываем) - И....

...Наслаждаемся ))))

Данная прога способна также воспроизводить и звук если надо или если он в видео встроен.

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

Вот и всё. Пользуйтесь, если кому интересно )))

P.S. Если есть более простые способы добиться той же цели - буду рад узнать )))

Показать полностью 10 1
[моё] Streets of Rage Живые обои Видео Длиннопост Без звука
4
9
LEXX495
4 года назад
Постапокалипсис

Москва-Сити постапокалипсис анимация⁠⁠

moscow post-apocalypse, ambience, live wallpaper.

Постапокалипсис Москва Москва-сити Анимация Cinematic Живые обои Видео
3
7
LEXX495
4 года назад
Постапокалипсис

Post apocalypse military outpost⁠⁠

Постапокалипсис Сталкер Живые обои Видео Анимация Cinematic
0
14
LEXX495
4 года назад
Постапокалипсис

Мёртвый город, постапокалиптика⁠⁠

Постапокалипсис Фантастика Apocalyptica Заброшенные города Арт Game Art Анимация Живые обои Видео
4
9
LEXX495
4 года назад
Арт

Москва-сити постапокалиптика⁠⁠

Москва-сити Анимация Видео Постапокалипсис Живые обои Арт Фан-арт
5
14
Po3eto4ka
4 года назад

Обои-залипалка⁠⁠

[моё] Живые обои Обои на рабочий стол Залипалка Видео
21
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии