URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 114588
[ Назад ]

Исходное сообщение
"Google опубликовал утилиту для преобразования GIF в анимиров..."

Отправлено opennews , 14-Июн-18 22:55 
Разработчики из Google приурочили к 31-летию графического формата GIF публикацию (https://opensource.googleblog.com/2018/06/tenor-gif-for-cli....) утилиты gif-for-cli (https://github.com/google/gif-for-cli), которая позволяет преобразовывать анимированные GIF-файлы в форму анимированной ASCII-графики. Например, помощи данной утилиты можно организовать отображение в терминале видеозаставки в виде ASCII-графики, добавив вызов gif-for-cli в .bashrc или .profile. Код утилиты написан на языке Python и опубликован (https://github.com/google/gif-for-cli) под лицензией Apache 2.0.

После запуска утилиты, она преобразует GIF-файл  при помощи ffmpeg в набор JPG-кадров, которые кэшируются в каталоге ~/.cache/gif-for-cli и сменяя друг друга выводятся на терминал. Утилита автоматически определяет возможности текущего терминала и число поддерживаемых цветов, формируя оптимальное ACSII-изображение.

URL: https://opensource.googleblog.com/2018/06/tenor-gif-for-cli....
Новость: https://www.opennet.ru/opennews/art.shtml?num=48779


Содержание

Сообщения в этом обсуждении
"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 14-Июн-18 22:56 
В ffmpeg и так есть фильтр ASCII. Что они изобрели?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 00:57 
> Что они изобрели?

Машину времени, очевидно же!


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено iPony , 15-Июн-18 08:19 
Как с ffmpeg в итоге ASCII видео вывести в терминал?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Khariton , 15-Июн-18 09:17 
уже лет десять как можно:
mplayer -vo caca movie.mpeg

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено iPony , 15-Июн-18 10:54 
Оно и понятно, что разными способами можно.
Это не ffmpeg.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 15:04 
А внутри не ffmpeg?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Anonimous , 16-Июн-18 19:15 
а я думал что внутри libavcodec

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Очередной аноним , 15-Июн-18 08:32 
> В ffmpeg и так есть фильтр ASCII. Что они изобрели?

Я, конечно, ни в зуб ногой в этом, но может быть "Утилита автоматически определяет возможности текущего терминала и число поддерживаемых цветов, формируя оптимальное ACSII-изображение.", а фильтр в ffmpeg этим не занимается? (Конечно, могу и ошибаться). Может, упомянутому Вами фильтру надо точные параметры указывать, чем и занимается эта утилита, прикинув нос к х...ситуации?


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено iPony , 15-Июн-18 08:37 
Кэп, заявляет что на просто занимается работой по связке:

получения gif-ок c tenor https://tenor.com/search/unicorn-gifs
выводе отдельных кадров в терминал в разных режимах с определенным фреймрейтом

Да, ничего революционного тут нет. Ну так и написано чисто ради прикола.
И не может это сам по себе ffmpeg сделать


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 14-Июн-18 23:00 
внатуре, преобразует gif в jpeg. ffmpeg'ом. Это все что вам нужно знать о квалификации, уме и таланте индусов. работающих в гугле.

Ради "31летия" можно и не стараться.

(интересно, сколько займет написать с нуля парсер анимированного гифа в битовый формат, если никуда кроме спека не подглядывать? За пол-дня можно управиться?)


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено IRASoldier , 15-Июн-18 06:38 
А нафига бы велосипед изобретать?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Blind Vic , 15-Июн-18 07:14 
То, что вы смогли прочитать код и найти в нем автора кода, много говорит о вашей квалификации, уме и таланте.

> author='Seán Hayes',


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:23 
Индус в IT - это не только национальность, это еще и склад ума.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 14-Июн-18 23:13 
Прсмотрел, вполне годный код для простой поделки. Если писали индусы, то многие наши в пролёте. Правда, у нас в шараге за отсутствие каментов надбавок бы лишили. И печенек тоже.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 00:14 
> Правда, у нас в шараге за отсутствие каментов надбавок бы лишили. И печенек тоже.

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


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 00:36 
Формальный язык это индусы?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 18-Июн-18 09:53 
Санскрит!

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено KonstantinB , 15-Июн-18 09:10 
На тему комментариев мне вспоминается код где-то 12-летней давности, который в той компании, где он был написан ее сотнудником, стал каноничным примером "как не надо делать". Выглядело это так:

$db->beginTransaction(); // начинаем транзакцию

...далее следует простыня кода строк на 200 со стремящейся к бесконечности цикломатической сложностью без единого комментария...

$db->commit(); // завершаем транзакцию

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


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:33 
Во-во. Еще, к примеру, код, который ты правишь прямо сейчас, может упоминаться в комментах в абсолютно другом файле: наличие обильных комментариев означает, что тебе нужно не просто править код, но и искать по всему проекту все места, где этот код в комментах хоть как-то упоминается. Изменяешь интерфейс - иди ищи-свищи все комменты, где на него ссылаются. Удалил метод? - поищи, вдруг кто-то в комментах рекомендует его использовать. Самый простой и яркий пример из моей практики: в теле одного метода был вставлен коммент, где упоминался "предыдущий метод", типа:

first () {
}
second () {
  // Зачем нужен этот метод, когда есть предыдущий?
}

Далее другим программистом был вставлен третий метод, аккурат между первым и вторым; таким образом, коммент стал вводить в заблуждение. ИЧСХ, никто себе такой цели не ставил - кого-то обмануть, просто так случилось.

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


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено KonstantinB , 15-Июн-18 10:30 
Вообще, подобные проблемы по большей части решаются на code review.

Я, даже если делаю проект один, пользуюсь git flow и мержу только через пулл-реквесты. Даже после небольшого перерыва на чашечку кофе смотришь на собственный код, показанный в виде наборов изменений, несколько более свежим взглядом.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено NuclearWar , 15-Июн-18 10:41 
> А вообще, да, у меня правило - если хочется написать комментарий, то надо переписать код так, чтобы он был не нужен. И только в редких случаях (например, оптимизация), когда переписать без потерь нельзя, пишу комментарии.

COBOL переизобретаешь?


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено anonimm , 16-Июн-18 17:10 
> А вообще, да, у меня правило - если хочется написать комментарий,
> то надо переписать код так, чтобы он был не нужен.
> И только в редких случаях...

Только для софта уровня студенческой лабораторной работы.

> $db->beginTransaction();
> $db->commit();

php... Тогда всё понятно.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено НяшМяш , 16-Июн-18 23:31 
>> $db->beginTransaction();
>> $db->commit();
>
>php... Тогда всё понятно.

Ну, тут уже личинка программиста просматривается - оно про транзакции знает.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Oleg , 14-Июн-18 23:26 
Этож ДЕДПУЛ ВТОРОЙ

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 16:29 
Это не Дэдпул. Это Питер. Просто Питер.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 14-Июн-18 23:49 
Так я что-то не понял, они преобразовывают gif в набор jpeg-картинок или таки в ascii графику?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Андрей , 15-Июн-18 02:28 
Они просто чутка освоили ffmpeg, с радостью про это сообщив как о своей победе.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено iPony , 15-Июн-18 08:10 
> Они просто чутка освоили ffmpeg, с радостью про это сообщив как о своей победе.

Как на Opennet любят выдумывать...

Это сделал один человек, связанный с проектом Tenor - online GIF search engine and database (что недавно купила Google).

Явно написано

> This is not an officially supported Google product.

Чисто ради прикола было сделано. Так что к чему выдумки про "они", "как о своей победе"...


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:09 
т.е. (c) 2018 google не в счет

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 10:43 
А это всего лишь требования работодателя.

У меня приятель музыку пишет и издаёт на зарубежном лейбле, так там по условиям контракта он чуть ли не татуировку должен сделать со словами "правами на мои записи обладает Имя Рекордс". Тут примерно то же самое.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 14-Июн-18 23:53 
ffmpeg написан точно не google.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Андрей , 15-Июн-18 02:30 
blogenffmpeg?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено srvinme , 15-Июн-18 04:05 
Python всему голова.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 06:41 
если бы мне потребовалось написать простейший скриптик для запуска ffmpeg с правильными параметрами, я бы тоже выбрал питон. Собственно, питон для того и предназначен, чтобы писать одноразовые скрипты, и Google в данном случае выбрал верный язык (альтернативой ему здесь мог бы быть разве что bash).

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 17:41 
Заметьте, и рыба тоже гниёт с головы....

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 04:37 
> кэшируются в каталоге ~/.cache/gif-for-cli

Пусть Гоперов это GC и многопоточность без GIL!


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 07:44 
А какова область применения?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Очередной аноним , 15-Июн-18 08:29 
Одна из них там описана. Перечитайте новость еще раз, но внимательнее.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 08:21 
Но... зачем?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Пришлый , 15-Июн-18 09:09 
Наконец-то можно смотреть на сиськи в консоле.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:12 
libcaca

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:16 
Интересно, почему не на Go написали....

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено x , 15-Июн-18 09:28 
очевидно уже есть... и даже вот такое
https://github.com/tombh/texttop

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 09:44 
Тогда совсем непонятно, что они хотели показать..... Отметить годовщину древнего графического формата программой на древнем языке программирования.... Ок..... Надо было на Коболе писать. Больше фана было бы....

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 11:20 
>на древнем языке программирования

20 февраля 1991 - это древний?


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 12:08 
> 20 февраля 1991 - это древний?

После него уже 2 поколения языков выросло с исправлениями родовых ошибок....

К тому же, и в прямом, и в переносном смысле, питон - прошлый век.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 17-Июн-18 01:29 
Может вам и perl вместе с php не нужен?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 17-Июн-18 08:27 
perl уже точно не нужен. Php пока ещё можно поиспользовать. Впрочем, напоминаю, что Php - моложе питона и его ошибки не содержит

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 13:12 
curl -s codemasters.pro
Уже развлекались

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 13:14 
Либа libcaca + ffmpeg, перевод экрана и никакой магии.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено saahriktu , 15-Июн-18 13:12 
А тем временем для графических терминалов (включая xterm, mlterm, yaft,... и т.д.) уже есть libsixel - https://github.com/saitoha/libsixel -, которая умеет выводить в терминал в т.ч. и GIF, в т.ч. и анимированный, но именно графикой.

Слакбилд здесь: https://github.com/saahriktu/saahriktu-slackbuilds/tree/mast...

И, да, в -current'е xterm уже из коробки с графикой.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 17-Июн-18 01:25 
Спасибо!

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено ПДК , 15-Июн-18 14:39 
Похоже гуглерам совсем заняться нечем. От жира бесятся.

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено нах , 15-Июн-18 15:05 
от жира было бы, если бы поделка не ffmpeg'ом gif в jpeg (дважды-неосиляторы) а оттуда в ascii (что и без них сто лет как умели, libaa 1998го года), а как следует - без использования здоровенных чужих кусков кода не по назначению. И можно на каком-нибудь забавном языке - awk, к примеру, неплохо бы смотрелся.
А тут, увы, ненужное ненужно, и то сляпано на от..сь. На единственном языке, которым автор, видимо. умел пользоваться в достаточной степени, чтобы вызывать оттуда ffmpeg.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Дуплик , 15-Июн-18 18:17 
>Код утилиты написан на языке Python
>cmd = [
>        'ffmpeg',
>        '-i', input_source_file,

А я вот давеча браузер написал на Bash'е:

#!/bin/sh
firefox &


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено PereresusNeVlezaetBuggy , 15-Июн-18 19:30 
Я скачал, а он не работает, на все сайты говорит комманд нот фаунд. Что я делаю не так?

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено 225 , 16-Июн-18 06:01 
Завтсимости не установил :)

"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 15-Июн-18 20:10 
Ладно тебе, Дуплик. Разве ж это браузер? Вот браузер на баше:

#!/usr/bin/env bash
google-chrome "$@"


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Какаянахренразница , 16-Июн-18 21:10 
> firefox &

[...]

> google-chrome "$@"

/etc/alternatives/x-www-browser


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Аноним , 17-Июн-18 01:31 
$ stat /etc/alternatives/x-www-browser
stat: cannot stat '/etc/alternatives/x-www-browser': No such file or directory

При этом установлены Firefox и Chrome через пакетный менеджер.


"Google опубликовал утилиту для преобразования GIF в анимиров..."
Отправлено Какаянахренразница , 18-Июн-18 09:20 
> $ stat /etc/alternatives/x-www-browser
> stat: cannot stat '/etc/alternatives/x-www-browser': No such file or directory
> При этом установлены Firefox и Chrome через пакетный менеджер.

Ну, тогда через xdg-open.