Categories: Компьютеры, Linux, Железо, Игры, ПрограммированиеКак конвертировать VOB-файлы в mp4 (Linux)Допустим, у нас есть каталог VOB файлов с видеодиска, из которых хочется получить один файл, например, для удобства просмотра на смарт-ТВ по сети.
Готово! Raw-конвертер для Линукса - DarktableГода с 2008 я ленился обрабатывать накопленные raw-файлы, потому что от виндовой проги Canon для обработки у меня портится настроение и болят руки (а на Fuji я вообще не снимал равки, потому что там прога совершенно садистская), да и вообще у меня ни одного нормального компьютера с Виндовс давно нет, виртуальная машина отдельная мука сама по себе, а для Linux производители камер ничего не сделали (и Adobe тоже, насколько я знаю). И тут внезапно обнаружил, что уже есть вполне адекватный конвертер для Линукса: Darktable, причём он даже входит в репозиторий Убунту (sudo apt install darktable - и готово). А что ещё лучше, у него есть вариант для командной строки darktable-cli, которым можно одним махом перегнать целый каталог с raw-файлами в PNG или TIFF и просто свалить их в архив и выборочно (то что того стоит) редактировать уже привычным Гимпом. Уже проверил - результат после пары движений в Гимпе получается не хуже фирменного конвертера и намного лучше JPEG из камеры, по крайней мере для 40D, из которого у меня и лежит основная непроявленная масса. Для полного счастья не хватает только поддержки 16-битного вывода в darktable-cli в настоящий момент - если фотка сильно не попала по экспозиции то её всё-таки придётся обрабатывать самим Darktable. Сама прога успешно пишет в любой битности, так что, в принципе, можно просто гуёвым Darktable перегнать целый каталог в 16-битный TIFF - не совсем Linux-way, но пойдёт. Про C++Современный C++ всё-таки странная штука. template<typename Func, typename Obj, typename Arg, typename = void> struct is_callable_with_arg : std::false_type {}; template<typename Func, typename Obj, typename Arg> struct is_callable_with_arg<Func, Obj, Arg, std::void_t<decltype((std::declval<Obj>().*std::declval<Func>())(std::declval<Arg>()))>> : std::true_type {}; void call_impl(VAR_TYPE arg, std::true_type) { (clz_->*sig_)(arg); } void call_impl(VAR_TYPE, std::false_type) { (clz_->*sig_)(); } ... call_impl(var_, std::integral_constant<bool, is_callable_with_arg<MEMBER, CLASS, VAR>::value>{}); Устранение тормозов и 100% зажора CPU Linux/VMWare Player на Intel Core i7Симптомы - с определённой периодичностью виртуальная машина съедает на несколько минут 100% от каждого выданного ей процессора (т.е. на 4 ядра - загрузка 400% и т.п.), при этом хост притормаживает, а виртуалка вообще неуправляема, т.к. даже движения мышки отрабатываются с огромной задержкой. В это время внутри виртуалки нет процессов, занимающих столько CPU. При этом, на хостах AMD такой проблемы нет. После долгих мучений, рабочий ответ, наконец, найден тут:
Ловим процессы, которые шарятся по винту (Linux)Как отследить приложения, которые приводят к внезапному ворчанию винтов по ночам, не дают жёсткому диску уйти в спящий режим или регулярно будят его. iotopЕсли ввод-вывод активный и идёт прямо сейчас, достаточно просто посмотреть на sudo iotop -oЕсли ввод-вывод идёт небольшими порциями, то используем: sudo iotop -bktoqqq -d .5 Пояснение: -b - пакетный режим вывода, -k - килобайты, -t - показывать время, -o - показывать только потоки, которые занимаются вводом-выводом, -qqq - отключить заголовки, -d 0.5 - период обновления в секундах. Поймав, какой процесс занимается работой с диском, можно посмотреть на его открытые файлы: lsof -p $PID (замените $PID на номер интересующего процесса). fatraceЭто намного более удобный способ для отслеживания редких операций (программа есть в репозитории Убунты). Сразу печатает кто, в какой файл лазит и какой доступ (чтение или запись).cd /mnt/каталог_куда_смонтирован_винт sudo fatrace -c -t P.S. Типичные злодеи - индексаторы файловой системы, их можно выпилить так: sudo apt remove locate mlocate plocate. См. askubuntu. Также постоянным желанием писать на диск страдает Yandex.Disk - демона синхронизации можно гасить, когда он не нужен. Archives
|