Ok, as primeiras coisas primeiro ...
A opção sameq do ffmpeg não significa a mesma qualidade e, em muitos casos, não fará nada relevante.
Isto é da página de manual do ffmpeg:
-sameq
Use same quantizer as source (implies VBR).
Isto é, na verdade, da documentação on-line do ffmpeg
‘-same_quant’
Use same quantizer as source (implies VBR).
Note that this is NOT SAME QUALITY. Do not use this option unless you know you need it.
Você pode verificar aqui link , pesquisar por same_quant (é o mesmo que o sameq).
Ok, agora isso está fora do caminho,
Eu não sei exatamente o que você está tentando alcançar com a sua conversão, mas existem duas possibilidades, que eu vou enumerar e tentar ajudar:
-
Você está apenas tentando alterar o Container e não o codec do vídeo. O container é o bit de dados que está lá para dizer ao software que está tentando reproduzir o vídeo como as coisas estão organizadas. Ele tem as informações sobre o FPS, codec de vídeo, codecs de áudio, como os dados são armazenados. Se o seu vídeo fosse água, o recipiente poderia ser uma garrafa de vidro, um desenho animado ou uma garrafa de plástico. Nesse caso, os contêineres são wmv, avi, mp4, mov, etc. Os contêineres são importantes porque nem todos eles suportam todos os codecs e nem todos os softwares oferecem suporte a todos os contêineres. Lembre-se de que você ainda pode acertar o contêiner, mas se o vídeo contido no codec errado você ainda está sem sorte. Então, se você quiser apenas trocar contêineres, pode usar:
mencoder file.wmv -ofps 23.976 -ovc copy -oac copy -o file.avi
-
Você está tentando alterar o Codec . O Codec é o algoritmo ou conjunto de especificações que realmente diz como um vídeo é codificado, diferentes codecs têm diferentes saídas de qualidade, tamanhos, parâmetros, etc. Agora as coisas ficam um pouco complicadas, enquanto mudando o container você pode realmente copiar o vídeo e não perder qualidade (porque você só muda o container) ao trocar codecs você certamente perderá alguma qualidade, mas na maioria das vezes se ambos os codecs forem bons e os parâmetros certos são configurados, você não notaria muito depois de apenas uma conversão (isso é inerente à forma como os codecs comprimem o vídeo).
A qualidade diferente entre ffmpeg e mencoder só posso adivinhar, mas uma de duas coisas deve estar acontecendo:
- Você só precisa alterar os contêineres, e o ffmpeg está detectando isso e copiando apenas o vídeo. (se este for o caso use -ovc copy no mencoder)
-
Você precisa mudar os codecs e o ffmpeg está escolhendo melhores codecs / parâmetros para recomprimir o vídeo. Neste caso tente verificar qual codec o ffmpeg está usando (se você não pode postar aqui e eu vou dar uma olhada) ou tente um código diferente com o mencoder (por enquanto você não está especificando nada) por exemplo:
mencoder file.wmv -ofps 23.976 -ovc lavc -lavcopts vcodec=mpeg4 -oac copy -o file.avi
Isto usaria o padrão ISO MPEG-4 (DivX 5, compatível com XVID), é claro que você ainda pode precisar alterar a taxa de bits que a reconversão está usando, verificando a taxa de bits da fonte seria um bom indicador.
Também o mencoder suporta muitas bibliotecas diferentes, algumas são multi codec como lavc, outras não, tente
mencoder -ovc help
para obter uma lista de codecs suportados, nos meus tenho:
MEncoder SVN-r33094-4.5.3 (C) 2000-2011 MPlayer Team
Available codecs:
copy - frame copy, without re-encoding. Doesn't work with filters.
frameno - special audio-only file for 3-pass encoding, see DOCS.
raw - uncompressed video. Use fourcc option to set format explicitly.
nuv - nuppel video
lavc - libavcodec codecs - best quality!
libdv - DV encoding with libdv v0.9.5
xvid - XviD encoding
x264 - H.264 encoding
Então eu pude fazer:
mencoder file.wmv -ofps 23.976 -ovc xvid -oac copy -o file.avi
ou
mencoder file.wmv -ofps 23.976 -ovc x264 -oac copy -o file.avi
Para um tamanho de arquivo menor e tempo de compactação muito menor