Ответы пользователя по тегу Linux
  • Как скомпилировать бинарник ffmpeg?

    @monah_tuk
    env PKG_CONFIG_PATH=/usr/x86_64-w64-mingw32/lib/pkgconfig \
    ../configure \
                 --extra-ldflags="-static-libstdc++ -static-libgcc" \
                 --enable-static \
                 --disable-shared \
                 --enable-nonfree \
                 --enable-libfaac \
                 --enable-libfdk-aac \
                 --enable-cross-compile \
                 --pkg-config=pkg-config \
                 --arch=x86_64 \
                 --target-os=mingw32 \
                 --cross-prefix=x86_64-w64-mingw32-


    а дальше всё зависит от уже собранных библиотек. Вообще, читайте про кросс-компиляцию и т.п.
    Ответ написан
    Комментировать
  • Ffmpeg avi to mp4 h 264?

    @monah_tuk
    Товарищ Nc_Soft дал вполне работоспособные команды, да собственно и ваша изначальная тоже.

    UPD: по замечанию Nc_Soft исправлено про треды (прочитал 0 как 1, бывает).
    Отмечу, что -threads 0 стоит продублировать перед -i и после: положение опции играет роль: до -i - параметры для входа (как будет параллелиться декодировщик), после -i - параметры для выхода (как будет параллелиться кодировщик). Значение параметра - число тредов. 0 - будет выбрано оптимальное число (обычно по числу ядер с учётом гипертрединга), указывать больше чем есть - начнёте платить за переключения контекстов сильно много.

    С параметрами кодека лучше изучить: ffmpeg.org/ffmpeg-codecs.html#libx264_002c-libx264rgb и поиграться с нужными параметрами. Качество, как и цвет и вкус, параметр очень субъективный.

    Ещё вариант ускорения (если процессор простаивает и упираешься в IO): как минимум результат писать на tmpfs, после чего помещать куда нужно. Ну или переместиться полностью на SSD.

    ЗЫ интересно, кто меня в эксперты подписал?
    Ответ написан
    3 комментария
  • Какая есть простая утилита под linux для тестирования USB HID устройств?

    @monah_tuk
    HID достаточно многогранен. Что вы именно хотите и, главное, какие-то аналоги знаете (например под винду)?

    А так, я писал свою софтинку, используя hidapi:
    - www.signal11.us/oss/hidapi
    - https://github.com/signal11/hidapi
    там какой-то testgui есть, пользоваться не приходилось, можете его распотрошить.

    Либо, использовал бы WireShark для захвата и анализа USB пакетов. Либо что-то из снифферов отсюда:
    - www.linux-usb.org/tools.html

    Дескрипторы же можно посмотреть и при помощи обычного lsusb и графического usbview.

    По крайней мере, это то, что я использовал для разработки. Есть ещё всякие AnyHID - хорошая вещь, но под винду, но когда нужен продукт - тут не до принципов :) Ещё можно попробовать generichid.sourceforge.net, но мне использовать не довелось. Будет опыт - расскажите.
    Ответ написан
    2 комментария
  • Как визуализировать GPS-треки из Google Location History под Linux?

    @monah_tuk
    Попробуйте gpsbabel ем сконвертировать KML в GPX (погуглите команду), а последний открыть в QLandkarteGT - в ней можно выбрать OSM как источник карт, что бы примерно глянуть что, где и как. Либо загрузить карту привязанную. Как альтернатива, попробовать QMapShack - от автора QLandkarteGT - исправление косяков архитектуры :)
    Ответ написан
    Комментировать
  • Как можно проверять статус ip-камер видеонаблюдения?

    @monah_tuk
    Настройке таймаут (-timeout): нет данных ffmpeg благополучно отвалится, вернув не нулевой код возврата (в Unix shell можно проверить через значение $?). Запустите его в скрипте, как отвалится - можно из консоли дернуть какой-то REST api при помощи того-же curl - поднять ошибку в базе /к примеру/ (хотя если вообще отвалился - что-то пошло не так). С серверной стороны можно настроить колбек на появление стрима (Wowza, nginx-rtmp это умеют) который эту ошибку заресетит.

    Аналогично можно попытаться полностью обойтись колбеками на принимающем сервере.

    Да, попробую быть телепатом, раз IP камера, значит поток от неё, скорее всего, RTSP или MJPEG (HTTP), следовательно смотреть документацию: ffmpeg.org/ffmpeg-protocols.html#rtsp и опцию -stimeout. Возможно придётся зафорсировать транспорт: -rtsp_transport tcp.
    Ответ написан
    3 комментария
  • Как настроить запись звука через консоль в Linux Mint?

    @monah_tuk
    Судя по всему, это нужно: alsa.opensrc.org/Dsnoop
    Ответ написан
    Комментировать
  • Сохраните все изменения, сделанные во время работы со Slitaz?

    @monah_tuk
    Запрос к гуглу:
    slitaz persistent

    Найдено следующее:
    www.pendrivelinux.com/install-slitaz-to-usb-from-w...
    To enable SliTaz Persistence for persistently saving SliTaz changes, simply type slitaz home=usb at the Boot prompt. You will need to do this at every boot.

    superuser.com/questions/123399/how-to-make-slitaz-... более развёрнутый ответ в части персистенизации
    Ответ написан
    Комментировать
  • Как прочитать данные с USPS Scale(PS-10USB)?

    @monah_tuk
    Причём тут C++? А вообще, libusb любит возвращать PIPE ERROR когда устройство делает Stall на запрос, что говорит об ошибке его обработки или что реквест не поддерживается. Косвенно подтверждается этим:
    Report Descriptors: 
               ** UNAVAILABLE **

    а при этом делается setReport

    Далее, судя по дескрипторам это обычное HID устройство. Попробуйте до него достучаться при помощи: www.signal11.us/oss/hidapi/:
    sudo apt-get install libhidapi-dev

    usbscale тоже пробовал - долго висит и возвращает

    глупый вопрос, но вы свои VID:PID сюда добавляли:
    https://github.com/erjiang/usbscale/blob/master/sc...
    ?

    Ещё, тут: https://github.com/erjiang/usbscale/blob/master/us... в этом месте:
    // 
            // If the data transfer succeeded, then we pass along the data we
            // received tot **print_scale_data**.
            //
            if(r == 0) {

    они проверяют код ошибки на 0, это правильно, но какой именно ошибкой завершается запрос - непонятно. Судя по тому, что вы говорите ("долго висит"), у них там используется большой таймаут (10 сек), то код ошибки - LIBUSB_ERROR_TIMEOUT, а в документации сказано:

    Also check transferred when dealing with a timeout error code. libusb may have to split your transfer into a number of chunks to satisfy underlying O/S requirements, meaning that the timeout may expire after the first few chunks have completed. libusb is careful not to lose any data that may have been transferred; do not assume that timeout conditions indicate a complete lack of I/O.


    они ожидают блок размером WEIGH_REPORT_SIZE (6 байт), вдруг так случается, что размер у ваших весов поменьше? 5 байт? Т.е. нужно, для начала, подправить программку и залогировать код ошибки и значение переменной len. Если это действительно таймаут, а не PIPE ERROR, то уже проверять значение len на выходе, если оно больше нуля - пробовать процессить эти данные. Только процессинг, скорее всего, должен быть уже другой какой.

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

    Финальным же аккордом может стать реверсинг общения весов и виндовой программы при помощи Wireshark :-)

    Если не сможете сами, можете сделать мне заказ, заинтересует - пишите в почту (в профиле).
    Ответ написан
  • Правильно ли составлена команда WGet?

    @monah_tuk
    Я грабил сайты при помощи httrack
    Ответ написан
    Комментировать
  • Какой Linux подойдет лучше?

    @monah_tuk
    Сергей дельный совет дал :) Но если железо для периодического использования, то можно попробовать Mint, редакцию Mate или XFCE. Обе можно превратить во что-то своё. К примеру, я на нетбуке с меньшим объёмом памяти, сидел на IceWM, поставить его можно уже в той же убунте или минте (его пакетная база базируется, сейчас, на Ubuntu LTS, но оформление не юнити).

    Далее по пунктам:
    1. https://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D0%BD%D... - выберите себе. Или попробуйте: ugetdm.com/downloads. Сам раньше больше пользовался D4X, но проект больше не развивается, да и хватает wget -c. В остальном пытаюсь качать торрентами
    2. разваливается из-за железа или драйверов. Попробуйте просто друге DE, типа LXDE, XFCE, Mate либо более аскетичные варианты (чисто WM) типа IceWM.
    3. Про RDP в линухе только клиент знаю. ssh на хреновых каналах лучше. Ну или TeamViewer. Этого набора пока за глаза хватает
    4. не подскажу, т.к. не интересовало
    5. vine? Такой программы не знаю. Так что не подскажу. Если это опечатка wine, то во всех дистрибутивах есть. Для Ubuntu/Mint есть PPA с более свежими версиями - иногда полезно какую-то новомодную хрень запустить.
    Ответ написан
  • Существует ли виртуальный драйвер тачскрина в Linux?

    @monah_tuk
    Готового решения не знаю.
    Для иксов? Тогда можно на основе этого сделать: www.x.org/wiki/Development/Documentation/XorgInputHOWTO
    Или что-то evdev подобное колхозить.
    Ответ написан
    Комментировать
  • Как сохранить настройки hdparm?

    @monah_tuk
    Самый простой способ прописать эту строку в /etc/rc.local. На системах с systemd нужно или сделать свой unit или смотреть, вдруг дистрибутор предоставляет слой совместимости и rc.local тоже есть.

    Всё, что отсюда будет вызвано, будет вызвано от имени root, соответственно никаких sudo не нужно, прав хватит.
    Ответ написан
    Комментировать