Hey,
ok, so let's split up the problems:
1) how to make ffmpeg write the timecode of the frame into the output filename. There are at the best of my knowledge 2 options for this (i might be wrong, better as ffmpeg-user chat):
a) for live recordings we can use
Code: Select all
-strftime 1 "c:\temp\prefix_%Y-%m-%d_%H-%M-%S.jpg"
b) for non live we can only put the frame number starting from 0 into the filename
Code: Select all
-frame_pts 1 "c:\temp\thumbs_%d.png"
2) the generated filenames to a text file. There are many options for that but not from inside ffmpeg itself.
a) use a batch file after transcode with dir /s /b or such, but i think you already do something like it
b) grep the generated filenames directly from ffmpeg but this is really more simple. Potentially you could add something like:
Code: Select all
-loglevel debug 2>&1|findstr Opening 2>&1 > c:\temp\list.txt
In that case c:\temp\list.txt would contain the list of generated files but with some unneccessary stuff around like:
[image2 @ 000001b281e65600] Opening 'c:\temp\thumbs_148.png' for writing
Which doesnt really make your life easier than having a batch as you do now.
Note that the requirement to put the "video timecode" into the filename of extracted images is not really a valid solution as the TC of files can wrap over at 24:00, starting from 0 again which would make ffmpeg potentially overwrite some of the exported images, so it is in general not a valid solution to work with the "video timecode" for filenames when extracting thumbs.