video Fonte: http://www.artworknotavailable.com/tmp/ffmpegtestPerché ffmpeg riporta durate diverse?
QuickTime Pro 7.7.1 Inspector (Win 7) riporta il seguente per il file 2398.mov
4.19MB
H.264
Movie FPS: 23.98
Data Rate: 2,35 Mbit/Sec
Durata 14:97
ffmpeg segnala il seguente (vedi completa info versione ffmpeg in fondo post)
ffmpeg -i 2398.mov
Sembra flusso frame rate 1 codec differisce dal telaio contenitore rate: 47952,00 (47952/1) ->> 23.98 (2997/125)
ingresso # 0, mov, mp4, m4a, 3GP, 3G2, mj2, da '2398.mov':
Metadati:
major_brand: qtminore _version: 537199360
compatible_brands: qt
Durata: 00: 00: 15,97, inizio: 0.-963.005, bitrate: 2210 kb/s
flusso # 0.0 (ita): Audio: AAC, 48000 Hz, stereo, s16 , 152 kb/s
flusso # 0.1 (ita): Video: H264, YUV420P, 848x480, 2060 kb/s, 23.98 fps, 23.98 TBR, 23976 tbn, 47952 tbc
un secondo di più di quello che riporta Quicktime.
Come esperimento ho esportato il file da QuickTime Pro utilizzando le seguenti impostazioni:
Frame Rate: Corrente
Key Frames: Ogni 24 fotogrammi
Telaio Riordinamento delle
Qualità: Alta
Codifica Migliore
Data Rate: Automatico
Ottimizzato per Download
File di output: qtime-export-2398.mov
Quicktime ispettore riferisce:
5,62 MB
H.264
Movie FPS: 23.98
Data Rate: 3.15 Mbits/sec
Durata 14:97
ffmpeg riporta ora:
ffmpeg -i qtime-export-2398.mov
Sembra flusso frame rate 1 codec differisce dal contenitore frame rate: 1200,00 (1200/1) -> 23,98 (24000/1001)
Input # 0, mov, mp4, m4a, 3gp, 3g2, mj2, da 'qtime-export-2398.mov':
Metadati:
major_brand: qt
minor_version: 537199360
compatible_brands: qt
Durata: 00: 00: 14.96, avviare: 0.000000, bitrate: 3153 kb/s
flusso # 0.0 (ita): Audio: pcm_s16le, 44100 Hz, 2 canali, s16, 1411 kb/s
flusso # 0.1 (ita): Video: H264, YUV420P, 678x384, 1738 kb/s, 23.98 fps, 23.98 TBR, 600 tbn, 1200 da confermare
ffmpeg di il rapporto sulla durata è passato da 15.97 a 14.96 (posso vivere con .1)
Questa durata è calcolata dal bitrate?
Ho bisogno di riportare accuratamente la durata dei video caricati e convertirli in FLV. Qualcuno può dirmi cosa sta succedendo qui e come potrei aggirare questo?
ffmpeg informazioni di seguito. Ho provato questo su 2 installazioni/versioni completamente diverse di ffmpeg. Stesso risultato
FFmpeg versione 0.6.5, Copyright (c) 2000-2010 sviluppatori la FFmpeg costruito su 29 Gennaio 2012 23:55:02 con gcc 4.1.2 20.080.704 (Red Hat 4.1.2-51) la configurazione : --prefix =/usr --libdir =/usr/lib64 --shlibdir =/usr/lib64 --mandir =/usr/share/man --incdir =/usr/include --disable-avisynth --extra- cflags = '- O2 -g -pipe -Wall -Wp, -D_FORTIFY_SOURCE = 2 -fexceptions -fstack-protector --param = ssp-buffer-size = 4 -m64 -mtune = generico -fPIC' --enable-avfilter - -enable-avfilter-lavf --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau - -enable-version3 --enable-x11grab libavutil 50.15. 1/50.15. 1 libavcodec 52.72. 2/52,72. 2 libavformat 52.64. 2/52.64. 2 libavdevice 52. 2. 0/52. 2. 0 libavfilter 1.19. 0/1.19. 0 libswscale 0,11. 0/0,11. 0 libpostproc 51. 2. 0/51. 2. 0 FFmpeg 0.6.5 libavutil 50.15. 1/50.15. 1 libavcodec 52.72. 2/52,72. 2 libavformat 52.64. 2/52.64. 2 libavdevice 52. 2. 0/52. 2. 0 libavfilter 1.19. 0/1.19. 0 libswscale 0,11. 0/0,11. 0 libpostproc 51. 2. 0/51. 2. 0
Appena testato con alcune altre variazioni nell'esportazione Quicktime. Sembra che se si scelga qualsiasi frame rate o bitrate per esportare, ffmpeg ha ancora maggiori possibilità di riportare una durata più accurata. Quicktime "Fixing" qualcosa? Il container? – kenitech