snippets/shell/bash/avt/README.md
Ali Furkan Yıldız 5f3b445d79 Added
- findmonitor function
- example resource file
- automatic sourcing of said resource file
- avt_debug
- compress command
- automatic disabling of sound

Changed

- rec_normalize to rec_compress

Removed

- avt_cl
2023-01-12 00:01:26 +03:00

2.5 KiB

avt: ali's (h264) video tool

avt: ali's (h264) video tool
Usage: ./avt rec|record
	   ./avt nvid|normalize
	   ./avt help
Environment variables:
avt_debug: print every command before running [set to enable]

Commands:

./avt rec / record
Record screen and audio in very high quality
Usage: ./avt rec
Enviroment variables:
rec_out: set output file (default: $HOME/Desktop/$(date +%F_%H-%M-%S).mkv)
rec_fps: set framerate (default: 60)
rec_res: set resolution (default: 1920x1080)
rec_preset: set preset (default: ultrafast)
rec_vrate: replace -crf options
rec_crf: set crf, use 0 for lossless (default: 10)
rec_adev: space separated pulseaudio source devices (default: default and first running monitor)
rec_ar: set audio samplerate (default: 96000)
rec_compress: immediately start comp after recording ends [set to enable]

./avt comp / compress
Compress a recording without losing any video quality and noticeable audio quality
Usage: ./avt comp <file> [outfile]
Environment variables:
comp_crf: set crf, this should be greater than or equals to rec_crf (default: 10)
comp_ac: set audio codec (default: libopus)
comp_ba: set audio bitrate (default: 320k)
comp_ar: set audio samplerate, this should be less than or equals to rec_ar (default: 96000)

./avt nvid / normalize
Normalize video & audio for backwards compatibility and lower file size
Usage: ./avt nvid <file> [outfile]
Environment variables:
nvid_preset: set preset (default: veryslow)
nvid_vrate: replace -crf options
nvid_crf: set crf value (default: 19)
nvid_rgb: use libx264rgb [set to enable]
nvid_pixfmt: set pixel format (default: yuv420p)
nvid_profile: set profile (default: high)
nvid_ac: set audio codec (default: libopus)
nvid_ba: set audio bitrate (default: 160k)
nvid_ar: set audio samplerate (default: 48000)

avt will try to source ~/.avtrc if it exists. You have access to the findmonitor function in there.

Dependencies

  • bash
  • ffmpeg
  • perl
  • pactl

Requirements

This assumes you use X11, PipeWire and pipewire-pulse.
You also need a pretty fast disk and a lot of free space to record with this tool with the default settings. Consider increasing rec_crf or choosing a slower rec_preset if you don't have those.