Na documentação, o sinalizador -ss faz coisas diferentes dependendo de onde está no comando
-ss position (input/output) When used as an input option (before -i), seeks in this input file to position. Note the in most formats it is not possible to seek exactly, so ffmpeg will seek to the closest seek point before position. When transcoding and -accurate_seek is enabled (the default), this extra segment between the seek point and position will be decoded and discarded. When doing stream copy or when -noaccurate_seek is used, it will be preserved.
When used as an output option (before an output filename), decodes but discards input until the timestamps reach position.
position may be either in seconds or in hh:mm:ss[.xxx] form.
Então, a partir de sua própria resposta, o primeiro comando aplica a lógica na saída e o segundo comando a aplica na entrada