Soluções de SegFault FFMPEG

1

Eu estou tentando converter um monte de filmes em h.264 mp4 usando FFMPEG. Esses filmes são provenientes de várias filmadoras portáteis, como o Flip Mino HD e o Kodak ZI8. Um problema que eu estou tendo com o vídeo do ZI8 é que ele parece estar causando o FFMPEG segfault.

Aqui está o meu comando:

ffmpeg -i 'XmasSailor720p60fps.MOV' -threads 2 -acodec libfaac -ab 96kb -vcodec libx264 -vpre hq -b 500kb -s 484x272 XmasSailor.mp4

Aqui está a saída:

FFmpeg version SVN-r20668, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  built on Dec  2 2009 18:37:34 with gcc 4.2.4 (Ubuntu 4.2.4-1ubuntu4)
  configuration: --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared
  libavutil     50. 5. 1 / 50. 5. 1
  libavcodec    52.42. 0 / 52.42. 0
  libavformat   52.39. 2 / 52.39. 2
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0. 7. 2 /  0. 7. 2
  libpostproc   51. 2. 0 / 51. 2. 0

Seems stream 0 codec frame rate differs from container frame rate: 59.94 (60000/1001) -> 29.97 (30000/1001)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'XmasSailor720p60fps.MOV':
  Duration: 00:00:05.37, start: 0.000000, bitrate: 12021 kb/s
    Stream #0.0(eng): Video: h264, yuv420p, 1280x720 [PAR 1:1 DAR 16:9], 11994 kb/s, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 128 kb/s
  Metadata
    major_brand     : qt  
    minor_version   : 0
    compatible_brands: qt  
    comment         : KODAK Zi8 Pocket Video Camera
    comment-eng     : KODAK Zi8 Pocket Video Camera
[libx264 @ 0x99e1020]using SAR=1/1
[libx264 @ 0x99e1020]using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.1 Cache64
[libx264 @ 0x99e1020]profile High, level 2.1
Output #0, mp4, to 'XmasSailor.mp4':
    Stream #0.0(eng): Video: libx264, yuv420p, 484x272 [PAR 1:1 DAR 121:68], q=10-51, 500 kb/s, 30k tbn, 29.97 tbc
    Stream #0.1(eng): Audio: aac, 48000 Hz, stereo, s16, 96 kb/s
  Metadata
    comment         : Encoded with the Statusfirm Video Transcoder
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press [q] to stop encoding
[h264 @ 0x99de950]B picture before any references, skipping
[h264 @ 0x99de950]decode_slice_header error
[h264 @ 0x99de950]no frame!
Error while decoding stream #0.0
[h264 @ 0x99de950]B picture before any references, skipping
[h264 @ 0x99de950]decode_slice_header error
[h264 @ 0x99de950]no frame!
Error while decoding stream #0.0
frame=   20 fps=  0 q=13797729.0 size=       0kB time=0.66 bitrate=   0.6kbits/s    
frame=   39 fps= 37 q=13797729.0 size=       0kB time=1.30 bitrate=   0.3kbits/s    
frame=   48 fps= 30 q=33.0 size=      11kB time=0.10 bitrate= 903.0kbits/s    
frame=   58 fps= 27 q=31.0 size=      22kB time=0.43 bitrate= 421.0kbits/s    
frame=   67 fps= 25 q=29.0 size=      41kB time=0.73 bitrate= 462.6kbits/s    
frame=   75 fps= 23 q=29.0 size=      59kB time=1.00 bitrate= 486.7kbits/s    
frame=   83 fps= 22 q=29.0 size=      81kB time=1.27 bitrate= 521.9kbits/s    
frame=   90 fps= 21 q=29.0 size=      97kB time=1.50 bitrate= 530.1kbits/s    
frame=   98 fps= 20 q=29.0 size=     114kB time=1.77 bitrate= 526.9kbits/s    
frame=  106 fps= 20 q=29.0 size=     134kB time=2.04 bitrate= 537.7kbits/s    
frame=  114 fps= 19 q=29.0 size=     150kB time=2.30 bitrate= 533.7kbits/s    
frame=  122 fps= 19 q=29.0 size=     172kB time=2.57 bitrate= 547.8kbits/s    
frame=  130 fps= 19 q=29.0 size=     193kB time=2.84 bitrate= 557.5kbits/s    
frame=  136 fps= 18 q=29.0 size=     211kB time=3.04 bitrate= 570.0kbits/s    
frame=  144 fps= 18 q=29.0 size=     242kB time=3.30 bitrate= 599.5kbits/s    
frame=  152 fps= 17 q=30.0 size=     261kB time=3.57 bitrate= 598.6kbits/s    
frame=  157 fps= 15 q=-1.0 Lsize=     368kB time=5.21 bitrate= 579.3kbits/s    
video:302kB audio:61kB global headers:0kB muxing overhead 1.416371%
[libx264 @ 0x99e1020]frame I:1     Avg QP:27.22  size:  8720
[libx264 @ 0x99e1020]frame P:48    Avg QP:25.15  size:  3759
[libx264 @ 0x99e1020]frame B:108   Avg QP:30.10  size:  1105
[libx264 @ 0x99e1020]consecutive B-frames:  0.6% 11.5% 28.8% 59.0%
[libx264 @ 0x99e1020]mb I  I16..4: 28.5% 47.6% 23.9%
[libx264 @ 0x99e1020]mb P  I16..4:  0.8%  1.3%  0.5%  P16..4: 50.6% 17.7% 13.1%  0.0%  0.0%    skip:15.9%
[libx264 @ 0x99e1020]mb B  I16..4:  0.2%  0.3%  0.1%  B16..8: 44.0%  1.2%  2.6%  direct: 5.1%  skip:46.5%  L0:45.5% L1:51.0% BI: 3.5%
[libx264 @ 0x99e1020]final ratefactor: 23.51
[libx264 @ 0x99e1020]8x8 transform intra:49.9% inter:67.9%
[libx264 @ 0x99e1020]direct mvs  spatial:98.1% temporal:1.9%
[libx264 @ 0x99e1020]coded y,uvDC,uvAC intra: 54.7% 76.1% 41.4% inter: 17.1% 24.4% 7.8%
[libx264 @ 0x99e1020]i16 v,h,dc,p: 18% 52%  5% 25%
[libx264 @ 0x99e1020]i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 12% 22%  9%  7% 10% 10%  9%  8% 13%
[libx264 @ 0x99e1020]i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 13% 18%  8%  8% 10% 13% 10%  9% 12%
[libx264 @ 0x99e1020]Weighted P-Frames: Y:10.4%
[libx264 @ 0x99e1020]ref P L0: 60.2% 15.3% 11.0%  7.6%  5.2%  0.7%
[libx264 @ 0x99e1020]ref B L0: 72.6% 15.6% 11.8%
[libx264 @ 0x99e1020]kb/s:471.17
Segmentation fault

Eu estou querendo saber se alguém já se deparou com problemas semelhantes. Não consegui encontrar nada de útil via Google.

Outra pergunta que tenho é se alguém sabe de uma empresa que oferece suporte pago para o FFMPEG.

Obrigado pelo seu tempo.

    
por Brentley_11 18.12.2009 / 18:58

1 resposta

1

Acabei de ter um problema semelhante com a codificação da libx264, e o que recebi do exame do assunto foram esses pontos.

  1. Use gcc > = 4.2
  2. Certifique-se de que seu ffmpeg esteja compilado na mesma versão da libx264

Por sua saída, é óbvio que você tem # 1 abaixo, então verifique # 2 assim (os caminhos podem precisar ser modificados)

ldd /usr/bin/ffmpeg | grep x264

e depois ...

cat /usr/include/x264.h | grep X264_BUILD

( Fonte )

Para mim, esta check-out e eu só tive que não fazer a codificação de 2 passagens. Tente também não usar a opção de thread, que provavelmente irá corrigi-lo. Eu tive problemas com caixas antigas da Red Hat, minha área de trabalho do Gentoo não teve nenhum problema, eu chamo isso de uma vitória para gerentes de pacotes de origem!

    
por 19.12.2009 / 05:16