To repeat the first frame of a video, for example padding it to compensate for longer audio, the following pipeline can be used.
ffmpeg -i video.mp4 -vframes 1 -f image2 image.jpg
ffmpeg -loop 1 -i image.jpg -t 5 pad.mkv
ffmpeg -i pad.mkv -i video.mp4 -i audio.mp3 -filter_complex '[0:v] [1:v] concat' -c:a copy -map 2:a out.mkv
(Concat filter preferred to concat input because codecs of video and padding clip may differ.)
In contrast, paddings audio with silence at the start fits in only one line.
ffmpeg -i video.mp4 -i audio.mp3 -map 0:v -filter_complex 'aevalsrc=0:duration=5 [pad],[pad] [1:a] concat=v=0:a=1' -c:v copy out.mkv
Can video padding be condensed in one ffmpeg execution, too?