Я бы не сказал, что это роботы (предполагая целостные и независимые механизмы; что бы привести в качестве примера?.. например «робо-пылесосы» — думаю все видели их рекламу/обзоры, может у кого-нибудь есть один такой дома), это больше механизмы/установки. Их можно делать модульными (возможно, только так их и стоит делать), но они будут частью одной сети.
Впрочем, чем больше разнообразия — тем лучше :) (не стоит поступать именно так)
без микросхем никуда
Микросхемы — безусловно отличное достижение, но я предлагал поставить себя на место архитектора, живущего 90-60 лет назад. Как бы он поступил?..
Да, у мня были такие опасения при выборе данного вида повествования:
Возможно со стороны это напоминает описание какой-то секты. Но я даже не могу представить секту, которая состоит из ученных и инженеров — получается «когнитивный диссонанс».
Если людей немного, то нужно ли сейчас такое большое «производство»? (с учетом того, что «основа» была создана уже давно, и параллельного развития технологий)
Колония?
Хороший вопрос, если позволите — отвечу наводящем вопросом: допустим, вы спроектировали и создали подобную колонию (вы ее архитектор) — будите ли вы сообщать всем ее координаты, с учетом того, что проект жизнеспособен только при участии небольшого количества людей?
Такие места, как Исландия, Аляска,… — спасает климат, а с другими нужно быть аккуратнее.
Круговой осциллятор оптического переключателя выполняет ту же функцию, что и отдельный транзистор, однако занимает в 10 000 раз большую площадь.
…
Проблема в том, что типичный оптический компонент, например, модулятор, невозможно сделать ощутимо меньше размера длины волны света, который он переносит – что ограничивает его минимальную ширину 1 микрометром.
…
Простой подсчёт. Допустим, на квадратном микрометре располагается в среднем 100 транзисторов. Тогда оптический модулятор, занимающий площадь 10 мкм на 10 мкм заменяет контур, состоящий из 10 000 транзисторов! Вспомните, что обычный оптический модулятор работает как единственный переключатель, который включает и выключает свет. Но каждый транзистор сам может работать, как переключатель...
Да, в цифровом бинарном исполнении он получается ущербным, не надо так делать ;)
Сжатие GIF-анимаций и почему <video> лучше
…
Выдача того же видео в формате MP4 сокращает размер файла на 80% или больше. Кроме того, что файлы GIF впустую тратят трафик, они дольше загружаются, содержат меньше цветов и обычно выглядят не очень приятно.
… ffmpeg -i animated.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)2:trunc(ih/2)2" video.mp4
Да, как-то пробовал сделать подобное — из каждого пикселя создавались 4 одинаковых пикселя (масштабирование «по ближайшим пикселям» без интерполяции). При этом плееру, при воспроизведении видео, необходимо было уменьшить его в 2 раза (по высоте и ширине).
Хорошая статья (местами, особенно про Guetzli+MozJPEG).
Но, как всегда, есть нюансы…
Сжатие GIF-анимаций и почему <video> лучше
…
Выдача того же видео в формате MP4 сокращает размер файла на 80% или больше. Кроме того, что файлы GIF впустую тратят трафик, они дольше загружаются, содержат меньше цветов и обычно выглядят не очень приятно.
… ffmpeg -i animated.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)2:trunc(ih/2)2" video.mp4
При этом стоит помнить, что будет использоваться цветовая субдискретизация4:2:0, что иногда неприемлемо для анимации (тонкие [однопиксельные] цветные темные линии на белом фоне...).
Плохое качество GIF вызвано не сжатием, а палитрой в 256 цветов.
Не забудьте сжать SVG!
… не забудьте зазиповать файлы SVG или выдавать их по протоколу Brotli
Либо предварительно сжимать их, используя "pigz -11 --keep --suffix z -- file.svg" (zopfli) — на некоторых моих SVG он давал лучшее сжатие, чем Brotli.
Если приходится использовать анимированные GIF
Инструменты вроде Gifsicle удаляют метаданные, неиспользуемые цвета палитры и минимизируют изменения между кадрами...
Приходилось использовать то, что было.
С другой стороны, если бы все не было так плохо, то бы и этого всего (исследований, серии статей, ...) тоже не было…
(все это напоминает фрагмент из первого "Железного человека" — заперли в «катакомбы», под рукой только металлолом, и нужно сделать...)
Намек на место, где это происходило
Порой решать индустриальные проблемы в некоторых государственных университетах весьма затруднительно.
P.S. по крайне мере он хорошо подходит для некоторых демонстраций работы с сигналом студентам.
P.P.S. я тоже увлекался работой с сигналом в неспециализированных аудио-редакторах :)
На самом деле multicast не такой простой, как кажется на первый взгляд. Чтобы осознать все «нюансы» нужно хоть раз его настроить. Либо прочитать про «проблемы», с которыми сталкиваются при настройке IPTV или радио (в мире основной процент multicast трафика — это IPTV или радио).
Причем, для IPTV/радио, в плане передачи данных, все просто — используется UDP, т.к. потеря пакетов для этих данных не так страшна.
И здесь возникает еще один вопрос: если мы передаем клиентам файл (нужно, чтобы каждый клиент получил полный файл), но в процессе передачи некоторые клиенты не получили часть файла (пакеты отбросились — не дошли до клиентов), то что делать в этом случае?
Решение не так просто, как «клиенты подключаются к серверу, и скачивают (unicast, TCP) недостающие части». А если потерялась (не дошла до клиентов) большая часть файла? Запускать еще одно multicast вещание именно для этих клиентов, но с пониженной скоростью передачи данных? Либо…
Как-то (давно) я писал работу "решение проблемы 'первого часа' в p2p (bittorrent)".
Слайды из нее
(два черных овала с белой обводкой — это сети двух разных «провайдеров»)
(на примере распространения большого обновления для операционной системы)
Часть презентации (с анимацией, которую нормально можно увидеть только в просмотрщике от MS :(
If a switch does not understand multicast addresses then it will flood that traffic to all the members of a LAN; in this case the system's network card (or operating system) has to filter the packets sent to multicast groups they are not subscribed to.
Впрочем, чем больше разнообразия — тем лучше :) (не стоит поступать именно так)
Микросхемы — безусловно отличное достижение, но я предлагал поставить себя на место архитектора, живущего 90-60 лет назад. Как бы он поступил?..
P.S. небольшое замечание: раньше микросхем не было ( / они были очень примитивные), но люди были очень сообразительны ;)
P.S. жалко, что ветка комментариев не та — RFC3453 упоминается в RFC 5740 (здесь), а RFC 5740 я упомянул в этой ветке комментариев.
Колония?
Хороший вопрос, если позволите — отвечу наводящем вопросом: допустим, вы спроектировали и создали подобную колонию (вы ее архитектор) — будите ли вы сообщать всем ее координаты, с учетом того, что проект жизнеспособен только при участии небольшого количества людей?
Такие места, как Исландия, Аляска,… — спасает климат, а с другими нужно быть аккуратнее.
В предыдущих своих рассказах автор использовал русские имена персонажей.
цифровомбинарном исполнении он получается ущербным, не надо так делать ;)У меня получились такие результаты:
меньшедругие цвета".Но, как всегда, есть нюансы…
При этом стоит помнить, что будет использоваться цветовая субдискретизация 4:2:0, что иногда неприемлемо для анимации (тонкие [однопиксельные] цветные темные линии на белом фоне...).
Все же создать анимированный GIF, в котором будет больше 256 цветов — вполне возможно ;) (полная версия — 15.7 MiB)
А если взять SVG, и включить в него PNG и GIF, то… ;)
Либо предварительно сжимать их, используя "
pigz -11 --keep --suffix z -- file.svg
" (zopfli) — на некоторых моих SVG он давал лучшее сжатие, чем Brotli.Не все так просто ← описан процесс экспорта в GIF этой анимации для Хабра.
Note: чтение может вызвать ассоциацию с сегодняшним постом про "Как восстанавливали видео для Full Throttle Remastered".
С другой стороны, если бы все не было так плохо, то бы и этого всего (исследований, серии статей, ...) тоже не было…
(все это напоминает фрагмент из первого "Железного человека" — заперли в «катакомбы», под рукой только металлолом, и нужно сделать...)
Спасибо за комментарии.
Но, как я уже писал, в сети, в которой multicast «превращается» в broadcast — это все перестает иметь смысл :(
Как-то я увлекся анализом сигналов, и нашел Signals Analyzer (SA):
P.S. по крайне мере он хорошо подходит для некоторых демонстраций работы с сигналом студентам.
P.P.S. я тоже увлекался работой с сигналом в неспециализированных аудио-редакторах :)
Причем, для IPTV/радио, в плане передачи данных, все просто — используется UDP, т.к. потеря пакетов для этих данных не так страшна.
И здесь возникает еще один вопрос: если мы передаем клиентам файл (нужно, чтобы каждый клиент получил полный файл), но в процессе передачи некоторые клиенты не получили часть файла (пакеты отбросились — не дошли до клиентов), то что делать в этом случае?
Решение не так просто, как «клиенты подключаются к серверу, и скачивают (unicast, TCP) недостающие части». А если потерялась (не дошла до клиентов) большая часть файла? Запускать еще одно multicast вещание именно для этих клиентов, но с пониженной скоростью передачи данных? Либо…
Как-то (давно) я писал работу "решение проблемы 'первого часа' в p2p (bittorrent)".
(на примере распространения большого обновления для операционной системы)
Часть презентации (с анимацией, которую нормально можно увидеть только в просмотрщике от MS :(
Ссылки «в тему»