LINUX.ORG.RU

Сообщения question4

 
Форум — Talks

Гейман о пиратстве

 ,

Наткнулся: https://youtu.be/84M55-TL5go Датировано 26.11.2023.

Автоматическая расшифровка — в комментариях, чтобы не забивать ленту.

Вкратце — говорит, сперва боялся, что если не предпринимать мер к пиратам, автоматически теряет права на выложенные тексты, но потом обнаружил, что его пиратят в России, затем пираты переводят и выкладывают переводы, и когда он пытается издаваться в России, у него неожиданно высокие продажи. Попробовал на месяц выложить бесплатно «Американские боги» на английском — продажи в независимых магазинах подскочили. Приводит пример: примерно 5-10% впервые прочли своего любимого писателя в купленной в магазине книге, а 90-95% — в книге, которую они взяли почитать. Поэтому считает, что бояться пиратства и интернета не следует.

question4
()
Форум — Talks

Информационная безопасность и двухфакторная аутентификация

 , ,

Получил новую машину (для тестирования кросплатформенных программ .Net/Mono), пытаюсь залогиниться в Джиру (на atlassian.net, авторизация через Microsoft), 2-факторная аутентификация, логин, пароль, жду SMS. Жду… Жду… Жду… Меняю способ авторизации на голосовой телефон. Приходит звонок, просит нажать любую кнопку, но все нажатия игнорирует. Иду к админам, беру код, логинюсь.

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

Atlassian Microsoft упрощает работу ЦРУ? :)

Продолжение:
Полез на другой сайт, где та же корпоративная авторизация, и куда давно не заходил. Снова запросило пароль, снова послало код на WhatsApp. Я этот код ввёл. Его отказалось принимать, как неверный. Я запросил новый код. Новый код пришёл по SMS.

question4
()
Форум — Multimedia

Исправить разрешение в MP4

 

Есть 2 файла с видео в разрешении 320x240. При попытке запустить их в mpv одновременно командой
mpv --lavfi-complex="[vid1][vid2]vstack[vo];[aid2] acopy [ao]" 1.mp4 --external-file=2.mp4
получаю ошибку
[ffmpeg] Parsed_vstack_0: Input 1 width 480 does not match input 0 width 320.
Аналогично для hstack получаю
[ffmpeg] Parsed_hstack_0: Input 1 height 360 does not match input 0 height 240.
Если поменять файлы местами — ошибка та же. Насколько я понял, в свойствах видеопотоков прописано верное разрешение 320x240, но в свойствах контейнеров 480x360. И для главного файла (input 0) берутся параметры потока, а для external-file (input 1) — параметры контейнера.

(Кому интересно, такие файлы получаются, если сохранять видео с Ютуба через сайт ddownr.com если у видео разрешение ниже заданного в веб-форме. Но для формы минимальное разрешение — 360p.)

Вопрос: как изменить свойства файла, чтобы сделать верное разрешение? Вероятно, это делается одной командой ffmpeg, но я её пока не нашёл. -c copy сохраняет неправильное разрешение.

question4
()
Форум — Linux-org-ru

Проблемы с подсветкой элементов списка в истории правок?

 

В списке Оффтопик-лист (изменён 03.09.2025) видно 24 пункта. Если открыть историю правок, в последнем варианте тоже 24 пункта. Но если включить подсветку изменений, пунктов будет 25, добавится «21. Обсуждение криптовалют, не имеющее непосредственного отношения к GNU/Linux.» В чём дело? Удалённый элемент списка не подсвечивается красным и сдвигает нумерацию?

question4
()
Форум — Mobile

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

 ,

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

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

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

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

question4
()
Форум — Talks

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

 

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
()
Форум — Multimedia

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

 , , , ,

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

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

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

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

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

question4
()
Форум — Talks

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

 ,

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

question4
()
Форум — Development

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
()
Форум — Talks

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

 ,

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

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

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

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

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

question4
()
Форум — Talks

Книга на 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
()
Форум — Talks

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

 ,

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

question4
()
Форум — Desktop

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

 ,

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

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

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

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

question4
()
Форум — Talks

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

 ,

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

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

question4
()
Форум — Multimedia

Синхронизировать 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
()
Форум — Linux-hardware

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

 , ,

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

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
()
Форум — Admin

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

 , , 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:
За неделю новых проблем не появилось.

question4
()
Форум — General

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
()
Форум — Linux-hardware

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

 , ,

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

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

question4
()
Форум — General

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

 ,

Есть сайт со статическим 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
()

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