I have the following command:
ffmpeg -f f32le -ar 44100 -channels 2 -i pipe:0 -ss 3 -i input.mp4 -y -f mp4 -map 0:a -map 1:v -c:v copy -use_editlist 0 output.mp4
When copying the video stream instead of re-encoding it, I can't get any useful information out of ffprobe that tells me the seeked position of the video stream.
I tried gathering information on the complete stream:
ffprobe -of json -show_streams -show_format output.mp4
But start_time is 0 and the duration is unaffected. I also tried gathering information on the first frame of the video stream:
ffprobe -of json -select_streams v -show_frames output.mp4
Still no useful information.
However, when I re-encode the video stream (by removing -c:v copy from the command), I get the information I want. The video stream duration is modified by the -ss option. For example if the duration of the video is 5, then ffprobe would return a duration of 2 (5 minus 3), which lets me know the seeked position. If I also throw in a -copyts to the mix, then I can get the useful information by checking the first frame's info.
How can I get the seeked position without having to re-encode the video stream? Cheers!