[О блоге] [наверх] [пред] [2020-06-12 12:37:29+03:00] [94d581df931a13bce7f419069466d52a81b45e78]
Темы: [multimedia][tip]

Снова про screencasting

В продолжение 9e4f39c6983d7b1e2085f8e50dc4ab04d7a1ef95. Снова поигрался.
FFV1 даёт очень маленькие битрейты: 40-50 Mbps, но полностью отжирает
одно моё ядро и бывает пропускает кадры. ffvhuff делает видео с
битрейтом в 200 Mbps, однако, оно хорошо сжимается lz4 на ZFS и реальный
размер файла меньше чем у FFV1 (или хотя бы сравним), при куда меньшем
потреблении CPU:

    $ ls -l *.mkv
    -rw-------  156099086 /home/stargrave/tmp/ffv1.mkv (32 sec)
    -rw-------  700312881 /home/stargrave/tmp/ffvhuff.mkv (27 sec)
    $ du *.mkv
    152405  ffv1.mkv
    100688  ffvhuff.mkv

Таким образом, команда для записи со звуком какая-то такая получается:

    ffmpeg -f x11grab -video_size 1920x1080 -framerate 15 -i :0 \
           -f oss -i /dev/dsp0.0 \
           -codec:v ffvhuff -codec:a pcm_s16le out.mkv

А перекодировать в lossless VP9 можно так:

    ffmpeg -v quiet -i out.mkv -f yuv4mpegpipe -pix_fmt yuv444p - |
    vpxenc --codec=vp9 --profile=1 --i444 --lossless=1 --threads=2 \
        --passes=2 --pass=$pass --fpf=out.log \
        --output=out.vp9 -

Сохранение потока в PNG картинки жрёт CPU ещё больше FFV1, хотя размер
получается в разы меньше.

А для показа того что я набираю на клавиатуре попробовал screenkey:
https://www.thregr.org/~wavexx/software/screenkey/
Особо зависимостей не требует, вроде работает как надо без проблем.
Правда, если терминал раскрыт на всё пространство, что глупо не делать,
что автоматом делают tiling WM-ы, то screenkey будет поверх какого-то
возможно важного текста выводить данные. Поэтому приходится урезать его
и распологать где-то не в столь мешающемся месте:

    ./screenkey -g "50%x100%+50%+0%" --persist --bak-mode normal -t 5

    [оставить комментарий]