It works fine, except for the quality because ffmpeg is using a very low bitrate.
Os padrões para mpeg4
não são bem escolhidos, então a taxa de bits de destino é bem baixa. Especifique seu próprio alvo com -b:v 2M
(dependendo da sua resolução) ou melhor ainda, use qualidade constante com -q:v 5
(como sugerido por Mulvya nos comentários). Neste último caso, valores mais baixos significam melhor qualidade.
My question now is if I need to specify a quality/bitrate or if it is possible to tell ffmpeg to use the original bitrate somehow.
Não - não faria sentido fazer isso. Se você estiver indo de um codec para outro, eles podem ser menos ou mais eficientes. Cada codec oferece qualidade diferente em diferentes taxas de bits - por exemplo, o H.264 é muito mais eficiente do que o MPEG-4 Part II. O H.265 é 30–50% mais eficiente que o H.264, etc. O mesmo vale para os codificadores reais que implementam os codecs: o x264 é mais eficiente que o codificador H.264 de referência, etc.
Portanto, a taxa de bits original pode não funcionar bem. E mesmo mantendo o mesmo codec, se você compactar novamente, talvez queira usar uma taxa de bits ainda maior para evitar a perda de geração .