Como posso converter meus arquivos mp4 para avi usando avconv?


8

Eu preciso converter alguns arquivos mp4 para outro formato (eu escolhi avi: pode haver um melhor, sugestões bem-vindas). Eu tentei usar o ffmpeg, mas recebi a mensagem obsoleta, então estou usando o avconv, mas novamente pode haver uma ferramenta melhor.

Aqui está o que estou usando: avconv -i e2.mp4 -vtag libxvid -b:v 1500k e2.avi

Isso me dá a seguinte saída:

avconv version 0.8.9-6:0.8.9-0ubuntu0.13.10.1, Copyright (c) 2000-2013 the Libav developers
  built on Nov  9 2013 19:09:46 with gcc 4.8.1
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1c677a0] multiple edit list entries, a/v desync might occur, patch welcome
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'e2.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf53.21.1
    media_type      : 10
    copyright       : � 2014 British Broadcasting Corporation, all rights reserved
    title           : Episode 2
    artist          : BBC Four
    album_artist    : BBC TV
    album           : The Bridge: Series 2
    composer        : BBC iPlayer
    genre           : Drama
    comment         : Online, four individuals in masks use signs to claim responsibility for the plague.
    date            : 2014-01-04T22:00:00Z
    track           : 2
    disc            : 2
    description     : Online, four individuals in masks use signs to claim responsibility for the plague.
    show            : The Bridge: Series 2
    episode_id      : s02e02
    season_number   : 2
    episode_sort    : 2
    network         : BBC Four
  Duration: 00:57:38.16, start: 0.000000, bitrate: 2399 kb/s
    Stream #0.0(und): Video: h264 (High), yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 2298 kb/s, 25 fps, 25 tbr, 1k tbn, 50 tbc
    Stream #0.1(und): Audio: aac, 48000 Hz, stereo, s16, 93 kb/s
[buffer @ 0x1c69260] w:1280 h:720 pixfmt:yuv420p
Incompatible sample format 's16' for codec 'ac3', auto-selecting format 'flt'
[ac3 @ 0x1c2a160] invalid bit rate
Output #0, avi, to 'e2.avi':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    encoder         : Lavf53.21.1
    media_type      : 10
    copyright       : � 2014 British Broadcasting Corporation, all rights reserved
    title           : Episode 2
    artist          : BBC Four
    album_artist    : BBC TV
    album           : The Bridge: Series 2
    composer        : BBC iPlayer
    genre           : Drama
    comment         : Online, four individuals in masks use signs to claim responsibility for the plague.
    date            : 2014-01-04T22:00:00Z
    track           : 2
    disc            : 2
    description     : Online, four individuals in masks use signs to claim responsibility for the plague.
    show            : The Bridge: Series 2
    episode_id      : s02e02
    season_number   : 2
    episode_sort    : 2
    network         : BBC Four
    Stream #0.0(und): Video: mpeg4, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], q=2-31, 1500 kb/s, 90k tbn, 25 tbc
    Stream #0.1(und): Audio: ac3, 48000 Hz, stereo, flt, 200 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (h264 -> mpeg4)
  Stream #0:1 -> #0:1 (aac -> ac3)
Error while opening encoder for output stream #0:1 - maybe incorrect parameters such as bit_rate, rate, width or height

Eu também recebo um arquivo e2.avi que está vazio. Eu nunca usei o avconv antes - qual seria a maneira correta de fazer isso? Posso postar mais detalhes, se necessário.

Desde já, obrigado!


Ele está dizendo "Formato de amostra incompatível 's16' para o codec 'ac3', formato de seleção automática 'flt'" e "Erro ao abrir o codificador para o fluxo de saída # 0: 1 - talvez parâmetros incorretos como bit_rate, taxa, largura ou altura". o que significa que ele descobriu o seu arquivo de entrada, mas não conseguiu configurar o arquivo de saída. Leia man avconv.
waltinator

Respostas:


8

Como o AVI é apenas um contêiner para armazenar seus dados, a maneira mais rápida de converter seu vídeo é apenas copiar o fluxo de áudio e vídeo já codificado. Isso não é feito por padrão. Para forçar fluxos de cópias, podemos usar a opção da -cseguinte maneira:

avconv -i infile.mp4 -c:a copy -c:v copy outfile.avi

Obviamente, apenas uma codificação de vídeo suportada pelo contêiner AVI pode ser copiada dessa maneira.

Para re-codificar o vídeo de saída que pode substituir copypor qualquer um dos codecs suportados conforme listado com um Edos

avconv -codecs
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.