[FFmpeg-trac] #7900(avformat:new): MP4 file probed at 50fps instead of 25fps
FFmpeg
trac at avcodec.org
Tue May 14 14:41:45 EEST 2019
#7900: MP4 file probed at 50fps instead of 25fps
------------------------------------+----------------------------------
Reporter: zerodefect | Type: defect
Status: new | Priority: normal
Component: avformat | Version: 4.1
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
------------------------------------+----------------------------------
Probing an .mp4 file with ffprobe on a file which contains AVC video
interlaced at 25fps reports a framerate of 50fps. A sample file is
attached.
I believe the framerate is reported at 50fps because the file has each
video field stored as a separate mp4 sample. I'm aware of ticket #3393
which talks about violations of the ISO spec. The use case there was
slightly different because the file was being transcoded from .ts to .mp4.
In this scenario, an existing file is merely probed. Admittedly, I'm not
an mp4 guru, so I don't quite understand the result of the discussion.
Won't fix?
Apologies if this is the same result as for #3393. Nonetheless, I'm hoping
the outcome will be of benefit to others (regardless).
The output of ffprobe is as follows:
{{{
>ffprobe.exe -i HX999999.mp4
ffprobe version 4.1.3 Copyright (c) 2007-2019 the FFmpeg developers
built with gcc 8.3.1 (GCC) 20190414
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-
libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-
amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus
--enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora
--enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp
--enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg
--enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-
libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex
--enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-
ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec
--enable-dxva2 --enable-avisynth
libavutil 56. 22.100 / 56. 22.100
libavcodec 58. 35.100 / 58. 35.100
libavformat 58. 20.100 / 58. 20.100
libavdevice 58. 5.100 / 58. 5.100
libavfilter 7. 40.101 / 7. 40.101
libswscale 5. 3.100 / 5. 3.100
libswresample 3. 3.100 / 3. 3.100
libpostproc 55. 3.100 / 55. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'C:\Users\GavinSmith\Downloads\HX999999.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isom
creation_time : 2018-11-09T10:18:12.000000Z
Duration: 00:00:03.00, start: 0.000000, bitrate: 9165 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv,
bt709), 1920x1080 [SAR 1:1 DAR 16:9], 8999 kb/s, 50 fps, 50 tbr, 50k tbn,
50 tbc (default)
Metadata:
creation_time : 2018-11-09T10:18:12.000000Z
handler_name : MP4 Video Media Handler
encoder : AVC Coding
Stream #0:1(eng): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, stereo,
fltp, 160 kb/s (default)
Metadata:
creation_time : 2018-11-09T10:18:12.000000Z
handler_name : MP4 Sound Media Handler
Side data:
audio service type: main
}}}
The output of mp4 explorer below shows
moov/trak/mdia/mdhd
{{{
timescale = 50000
duration = 150000
duration(ms) = 3000
}}}
moov/trak/mdia/minf/stbl/stsd/stts
{{{
entry_count = 1
entry 0 = sample_count=150, sample_delta=1000
}}}
How to reproduce:
{{{
% ffprobe.exe -i C:\Users\GavinSmith\Downloads\HX999999.mp4
}}}
FFmpeg version v4.1.3 (and nightly build)
Windows-10 64-bit (set via ffmpeg.zeranoe.com) - Static Build
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7900>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list