Acho que há dois problemas aqui, e a entrada parece truncada ou danificada, por isso os resultados podem variar.
1. avconv tem bugs (como sempre)
Ele mostra o fluxo de áudio de entrada com 0 channels , o que está errado.
Obtenha uma compilação recente de ffmpeg . Eu não sei qual versão do Ubuntu você está usando, então o método mais fácil é usar uma construção estática recente . Basta baixar, extrair e executar. Além disso, você marcou sua pergunta com ffmpeg , então, suponho que você estaria disposto a usá-la ( avconv ! = ffmpeg ). Ele deve mostrar o número adequado de canais de áudio.
2. Use um formato de contêiner de saída compatível
Matroska
Isso fará com que transfira a cópia (re-mux) do vídeo e codifique novamente o áudio:
ffmpeg -i input -c:v copy -c:a aac output.mkv
-
Recodificar o áudio provavelmente é necessário neste caso porque o muxer Matroska se recusará a trocar um fluxo de áudio com extradata inválida.
-
As versões mais antigas do ffmpeg exigirão
-strict experimentalpara o codificador AAC.
MP4
Isso recodificará o vídeo e o stream copiará o áudio:
ffmpeg -i input -c:v libx264 -c:a copy -bsf:a aac_adtstoasc output.mp4
- Nesse caso, o
aac_adtstoascfiltro de bitstream é necessário. Mais recentesffmpegbuilds podem adicionar isso automaticamente.