[FFmpeg-trac] #9710(undetermined:new): 59.94 fps timecode mis-read
FFmpeg
trac at avcodec.org
Sat Apr 2 20:19:46 EEST 2022
#9710: 59.94 fps timecode mis-read
-------------------------------------+-------------------------------------
Reporter: jdachik01 | Owner: (none)
Type: defect | Status: new
Priority: normal | Component:
| undetermined
Version: unspecified | Resolution:
Keywords: timecode | Blocked By:
59.94 |
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Description changed by jdachik01:
Old description:
> Summary of the bug:
>
> Timecode of 59.94 fps content from a Panasonic GH5 is not being read
> correctly by newer versions of ffmpeg. Confirmed in versions of ffmpeg
> from 2020 and 2022. Works fine in a version from 2018. 2018 ffmpeg
> version timecode matches the timecode in the Panasonic XML metadata. Not
> sure if x64/x86 might play a role as well.
>
> Download link for GH5 file (35 MB):
> https://drive.google.com/file/d/1QsJokEmOhTr52ckC4QAk4VvnwZrsF9gV/view?usp=sharing
>
> XML: : <StartTimecode>01:51:38:04</StartTimecode>
>
> ffmpeg 2018: timecode : 01:51:38;04
> ffmpeg 2022: timecode : 00:55:49;04
>
> '''ffmpeg2022 -i P22C5054.MOV
> ffmpeg version 5.0-essentials_build-www.gyan.dev Copyright (c) 2000-2022
> the FFmpeg developers
> built with gcc 11.2.0 (Rev5, Built by MSYS2 project)
> configuration: --enable-gpl --enable-version3 --enable-static
> --disable-w32threads --disable-autodetect --enable-fontconfig --enable-
> iconv --enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma
> --enable-zlib --enable-libsrt --enable-libssh --enable-libzmq --enable-
> avisynth --enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265
> --enable-libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx
> --enable-libass --enable-libfreetype --enable-libfribidi --enable-
> libvidstab --enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-
> llvm --enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc
> --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-
> libopenmpt --enable-libopencore-amrwb --enable-libmp3lame --enable-
> libtheora --enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-
> amrnb --enable-libopus --enable-libspeex --enable-libvorbis --enable-
> librubberband
> libavutil 57. 17.100 / 57. 17.100
> libavcodec 59. 18.100 / 59. 18.100
> libavformat 59. 16.100 / 59. 16.100
> libavdevice 59. 4.100 / 59. 4.100
> libavfilter 8. 24.100 / 8. 24.100
> libswscale 6. 4.100 / 6. 4.100
> libswresample 4. 3.100 / 4. 3.100
> libpostproc 56. 3.100 / 56. 3.100
> Guessed Channel Layout for Input Stream #0.1 : stereo
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P22C5054.MOV':
> Metadata:
> major_brand : qt
> minor_version : 537986816
> compatible_brands: qt pana
> creation_time : 2022-03-28T16:40:34.000000Z
> com.panasonic.Semi-Pro.metadata.xml: <?xml version="1.0"
> encoding="UTF-8" standalone="no" ?>
> : <ClipMain xmlns:xsi="http://www.w3.org/2001
> /XMLSchema-instance" xmlns="urn:schemas-Professional-Plug-in:Semi-
> Pro:ClipMetadata:v1.0">
> : <ClipContent>
> :
> <GlobalClipID>060A2B340101010501010D2113000000EFD4DF4950BF56344063106100D20024</GlobalClipID>
> : <Duration>60</Duration>
> : <EditUnit>1001/60000</EditUnit>
> : <EssenceList>
> : <Video>
> : <Codec BitRate="200">H264_422_Intra</Codec>
> : <ActiveLine>1080</ActiveLine>
> : <ActivePixel>1920</ActivePixel>
> : <BitDepth>10</BitDepth>
> : <FrameRate>59.94p</FrameRate>
> : <TimecodeType>Drop</TimecodeType>
> : <StartTimecode>01:51:38:04</StartTimecode>
> : </Video>
> : <Audio>
> : <Channel>2</Channel>
> : <SamplingRate>48000</SamplingRate>
> : <BitsPerSample>16</BitsPerSample>
> : </Audio>
> : </EssenceList>
> : <ClipMetadata>
> : <Rating>0</Rating>
> : <Access>
> :
> <CreationDate>2022-03-28T16:40:34-06:00</CreationDate>
> :
> <LastUpdateDate>2022-03-28T16:40:34-06:00</LastUpdateDate>
> : </Access>
> : <Device>
> : <Manufacturer>Panasonic</Manufacturer>
> : <ModelName>DC-GH5S</ModelName>
> : </Device>
> : <Shoot>
> :
> <StartDate>2022-03-28T16:40:34-06:00</StartDate>
> : </Shoot>
> : </ClipMetadata>
> : </ClipContent>
> : <UserArea>
> : <AcquisitionMetadata xmlns="urn:schemas-
> Professional-Plug-in:P2:CameraMetadata:v1.2">
> : <CameraUnitMetadata>
> : <Gamma>
> : <CaptureGamma>V-LogL</CaptureGamma>
> : </Gamma>
> : <Gamut>
> : <CaptureGamut>V-Gamut</CaptureGamut>
> : </Gamut>
> : </CameraUnitMetadata>
> : </AcquisitionMetadata>
> : </UserArea>
> : </ClipMain>
> :
> Duration: 00:00:01.00, start: 0.000000, bitrate: 287839 kb/s
> Stream #0:0[0x1](und): Video: h264 (High 4:2:2 Intra) (avc1 /
> 0x31637661), yuv422p10le(pc, bt709, progressive), 1920x1080 [SAR 1:1 DAR
> 16:9], 200403 kb/s, 59.94 fps, 59.94 tbr, 180k tbn (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> vendor_id : [0][0][0][0]
> timecode : 00:55:49;04
> Stream #0:1[0x2](und): Audio: pcm_s16be (twos / 0x736F7774), 48000 Hz,
> stereo, s16, 1536 kb/s (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> vendor_id : pana
> timecode : 00:55:49;04
> Stream #0:2[0x3](und): Data: none (tmcd / 0x64636D74), 1 kb/s (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> timecode : 00:55:49;04
> At least one output file must be specified'''
>
> ''ffmpeg2018 -i P22C5054.MOV
> ffmpeg version N-91492-g9cb3d8fcb7 Copyright (c) 2000-2018 the FFmpeg
> developers
> built with gcc 7.3.1 (GCC) 20180710
> configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
> bzlib --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. 18.102 / 56. 18.102
> libavcodec 58. 21.105 / 58. 21.105
> libavformat 58. 17.101 / 58. 17.101
> libavdevice 58. 4.101 / 58. 4.101
> libavfilter 7. 26.100 / 7. 26.100
> libswscale 5. 2.100 / 5. 2.100
> libswresample 3. 2.100 / 3. 2.100
> libpostproc 55. 2.100 / 55. 2.100
> Guessed Channel Layout for Input Stream #0.1 : stereo
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P22C5054.MOV':
> Metadata:
> major_brand : qt
> minor_version : 537986816
> compatible_brands: qt pana
> creation_time : 2022-03-28T16:40:34.000000Z
> com.panasonic.Semi-Pro.metadata.xml: <?xml version="1.0"
> encoding="UTF-8" standalone="no" ?>
> : <ClipMain xmlns:xsi="http://www.w3.org/2001
> /XMLSchema-instance" xmlns="urn:schemas-Professional-Plug-in:Semi-
> Pro:ClipMetadata:v1.0">
> : <ClipContent>
> :
> <GlobalClipID>060A2B340101010501010D2113000000EFD4DF4950BF56344063106100D20024</GlobalClipID>
> : <Duration>60</Duration>
> : <EditUnit>1001/60000</EditUnit>
> : <EssenceList>
> : <Video>
> : <Codec BitRate="200">H264_422_Intra</Codec>
> : <ActiveLine>1080</ActiveLine>
> : <ActivePixel>1920</ActivePixel>
> : <BitDepth>10</BitDepth>
> : <FrameRate>59.94p</FrameRate>
> : <TimecodeType>Drop</TimecodeType>
> : <StartTimecode>01:51:38:04</StartTimecode>
> : </Video>
> : <Audio>
> : <Channel>2</Channel>
> : <SamplingRate>48000</SamplingRate>
> : <BitsPerSample>16</BitsPerSample>
> : </Audio>
> : </EssenceList>
> : <ClipMetadata>
> : <Rating>0</Rating>
> : <Access>
> :
> <CreationDate>2022-03-28T16:40:34-06:00</CreationDate>
> :
> <LastUpdateDate>2022-03-28T16:40:34-06:00</LastUpdateDate>
> : </Access>
> : <Device>
> : <Manufacturer>Panasonic</Manufacturer>
> : <ModelName>DC-GH5S</ModelName>
> : </Device>
> : <Shoot>
> :
> <StartDate>2022-03-28T16:40:34-06:00</StartDate>
> : </Shoot>
> : </ClipMetadata>
> : </ClipContent>
> : <UserArea>
> : <AcquisitionMetadata xmlns="urn:schemas-
> Professional-Plug-in:P2:CameraMetadata:v1.2">
> : <CameraUnitMetadata>
> : <Gamma>
> : <CaptureGamma>V-LogL</CaptureGamma>
> : </Gamma>
> : <Gamut>
> : <CaptureGamut>V-Gamut</CaptureGamut>
> : </Gamut>
> : </CameraUnitMetadata>
> : </AcquisitionMetadata>
> : </UserArea>
> : </ClipMain>
> :
> Duration: 00:00:01.00, start: 0.000000, bitrate: 287839 kb/s
> Stream #0:0(und): Video: h264 (High 4:2:2 Intra) (avc1 / 0x31637661),
> yuv422p10le(pc, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 200403 kb/s, 59.94
> fps, 59.94 tbr, 180k tbn, 119.88 tbc (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> timecode : 01:51:38;04
> Stream #0:1(und): Audio: pcm_s16be (twos / 0x736F7774), 48000 Hz,
> stereo, s16, 1536 kb/s (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> timecode : 01:51:38;04
> Stream #0:2(und): Data: none (tmcd / 0x64636D74), 1 kb/s (default)
> Metadata:
> creation_time : 2022-03-28T16:40:34.000000Z
> timecode : 01:51:38;04
> At least one output file must be specified''
New description:
Summary of the bug:
Timecode of 59.94 fps content from a Panasonic GH5 is not being read
correctly by newer versions of ffmpeg. Confirmed in versions of ffmpeg
from 2020 and 2022. Works fine in a version from 2018. 2018 ffmpeg version
timecode matches the timecode in the Panasonic XML metadata. Not sure if
x64/x86 might play a role as well.
(Since first writing this ticket, I've discovered that timecode for 119.88
fps content from Panasonic S1H cameras cannot be read at all by ffmpeg's
2022 version, while the 2018 version of ffmpeg reads it fine. If the issue
with GH5 59.94 footage is fixed, and the fix does not also address the
issue with the S1H 119.88 fps footage, I can open up a new ticket, or
amend this one. Just didn't want to add too much to this one right off the
bat.)
Download link for GH5 file (35 MB):
https://drive.google.com/file/d/1QsJokEmOhTr52ckC4QAk4VvnwZrsF9gV/view?usp=sharing
XML: : <StartTimecode>01:51:38:04</StartTimecode>
ffmpeg 2018: timecode : 01:51:38;04
ffmpeg 2022: timecode : 00:55:49;04
'''ffmpeg2022 -i P22C5054.MOV
ffmpeg version 5.0-essentials_build-www.gyan.dev Copyright (c) 2000-2022
the FFmpeg developers
built with gcc 11.2.0 (Rev5, Built by MSYS2 project)
configuration: --enable-gpl --enable-version3 --enable-static --disable-
w32threads --disable-autodetect --enable-fontconfig --enable-iconv
--enable-gnutls --enable-libxml2 --enable-gmp --enable-lzma --enable-zlib
--enable-libsrt --enable-libssh --enable-libzmq --enable-avisynth
--enable-sdl2 --enable-libwebp --enable-libx264 --enable-libx265 --enable-
libxvid --enable-libaom --enable-libopenjpeg --enable-libvpx --enable-
libass --enable-libfreetype --enable-libfribidi --enable-libvidstab
--enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm
--enable-cuvid --enable-ffnvcodec --enable-nvdec --enable-nvenc --enable-
d3d11va --enable-dxva2 --enable-libmfx --enable-libgme --enable-libopenmpt
--enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora
--enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb
--enable-libopus --enable-libspeex --enable-libvorbis --enable-
librubberband
libavutil 57. 17.100 / 57. 17.100
libavcodec 59. 18.100 / 59. 18.100
libavformat 59. 16.100 / 59. 16.100
libavdevice 59. 4.100 / 59. 4.100
libavfilter 8. 24.100 / 8. 24.100
libswscale 6. 4.100 / 6. 4.100
libswresample 4. 3.100 / 4. 3.100
libpostproc 56. 3.100 / 56. 3.100
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P22C5054.MOV':
Metadata:
major_brand : qt
minor_version : 537986816
compatible_brands: qt pana
creation_time : 2022-03-28T16:40:34.000000Z
com.panasonic.Semi-Pro.metadata.xml: <?xml version="1.0"
encoding="UTF-8" standalone="no" ?>
: <ClipMain xmlns:xsi="http://www.w3.org/2001
/XMLSchema-instance" xmlns="urn:schemas-Professional-Plug-in:Semi-
Pro:ClipMetadata:v1.0">
: <ClipContent>
:
<GlobalClipID>060A2B340101010501010D2113000000EFD4DF4950BF56344063106100D20024</GlobalClipID>
: <Duration>60</Duration>
: <EditUnit>1001/60000</EditUnit>
: <EssenceList>
: <Video>
: <Codec BitRate="200">H264_422_Intra</Codec>
: <ActiveLine>1080</ActiveLine>
: <ActivePixel>1920</ActivePixel>
: <BitDepth>10</BitDepth>
: <FrameRate>59.94p</FrameRate>
: <TimecodeType>Drop</TimecodeType>
: <StartTimecode>01:51:38:04</StartTimecode>
: </Video>
: <Audio>
: <Channel>2</Channel>
: <SamplingRate>48000</SamplingRate>
: <BitsPerSample>16</BitsPerSample>
: </Audio>
: </EssenceList>
: <ClipMetadata>
: <Rating>0</Rating>
: <Access>
:
<CreationDate>2022-03-28T16:40:34-06:00</CreationDate>
:
<LastUpdateDate>2022-03-28T16:40:34-06:00</LastUpdateDate>
: </Access>
: <Device>
: <Manufacturer>Panasonic</Manufacturer>
: <ModelName>DC-GH5S</ModelName>
: </Device>
: <Shoot>
:
<StartDate>2022-03-28T16:40:34-06:00</StartDate>
: </Shoot>
: </ClipMetadata>
: </ClipContent>
: <UserArea>
: <AcquisitionMetadata xmlns="urn:schemas-
Professional-Plug-in:P2:CameraMetadata:v1.2">
: <CameraUnitMetadata>
: <Gamma>
: <CaptureGamma>V-LogL</CaptureGamma>
: </Gamma>
: <Gamut>
: <CaptureGamut>V-Gamut</CaptureGamut>
: </Gamut>
: </CameraUnitMetadata>
: </AcquisitionMetadata>
: </UserArea>
: </ClipMain>
:
Duration: 00:00:01.00, start: 0.000000, bitrate: 287839 kb/s
Stream #0:0[0x1](und): Video: h264 (High 4:2:2 Intra) (avc1 /
0x31637661), yuv422p10le(pc, bt709, progressive), 1920x1080 [SAR 1:1 DAR
16:9], 200403 kb/s, 59.94 fps, 59.94 tbr, 180k tbn (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
vendor_id : [0][0][0][0]
timecode : 00:55:49;04
Stream #0:1[0x2](und): Audio: pcm_s16be (twos / 0x736F7774), 48000 Hz,
stereo, s16, 1536 kb/s (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
vendor_id : pana
timecode : 00:55:49;04
Stream #0:2[0x3](und): Data: none (tmcd / 0x64636D74), 1 kb/s (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
timecode : 00:55:49;04
At least one output file must be specified'''
''ffmpeg2018 -i P22C5054.MOV
ffmpeg version N-91492-g9cb3d8fcb7 Copyright (c) 2000-2018 the FFmpeg
developers
built with gcc 7.3.1 (GCC) 20180710
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-
bzlib --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. 18.102 / 56. 18.102
libavcodec 58. 21.105 / 58. 21.105
libavformat 58. 17.101 / 58. 17.101
libavdevice 58. 4.101 / 58. 4.101
libavfilter 7. 26.100 / 7. 26.100
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'P22C5054.MOV':
Metadata:
major_brand : qt
minor_version : 537986816
compatible_brands: qt pana
creation_time : 2022-03-28T16:40:34.000000Z
com.panasonic.Semi-Pro.metadata.xml: <?xml version="1.0"
encoding="UTF-8" standalone="no" ?>
: <ClipMain xmlns:xsi="http://www.w3.org/2001
/XMLSchema-instance" xmlns="urn:schemas-Professional-Plug-in:Semi-
Pro:ClipMetadata:v1.0">
: <ClipContent>
:
<GlobalClipID>060A2B340101010501010D2113000000EFD4DF4950BF56344063106100D20024</GlobalClipID>
: <Duration>60</Duration>
: <EditUnit>1001/60000</EditUnit>
: <EssenceList>
: <Video>
: <Codec BitRate="200">H264_422_Intra</Codec>
: <ActiveLine>1080</ActiveLine>
: <ActivePixel>1920</ActivePixel>
: <BitDepth>10</BitDepth>
: <FrameRate>59.94p</FrameRate>
: <TimecodeType>Drop</TimecodeType>
: <StartTimecode>01:51:38:04</StartTimecode>
: </Video>
: <Audio>
: <Channel>2</Channel>
: <SamplingRate>48000</SamplingRate>
: <BitsPerSample>16</BitsPerSample>
: </Audio>
: </EssenceList>
: <ClipMetadata>
: <Rating>0</Rating>
: <Access>
:
<CreationDate>2022-03-28T16:40:34-06:00</CreationDate>
:
<LastUpdateDate>2022-03-28T16:40:34-06:00</LastUpdateDate>
: </Access>
: <Device>
: <Manufacturer>Panasonic</Manufacturer>
: <ModelName>DC-GH5S</ModelName>
: </Device>
: <Shoot>
:
<StartDate>2022-03-28T16:40:34-06:00</StartDate>
: </Shoot>
: </ClipMetadata>
: </ClipContent>
: <UserArea>
: <AcquisitionMetadata xmlns="urn:schemas-
Professional-Plug-in:P2:CameraMetadata:v1.2">
: <CameraUnitMetadata>
: <Gamma>
: <CaptureGamma>V-LogL</CaptureGamma>
: </Gamma>
: <Gamut>
: <CaptureGamut>V-Gamut</CaptureGamut>
: </Gamut>
: </CameraUnitMetadata>
: </AcquisitionMetadata>
: </UserArea>
: </ClipMain>
:
Duration: 00:00:01.00, start: 0.000000, bitrate: 287839 kb/s
Stream #0:0(und): Video: h264 (High 4:2:2 Intra) (avc1 / 0x31637661),
yuv422p10le(pc, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 200403 kb/s, 59.94
fps, 59.94 tbr, 180k tbn, 119.88 tbc (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
timecode : 01:51:38;04
Stream #0:1(und): Audio: pcm_s16be (twos / 0x736F7774), 48000 Hz,
stereo, s16, 1536 kb/s (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
timecode : 01:51:38;04
Stream #0:2(und): Data: none (tmcd / 0x64636D74), 1 kb/s (default)
Metadata:
creation_time : 2022-03-28T16:40:34.000000Z
timecode : 01:51:38;04
At least one output file must be specified''
--
--
Ticket URL: <https://trac.ffmpeg.org/ticket/9710#comment:2>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list