LINUX.ORG.RU

Сообщения question4

 

Чем сейчас лучше писать треки GPS?

Езжу на велосипеде по Москве и области, записываю свой маршрут. Пока попробовал http://agps-tracker.com. Сохраняет в формат GPX (http://www.topografix.com/GPX/1/1/) Когда работает — работает нормально, даже при отсутствии сети, ставит точки каждые несколько секунд, координаты вполне точные. Но иногда уносит точки чёрт знает куда — километров на 40 по горизонтали и на высоту 30 км, например. Или ставит точки через 10-30 минут при заряженной батарее.

Я не вполне представляю, как должен работать трекер в условиях глушения и помех. Такое ощущение, что AGPS-Tracker много выбрасывает как недостоверные. Думаю, пускай пишет всё, без «умного» отсеивания странных точек, их можно будет потом удалить вручную.

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

Какие программы посоветуете?

 ,

question4
()

Можете опознать фильм?

https://www.youtube.com/watch?v=DmLJAYRazDY В видеоклипе использованы фрагменты из какого-то фильма. Или, возможно, компьютерной игры.

Мужчина бежит по лесу, выходит к заброшенному дому на опушке, у дома находит убитую лису (или рыжую собаку) с торчащими проводами и раненую чёрно-белую собаку. У него на руке какое-то устройство, которое иногда светится. Находит в доме консервы и какое-то фантастическое электронное оборудование (мелькают надписи «Greenhouse control» и «Artificial intelligence the end of the human race?»), выхаживает собаку. Спит с собакой на сеновале. Потом дверь выбивают, в дом входит человек в броне с ружьями, закреплёнными на руках (вероятно, не один), мелькает какое-то шарообразное устройство (ЭМИ-граната?), дальше беглец лежит мёртвый, из его шеи тоже торчат провода, но камера фокусируется на устройстве на руке, где написано «system transfer complete 100%». Следующий кадр — убежавшая собака, у неё на шее на цепочке устройство, которое раньше носил на шее беглец, наподобие микросхемы в стекле с надписью SONY.

Ответ: Немецкая короткометражка «The Last One» (2014).
https://www.youtube.com/watch?v=gMwcIuPOzgQ
Похоже, снята учащимися Баден-Вюртембергской киноакадемии.

 

question4
()

Ликбез по неразрушающему редактированию при сжатии с потерями

Если формат сжимает с потерями, значит при каждом изменении и сохранении всё будет пережиматься, размываться, будут теряться детали, добавляться артефакты… Но я знаю, что есть исключения. Например, JPEG можно поворачивать на 90 градусов и зеркалить. Вообще JPEG состоит из независимых блоков 8х8 или 16х16, любой из которых можно менять или удалять, не затрагивая остальные. Видео и звук можно обрезать по ключевым фреймам — при склейке первый кадр после шва должен быть ключевым, хвост вообще можно обрезать где угодно. А что ещё?

Можно ли преобразовать JPEG в какой-то из новых форматов без перекодирования? Помимо JPEG XL.

Можно ли конвертировать друг в друга без перекодирования какие-либо из форматов, использующих вейвлетное сжатие: DjVu, JPEG2000, WebP и т.п.?

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

Перемещено hobbit из talks

 , , , ,

question4
()

Твиттер пишут криворукие дебилы

На этот раз забанили в Твиттере. Успел только зарегистрироваться, отписаться от НАСА, отключить заблюривание небезопасных картинок и пролистать раздел Media одного пользователя года на полтора-два вниз. Выдаёт капчу, но не может её загрузить, так как https://client-api.arkoselabs.com/rtig/image?challenge=0&… выдаёт 403.

 ,

question4
()

5 гласных в алфавитном порядке. Как лучше считать?

Наткнулся на лингвистический прикол: поиск слов, в которых есть все 5 гласных в алфавитном порядке. В случае английского это aeiou («y» не участвует, как дублирующая «i»), и таких слов довольно много. Для русского рассказывавший выбрал аиоуэ, и нашлась только «радиодуэль», которой нет в большинстве словарей.

Я решил тоже попробовать поискать. Питоном в первых попавшихся списках слов. Условия сделал чуть менее жёсткими: гласные должны быть в алфавитном порядке, и из каждой пары а-я, о-ё, у-ю, ы-и, э-е должна быть только одна буква.

Сделал так: из списка слов выбирается subset, в котором ровно по 1 гласной из каждой пары, затем регулярным выражением выбираются слова, где они в алфавитном порядке.

import re, zipfile, py7zr

def five_vowels(w): 
    return w.count('а') + w.count('я') == w.count('э') + w.count('е') == w.count('ы') + w.count('и') == w.count('у') + w.count('ю') == w.count('о') + w.count('ё') == 1

rex = '[^аеёиоуыэюя]*' + '[^аеёиоуыэюя]*'.join(['а*','е*','ё*','и*','о*','у*','ы*','э*','ю*','я*']) + '[^аеёиоуыэюя]*'
# '[^аеёиоуыэюя]*а*[^аеёиоуыэюя]*е*[^аеёиоуыэюя]*ё*[^аеёиоуыэюя]*и*[^аеёиоуыэюя]*о*[^аеёиоуыэюя]*у*[^аеёиоуыэюя]*ы*[^аеёиоуыэюя]*э*[^аеёиоуыэюя]*ю*[^аеёиоуыэюя]*я*[^аеёиоуыэюя]*', w)]

wordlist = zipfile.ZipFile('word_rus.zip').read('word_rus.txt').decode().split('\r\n')
subset = [w for w in wordlist if five_vowels(w)]
ordered = [ w for w in subset if re.fullmatch(rex, w)]
print(ordered)

wordlist = py7zr.SevenZipFile('russian-wordlist-inflections-1251.txt.7z').read(['russian-wordlist-inflections-1251.txt'])['russian-wordlist-inflections-1251.txt'].read().decode('cp1251').split('\n')
subset = [w for w in wordlist if five_vowels(w)]
ordered = [w for w in subset if re.fullmatch(rex, w)]
print(ordered)

Как-то можно это записать покороче?

 ,

question4
()

Кто-нибудь может это пояснить?

Дело было в конце мая, но постов на ЛОРе не было, вроде.

https://github.com/googleapis/elixir-google-api/commit/078b497fceb1011ee26e094029ce67e6b6778220

https://ipullrank.com/google-algo-leak

Вроде бы, случайно выложили документацию по API и ранжированию результатов. Из этого делают далеко идущие выводы.

Кто в этом разбирается, можете подтвердить или опровергнуть?

 ,

question4
()

Книга на LinkedIn

Когда-то проходил какой-то курс на Coursera. Сейчас пришло письмо, что курс издан в виде отдельного PDF под названием «30 algorithmic interview questions with solutions», дали ссылку на заблокированный в РФ сайт: https://www.linkedin.com/posts/alexanderskulikov_30-algorithmic-interview-questions-with-solutions-activity-7193703459714424832-ORWE Для скачивания нужен аккаунт с привязкой к телефону.

Кому интересно и не лень, можете сделать доброе дело и выложить в более доступном месте.

P.S. Пока тут: https://0x0.st/XPaH.pdf

 

question4
()

Вас когда-нибудь банили на livejournal.com по диапазону IP?

Попробовал скачать wget-ом один журнал. После 500М заблокировали. У кого опыт есть, это надолго?

 ,

question4
()

Глюки Kate со временем?

Сижу, редактирую текстовый файл (компоную копипасту). Сохраняю чуть ли не каждую минуту. Внезапно появляется сообщение «файл на диске был изменён». Сохранил под другим именем, откатил правки к последнему сохранению, сохранил под третьим. Сравнил — «изменённый» и откаченный идентичны.

В чём может быть дело?

lsof этот файл не видит. Я правильно понимаю, что Kate его при каждом сохранении открывает-закрывает и запоминает время?

P.S. Предыдущие несколько недель пользовался vim и mcedit, которые тоже отслеживают модификацию файла посторонними, но ни о чём не сигналили.

 ,

question4
()

Небольшой телефон с хорошей камерой

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

Если он легко рутится или вообще есть рабочая свободная прошивка — совсем здорово.

 ,

question4
()

Синхронизировать 2 клипа в mpv

Хочу сравнить 2 видео. Для этого можно их запустить в mpv одно над другим:
mpv --lavfi-complex="[vid1][vid2]vstack[vo];[aid1][aid2]amix[ao]" klf.mp4 --external-file=klf.mpg
или
mpv --lavfi-complex="[vid1]scale=640x480[v1s];[v1s][vid2]vstack[vo];[aid1][aid2]amix[ao]" klf.mp4 --external-file=klf.mpg

Но в данном случае оказалось, что в начале klf.mp4 есть 10-секундная заставка. Как синхронизировать видео и аудио из разных файлов? В документации нашёл cue и adelay, но они не срабатывают, и готовых примеров не нашёл. Как задержать запуск 2-го файла на 10 секунд?

Ответ:

  1. Добавить пустой кусок видео можно фильтром tpad. Приостановить звук — adelay, указав паузу для каждой дорожки данного файла, либо с параметром all=1 для всех. Итоговый вариант:
    mpv --lavfi-complex="[vid2]tpad=start_duration=10:start_mode=add:color=black[v2p]; [vid1][v2p]vstack[vo];[aid2]adelay=delays=10s:all=1[a2p]; [aid1][a2p]amix[ao]" klf.mp4 --external-file=klf.mpg --keep-open=yes

  2. Но amix работает криво, и одна из дорожек запаздывает на труднопредсказуемое время. Заданные 10s не соблюдаются, и я не уверен, удастся ли подобрать длительность паузы, чтобы совпадающие были синхронными. В итоге звук пришлось сравнивать в kdenlive.

 ,

question4
()

С диска пропадают файлы

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

smartctl /dev/sdb -l error пишет «No Errors Logged».

e2fsck при плановом тестировании при перезагрузке ошибок не нашёл и ничего не восстановил.

$ mount | grep sdb1
/dev/sdb1 on / type ext4 (rw,noatime)

P.S. Ранее на этой же машине 2 раза пропадали файлы из ~/.local/share/kwalletd/

P.P.S. Сверил даты — оба аудиофайла пропали после неудачной установки клиента Zscaler, которая заодно убила утилиту ping. Но это не объясняет проблемы с KWallet.

P.P.P.S. Восстанавливать данные файлы не требуется — пароли вбил повторно, музыку скачал. Вопрос на будущее — как поймать удаление.

 , ,

question4
()

Установка Zscaler убила сеть

По работе поставил на домашнюю машину клиент Zscaler. Запустил его конфигуратор, который заругался на отсутствие systemctl(?) и чего-то debconf. После этого начались проблемы с сетью: уже открытые сайты работали, но новые не открываются, и ничего не пингуется. Админ предложил снести Zscaler и перезагрузиться — не помогло.

Ping, как выяснилось, работает только по IP и под рутом. Доменные имена не ресолвятся. Gentoo с OpenRC.

В чём проблема, как исправить?

Дополнение 1:

DNS отвалилось из-за замены /etc/resolv.conf на симлинк на /run/systemd/resolve/stub-resolv.conf. Восстановил из резервной копии.

Ошибка, которую выдаёт пинг без рута:

$ LC_ALL='C' ping 8.8.8.8
ping: socktype: SOCK_RAW
ping: socket: Operation not permitted
ping: => missing cap_net_raw+p capability or setuid?

Если добавить setcap CAP_NET_RAW+p /usr/bin/ping и даже setcap CAP_NET_RAW+i /usr/bin/ping или setcap CAP_NET_RAW+e /usr/bin/ping, как советуют на некоторых форумах, это не помогает.

Дополнение 2:
ping заработал после переустановки net-misc/iputils.

Дополнение 3:
За неделю новых проблем не появилось.

 , , zscaler

question4
()

nut-scanner не находит библиотеку

При запуске nut-scanner не находит libusb:

# nut-scanner
Cannot load USB library (/usr/lib64/libusb-1.0.so) : file not found. USB search disabled.

С этой библиотекой в Gentoo не всё просто:

# file /usr/lib64/libusb-1.0.so 
/usr/lib64/libusb-1.0.so: ASCII text
# file /usr/lib/libusb-1.0.so 
/usr/lib/libusb-1.0.so: symbolic link to libusb-1.0.so.0.3.0
# file /usr/lib/libusb-1.0.so.0.3.0 
/usr/lib/libusb-1.0.so.0.3.0: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, stripped
# file /lib64/libusb-1.0.so.0.3.0
/lib64/libusb-1.0.so.0.3.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, stripped

Нужна последняя, но как её скормить nut-scanner-у? LD_LIBRARY_PATH не помогла:

# LD_LIBRARY_PATH=/lib64 nut-scanner
Cannot load USB library (/usr/lib64/libusb-1.0.so) : file not found. USB search disabled.

P.S. sys-power/nut-2.8.0-r3 и dev-libs/libusb-1.0.26.

Итог: Из-за странного алгоритма поиска библиотеки остаётся только руками заменять /usr/lib64/libusb-1.0.so на симлинк на /lib64/libusb-1.0.so.0.3.0 и затем обратно. Возможно, в будущем будет работать LD_LIBRARY_PATH.

 , ,

question4
()

Какой программой сжимать VP9 и AV1 на GPU?

Сабж. Какие программы умеют хорошо сжимать видео на современных видеокартах в форматы AV1 и VP9?

В качестве ориентира скажу, что Avidemux при кодировании x264 с дефолтными настройками на Nvidia GeForce GT 710 всё неприемлемо размазывает.

 , ,

question4
()

Узнать размер зеркала без скачивания

Есть сайт со статическим HTML и кучей рисунков. Например, http://ohbah.com/comicget/comics/ Интересно узнать, каков будет его объём на диске после скачивания wget-ом. В интернете нашёл совет:

wget2 --recursive  -erobots=off --no-parent --spider --server-response http://example.com/folder/1/2/3/ 2>&1 | grep -i content-length | gawk '{sum+=$2}END{print sum/1e6}'

Но таким образом не выводится объём изображений, который там на порядки больше, чем HTML. Добавление ключа --page-requisites ничего не меняет.

Если выводимый wget текст сохранить в файл, взять pcregrep -o1 'Adding URL: (.*)' и скормить URL-ы curl -IL, будут размеры изображений, но не будет размеров части HTML-файлов.

Существует ли менее костыльное решение?

 ,

question4
()

Три монитора без иксов

Можно ли использовать 3 монитора в ядерной консоли для разных tty? Сейчас у меня на все три выводится одно и то же (причём ширина соответствует самому узкому из мониторов).

 ,

question4
()

Наткнулся на свободные игры на RenPy

Исходники хостятся на собственном сервере Gitea: https://git.cavemanon.xyz/Cavemanon

Визуальные романы. 3 коротких, 2 подлиннее. Скрипты — под лицензией Affero 3, картинки и музыка — Affero, CC-BY-SA, CC0. Есть и бинарные сборки:

Snoot Game https://snootgame.xyz
Скандально известная пародия на игру Goodbye Volcano High, которая пыталась выехать на LGBTQ+ повестке и антропоморфных динозаврах. Коллективное творчество с 4chan.
Выпускной класс, безликий (в буквальном смысле) новенький Анон И. Мус, небинарная гитаристка-скандалистка. Можно убедить её сменить ориентацию на гетеросексуальную. Или довести до расстрела школы. Или оставить всё как есть.
Приятная гитарная музыка, похожая на Wallflowers и Dire Straits.

I Wani Hug that Gator! https://cavemanon.itch.io/i-wani-hug-that-gator-demo
Спинофф от тех же авторов со снижением накала драмы. Безликий новенький Инко Г. Нито и мрачная художница в инвалидном кресле. Игра в процессе написания. Кстати, это не аллигатор, а барионикс.

A Star in Her Eyes https://cavemanon.itch.io/a-star-in-her-eyes
She Likes You Alotl https://cavemanon.itch.io/she-likes-you-alotl
She’s a bit sluggish https://cavemanon.itch.io/shes-a-bit-sluggish
Предельно простые симуляторы свиданий с персонажами из замороженной игры Exit 665.

 

question4
()

Что сейчас в России с бытовыми ИБП?

На новой квартире примерно раз в пару недель мигает электричество. Надоело каждый раз восстанавливать несохранённое. Можете посоветовать дешёвый бесперебойник, обеспечивающий 500 Вт?

Первые попавшиеся на Яндекс-маркете — ExeGate и CBR. Про них беглый поиск ничего не нашёл — ни хорошего, ни плохого. Дальше — PowerCom, ими, вроде, кто-то успешно пользуется некоторыми моделями. Можете про них что-то сказать? Или есть советы получше?

 

question4
()

Регулярные ошибки PR_IO_TIMEOUT_ERROR

Уже несколько часов примерно каждый десятый клик по ссылке на ЛОРе выдаёт ошибку в Фаерфоксе:

Время ожидания соединения истекло

При соединении с www.linux.org.ru произошла ошибка. PR_IO_TIMEOUT_ERROR

Код ошибки: PR_IO_TIMEOUT_ERROR

Что-то с сервером? Или у меня проблемы?

 

question4
()

RSS подписка на новые темы