I wrote a C program that arranges lpeg pictures in an easy to digest
fashion to create time lapse videos. It arranges the source files into a
numbered directory structure and then calls FFMPEG to do the hard work.

Here's an approximate command line I'm using. The quotes may be slightly
different.

C:\WINDOWS\ffmpeg.exe -hide_banner -r 30 -i
C:\Users\Wim\Videos\20261031-Lisbon\Wim%05d.JPG -vf
crop=in_w:9/16*in_w,drawtext=fontfile=C\\:/WINDOWS/Fonts/consola.ttf:fontcolor=white:fontsize=main_h/16:y=main_h-text_h-50:x=main_w-text_w-50:text=WimsWorld,drawtext=fontfile=C\\:/WINDOWS/Fonts/consola.ttf:fontcolor=white:fontsize=main_h/16:y=main_h-text_h-50:x=50:text=%{metadata\\:DateTimeOriginal}
-c:v libx265 -crf 23 -preset veryfast -s 3840x2160 -movflags +faststart -bf
2 -g 15 -pix_fmt yuv420p -n
C:\Users\Wim\Videos\20261031-Lisbon-2160p30-cropped.mp4

It used to embed the time in the bottom left of the video, pulled from the
metadata of each individual JPG file. That portion is not appearing with
current FFMPEG, and I'm wondering what's changed, since I'm using the same
camera I used to use and it's not had any firmware updates.

I tested one of the source images and it still has the data, but I'm
wondering if FFMPEG uses a different tag now. Should I be using
TAG:ExifIFD/DateTimeOriginal
or ExifIFD/DateTimeOriginal instead of the metadata:DateTimeOriginal I
originally figured out to use?

C:\Users\Wim\Source\Repos\WimsWorld\RenameGoProFilesForFFMPEG\Release>ffprobe
-show_frames D:\GoPro\553GOPRO\G0017936.JPG
ffprobe version 2026-09-14-git-6efe500d2e-full_build-www.gyan.dev Copyright
(c) 2007-2026 the FFmpeg developers
  built with gcc 16.2.0 (Rev3, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static
--disable-w32threads --disable-autodetect --enable-cairo
--enable-fontconfig --enable-iconv --enable-gnutls --enable-lcms2
--enable-libxml2 --enable-gmp --enable-bzlib --enable-lzma
--enable-libsnappy --enable-zlib --enable-librist --enable-libsrt
--enable-libssh --enable-libzmq --enable-avisynth --enable-libbluray
--enable-libcaca --enable-libdvdnav --enable-libdvdread --enable-sdl2
--enable-libaribb24 --enable-libaribcaption --enable-libdav1d
--enable-libdavs2 --enable-libopenjpeg --enable-libquirc --enable-libuavs3d
--enable-libxevd --enable-libzvbi --enable-liboapv --enable-libqrencode
--enable-librav1e --enable-libsvtav1 --enable-libvvenc --enable-libwebp
--enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxeve
--enable-libxvid --enable-libaom --enable-libjxl --enable-libsvtjpegxs
--enable-libvpx --enable-mediafoundation --enable-libass --enable-frei0r
--enable-libfreetype --enable-libfribidi --enable-libharfbuzz
--enable-liblensfun --enable-libvidstab --enable-libvmaf --enable-libzimg
--enable-amf --enable-cuda-llvm --enable-cuvid --enable-dxva2
--enable-d3d11va --enable-d3d12va --enable-ffnvcodec --enable-libvpl
--enable-nvdec --enable-nvenc --enable-vaapi --enable-vulkan
--enable-libplacebo --enable-opencl --enable-libcdio --enable-openal
--enable-libgme --enable-libmodplug --enable-libopenmpt
--enable-libopencore-amrwb --enable-libmp3lame --enable-libshine
--enable-libtheora --enable-libtwolame --enable-libvo-amrwbenc
--enable-libcodec2 --enable-libilbc --enable-libgsm --enable-liblc3
--enable-libopencore-amrnb --enable-libopus --enable-libspeex
--enable-libvorbis --enable-ladspa --enable-libbs2b --enable-libflite
--enable-libmysofa --enable-librubberband --enable-libsoxr
--enable-chromaprint --enable-whisper
  libavutil      61.  7.100 / 61.  7.100
  libavcodec     63. 12.100 / 63. 12.100
  libavformat    63.  6.100 / 63.  6.100
  libavdevice    63.  2.100 / 63.  2.100
  libavfilter    12.  4.100 / 12.  4.100
  libswscale     10.  2.100 / 10.  2.100
  libswresample   7.  3.100 /  7.  3.100
Input #0, image2, from 'D:\GoPro\553GOPRO\G0017936.JPG':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 546702 kb/s
  Stream #0:0: Video: mjpeg (Baseline), yuvj422p(pc,
bt470bg/unknown/unknown), 3264x2448, 25 fps, 25 tbr, 25 tbn
[FRAME]
media_type=video
stream_index=0
key_frame=1
pts=0
pts_time=0.000000
pkt_dts=0
pkt_dts_time=0.000000
best_effort_timestamp=0
best_effort_timestamp_time=0.000000
duration=1
duration_time=0.040000
pkt_pos=N/A
pkt_size=2733510
width=3264
height=2448
crop_top=0
crop_bottom=0
crop_left=0
crop_right=0
pix_fmt=yuvj422p
sample_aspect_ratio=N/A
pict_type=I
interlaced_frame=0
top_field_first=0
lossless=0
repeat_pict=0
color_range=pc
color_space=bt470bg
color_primaries=unknown
color_transfer=unknown
chroma_location=center
alpha_mode=unspecified
TAG:ImageDescription=DCIM\553GOPRO
TAG:Make=GoPro
TAG:Model=HERO4 Session
TAG:XResolution=     72:1
TAG:YResolution=     72:1
TAG:ResolutionUnit=      2
TAG:Software=HX1.01.02.00
TAG:DateTime=2026:10:31 10:13:04
TAG:YCbCrPositioning=      1
TAG:PrintImageMatching= 80, 114, 105, 110, 116,  73,  77,   0,  48,  51,
 48,  48,   0,   0,   0,   3
  0,   1,   0,  34,   0,  34,   0,  10,   0,   0,   0,   0,   0,  11,   0,
  0
  0, 145,   0,   0,   0,   0,   0,   0
TAG:ExifIFD/ExposureTime=     10:5346
TAG:ExifIFD/FNumber=    280:100
TAG:ExifIFD/ExposureProgram=      2
TAG:ExifIFD/ISOSpeedRatings=    100
TAG:ExifIFD/0x8830=      3
TAG:ExifIFD/0x8833=    100
TAG:ExifIFD/ExifVersion= 48,  50,  51,  48
TAG:ExifIFD/DateTimeOriginal=2026:10:31 10:13:04
TAG:ExifIFD/DateTimeDigitized=2026:10:31 10:13:04
TAG:ExifIFD/ComponentsConfiguration=  1,   2,   3,   0
TAG:ExifIFD/CompressedBitsPerPixel=2431309:998784
TAG:ExifIFD/ShutterSpeedValue=  -9062:-1000
TAG:ExifIFD/ApertureValue=    297:100
TAG:ExifIFD/ExposureBiasValue=      0:32
TAG:ExifIFD/MaxApertureValue=    297:100
TAG:ExifIFD/SubjectDistance=      0:0
TAG:ExifIFD/MeteringMode=      2
TAG:ExifIFD/LightSource=      0
TAG:ExifIFD/Flash=     32
TAG:ExifIFD/FocalLength=    277:100
TAG:ExifIFD/MakerNote= 10,   0,   3,  96,   2,  19,   0,   0,   5,  80,
 78,  65,  67,  53,  48,  55
 49,  54,  48,  48,  50,  48,  49,  50,  48,  52,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
 39, 183, 158, 127,   8,  15, 169, 231, 211,  35, 175,  12,  87, 245,  73,
221
  7, 234, 167, 202,   0, 152,   3,  67, 128, 166,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,  64,  65,  77,  66,  65,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  0
  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,
  1
TAG:ExifIFD/FlashpixVersion= 48,  49,  48,  48
TAG:ExifIFD/ColorSpace=      1
TAG:ExifIFD/PixelXDimension=   3264
TAG:ExifIFD/PixelYDimension=   2448
TAG:ExifIFD/InteropIFD/GPSLatitudeRef=R98
TAG:ExifIFD/InteropIFD/GPSLatitude= 48,  49,  48,  48
TAG:ExifIFD/ExposureIndex=      0:0
TAG:ExifIFD/SensingMethod=      2
TAG:ExifIFD/FileSource=  3
TAG:ExifIFD/SceneType=  1
TAG:ExifIFD/CustomRendered=      0
TAG:ExifIFD/ExposureMode=      0
TAG:ExifIFD/WhiteBalance=      0
TAG:ExifIFD/DigitalZoomRatio=   1024:1024
TAG:ExifIFD/FocalLengthIn35mmFilm=      1
TAG:ExifIFD/SceneCaptureType=      0
TAG:ExifIFD/GainControl=      0
TAG:ExifIFD/Contrast=      0
TAG:ExifIFD/Saturation=      0
TAG:ExifIFD/Sharpness=      2
TAG:ExifIFD/DeviceSettingDescription=  0,   0,   0,   0
TAG:ExifIFD/SubjectDistanceRange=      0
TAG:IFD1/Compression=      6
TAG:IFD1/XResolution=     72:1
TAG:IFD1/YResolution=     72:1
TAG:IFD1/ResolutionUnit=      2
TAG:IFD1/JPEGInterchangeFormat=   2036
TAG:IFD1/JPEGInterchangeFormatLength=   8896
[SIDE_DATA]
side_data_type=3x3 displaymatrix
displaymatrix=
00000000:        65536           0           0
00000001:            0       65536           0
00000002:            0           0  1073741824

rotation=0
[/SIDE_DATA]
[SIDE_DATA]
side_data_type=EXIF metadata
size=1251
[/SIDE_DATA]
[/FRAME]
_______________________________________________
ffmpeg-user mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to