Como rodar o vídeo h264?

1

Eu tentei o seguinte:

$ avconv -i in.mov -codec:video copy -codec:audio copy -filter transpose=clock out.mov
avconv version 0.8.6-6:0.8.6-1ubuntu2, Copyright (c) 2000-2013 the Libav developers
  built on Mar 30 2013 22:23:21 with gcc 4.7.2
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'in.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537331968
    compatible_brands: qt  CAEP
    creation_time   : 2013-03-03 15:47:47
  Duration: 00:00:18.97, start: 0.000000, bitrate: 45882 kb/s
    Stream #0.0(eng): Video: h264 (Constrained Baseline), yuvj420p, 1920x1080, 44343 kb/s, 23.98 fps, 23.98 tbr, 24k tbn, 48k tbc
    Metadata:
      creation_time   : 2013-03-03 15:47:47
    Stream #0.1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
    Metadata:
      creation_time   : 2013-03-03 15:47:47
Output #0, mov, to 'out.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537331968
    compatible_brands: qt  CAEP
    creation_time   : 2013-03-03 15:47:47
    encoder         : Lavf53.21.1
    Stream #0.0(eng): Video: avc1 / 0x31637661, yuvj420p, 1920x1080, q=2-31, 44343 kb/s, 24k tbn, 24k tbc
    Metadata:
      creation_time   : 2013-03-03 15:47:47
    Stream #0.1(eng): Audio: pcm_s16le, 48000 Hz, stereo, 1536 kb/s
    Metadata:
      creation_time   : 2013-03-03 15:47:47
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press ctrl-c to stop encoding
frame=  455 fps=379 q=-1.0 Lsize=  106291kB time=18.94 bitrate=45983.9kbits/s    
video:102724kB audio:3558kB global headers:0kB muxing overhead 0.008270%

O out.mov resultante é reproduzido bem, mas o vídeo não é girado. Eu tentei muitos filtros diferentes:

transpose=1
rotate=1
rotate=clock

Tudo com o mesmo resultado.

    
por l0b0 26.05.2013 / 22:59

2 respostas

1

Acontece que foi necessário instalar o pacote x264 e usar -codec:video libx264 em vez de copy para fazer isso funcionar. Estranhamente, nada na saída indicava codecs ausentes ou opções conflitantes. Os comandos de trabalho:

$ sudo apt-get install x264
$ avconv -i in.mov -codec:video libx264 -codec:audio copy -vf transpose=clock out.mov
    
por l0b0 26.05.2013 / 22:59
3

FYI, a resposta aceita usando libx264 não é inteiramente completa, pelo menos em 12.04.4. Você tem que instalar outro pacote (e todas as suas dependências) para obter a biblioteca de codificadores libx264 conectada ao avconv.

Veja este post nos fóruns do ubuntu

$ sudo apt-get install libavcodec-extra-53

Depois, você pode verificar se está instalado:

$ avconv -codecs|grep 264 avconv version 0.8.10-4:0.8.10-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers built on Feb 6 2014 20:56:59 with gcc 4.6.3 D V D h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 D V D h264_vdpau H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (VDPAU acceleration) EV libx264 libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10

    
por core24 12.03.2014 / 06:22