# 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_display: set x11 display (default: $DISPLAY) rec_out: set output file (default: ~/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 [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 [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`](https://trac.ffmpeg.org/wiki/Encode/H.264#crf) or choosing a slower [`rec_preset`](https://trac.ffmpeg.org/wiki/Encode/H.264#Preset) if you don't have those.