Você pode tentar usar o codec MPEG2
O MPEG2 é muito rápido para codificar. Isso deve funcionar -c:v mpeg2video -r 25 -b:v 8192k
aumentar a taxa de bits deve dar o controle de taxa mais folga e dar velocidade de codificação mais rápida. Você também pode tentar a opção -intra
, que desativa a estimativa de movimento ao custo de uma taxa de bits significativamente maior. Se isso não for suficiente, deve haver um parâmetro de etapa de quantização que você pode usar para acelerar a codificação em detrimento da qualidade visual.
Você também pode tentar H264 com resolução mais baixa com pré-ajuste ultra-rápido
Eu não tenho certeza de quão baixo você quer dizer quando fala low-end, estou transcodificando com sucesso a 720p H264 em tempo real em uma CPU Core 2 Duo 2ghz ... então, estou fornecendo isso se sua ideia de low-end é semelhante à minha ideia de low-end:)
O codec libx264
aceita predefinições para o codificador que trocam a velocidade de codificação por taxa de bits com qualidade visual constante.
Você pode tentar com a predefinição mais rápida:
-c:v libx264 -preset ultrafast -tune zerolatency -profile high10 \
-bsf:v h264_mp4toannexb
(O parâmetro -bsf:v
é necessário se você for transmitir)
Você também pode tentar tocar com o parâmetro -cbr
, ele controla a alocação de bits e, portanto, a qualidade visual / bitrate. O valor padrão é 23; 0 é sem perdas e 51 é a pior qualidade / menor taxa de bits.
A resolução desempenha um grande papel na velocidade de codificação e descobri que um vídeo h264 de resolução mais baixa que foi upsampled parece comparável ao mpeg2 que não foi reduzido (com uma velocidade de codificação muito mais baixa e esperançosamente mais rápida, don ' cite-me sobre isso: 3).
Você também pode tentar brincar com isso:
-filter:v scale=-1:480
Isso redimensionará seu vídeo para ter 480 linhas de altura e manter a mesma proporção.
(Eu apenas configurei a transcodificação para H264, aqui: Transcrição em tempo real para H264 + AAC no container Matroska se você quiser ver.)