Adivinhar aqui sem conhecer o telefone e sua plataforma, mas os vídeos 3GP do ffmpeg normalmente contêm vídeo H.264. Seu telefone grava vídeo MPEG-4 Parte II, que é (mais ou menos) o antecessor do H.264 e, portanto, "mais simples".
Muitos telefones antigos não podem reproduzir H.264 ou apenas um subconjunto restrito dele. Dado que o vídeo original usa a linha de base H.264 e seu telefone não o reproduz, eu acho que não é possível assistir ao H.264 nele.
Experimente o áudio MPEG-4 e MP3 em um contêiner AVI - essa é a melhor combinação para vídeo em máquinas mais antigas ou antes de o H.264 se tornar onipresente:
ffmpeg -y -i video.mp4 -c:v mpeg4 -b:v 600k -c:a libmp3lame output.avi
Você também pode usar -qscale:v 3
em vez da configuração de taxa de bits para VBR. Aqui, os valores variam de 1 a 31, onde menor é melhor. Consulte o Guia de codificação Xvid / DivX .
Se o seu telefone suporta H.264 com o perfil de linha de base, que é para destinos móveis ou plataformas com baixo poder computacional:
ffmpeg -y -i video.mp4 -c:v libx264 -crf 23 -profile:v baseline \
-c:a aac -strict experimental output.mp4
Altere a qualidade por definindo o parâmetro CRF entre 18 e 28, onde menor significa melhor.
Notas sobre seus comandos originais:
-
-b
é ambíguo - especifica taxa de bits de vídeo ou áudio com-b:v
e-b:a
-
libvo_aacenc
oferece a pior qualidade de todos os codificadores AAC no ffmpeg. Use oaac
um interno ou, se puder,libfdk_aac
oulibfaac
. Veja o Guia de codificação do AAC .