I'm having a film that's ffmpeg and other progs claims to be 07:03:52 long, but the real playtime is actually more like 2:35:00
ffprobe video.mp4
ffprobe version 3.0.2 Copyright (c) 2007-2016 the FFmpeg developers
built with gcc 5.3.1 (Debian 5.3.1-17) 20160429
configuration: --prefix=/usr --extra-cflags='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ' --extra-ldflags='-Wl,-z,relro' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-nonfree --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --enable-libvpx --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-librtmp --enable-avfilter --enable-libfreetype --disable-decoder=amrnb --enable-libvo-amrwbenc --enable-libtesseract --libdir=/usr/lib/x86_64-linux-gnu --disable-vda --enable-libbluray --enable-libcdio --enable-gnutls --enable-frei0r --enable-openssl --enable-libass --enable-libopus --enable-fontconfig --enable-libpulse --disable-mipsdsp --disable-mips32r2 --disable-msa --disable-mipsfpu --disable-mipsdspr2 --enable-libvidstab --enable-libzvbi --enable-avresample --enable-libutvideo --enable-libfdk-aac --enable-libx265 --enable-libbs2b --enable-libilbc --enable-libopenh264 --enable-libkvazaar --enable-libsnappy --enable-libsoxr --enable-libiec61883 --enable-vaapi --enable-opencl --enable-libdc1394 --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'video.mp4':
Metadata:
major_brand : isom
minor_version : 1
compatible_brands: isomavc1
creation_time : 2012-12-12 07:03:52
Duration: 07:13:45.09, start: 0.000000, bitrate: 274 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x528 [SAR 1:1 DAR 80:33], 601 kb/s, 23.98 fps, 23.98 tbr, 96k tbn, 47.95 tbc (default)
Metadata:
creation_time : 2012-12-12 07:03:52
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 92 kb/s (default)
Metadata:
creation_time : 2012-12-12 07:04:15
handler_name : GPAC ISO Audio Handler
Is there any one who can help me fix the playtime / duration with a terminal command on debian/centos
I have HandBrake-cli + FFmpeg installed
UPDATE Thought: since the video plays perfectly in various players and the frame-rate is right, how comes, that encoders like HandBrake and ffmpeg can't calculate the right duration?
UPDATE 2 - Solution I duckduckgo.com it and found a usable solution on a well.. torrent site
ffmpeg -i video.mp4 -t 2:09:39 -c:v copy -c:a copy -c:s copy out.mp4
How ever, this is not an repairing or any acclimatisation of the job, but it worked.
So summon up what this does
ffmpeg
- Video encoder-i
source video-t
When used as an input option (before -i), limit the duration of data read from the input file.-c:v
+-c:a
copy video+audio from source- output file
Any optimization or acclimatisation of this workload is still welcome
07:03:52
is being reported as the creation time, although the estimated duration is07:13:45.09
. Try a remux:ffmpeg -i video.mp4 -c copy out.mp4
ffprobe video.mp4 -show_entries stream=codec_type,start_time,duration -of compact
and show the output.