<div dir="ltr">I capture video from a camera to a file in MJPEG format like so:<br><br>$ gst-launch-1.0 nvarguscamerasrc do-timestamp=true \<br>    ! 'video/x-raw(memory:NVMM), width=3280, height=2464' \<br>    ! nvjpegenc \<br>    ! matroskamux \<br>    ! filesink location=out.mkv<div><br>And I've found I can extract all the frames to individual JPEG files like so:<br><br>$ gst-launch-1.0 filesrc location=out.mkv \<br>    ! matroskademux \<br>    ! multifilesink location=out-%05d.jpg</div><div><br>But that's not what I want to do, I want to extract a particular frame by specifying the wall-clock time at which it was captured.<br><br>E.g. if I started recording a video at 17:05:32UTC and recorded for 5 minutes, I'd later like to be able to extract a frame from the resulting file by specifying that it was captured at e.g. 17:07:40UTC.<br><br>I.e. I want to work with absolute times, that depend on when the video was captured, rather than times relative to the start of the video file - so 17:07:40UTC rather than 2m 8s.<br><br>I apologize for the cargo-cult nature of my pipelines. I added do-timestamp=true because it sounded like a "good thing" but I don't know what impact it has. Similarly, I chose Matroska because <a href="https://www.linuxtv.org/wiki/index.php/GStreamer">https://www.linuxtv.org/wiki/index.php/GStreamer</a> said that it, in contrast to AVI and other formats, supports timestamps, but again I don't really know on what level this applies and whether it's relevant to what I want to achieve.<br><br>So the container format is unimportant to me - I'm even happy to switch from MJPEG to something else if it makes the task easier.<br><br>I was hoping that it might be as simple as that the wall-clock time could be included as EXIF data in the individual JPEG images of the MJPEG file. And then something could search the MJPEG file for the JPEG frame with the requested wall-clock time in its EXIF data and extract it.<br></div><div><br></div><div>PS I know I'm abusing the term wall clock time. Generally, it means a time of day without a time zone. But here I just wanted to be clear I meant an externally defined time as opposed to e.g. the number of milliseconds since the start of a file. In practice, I'd be expecting to express times as absolute points in time e.g. 2007-04-05T14:30.123Z (ISO 8601).<br></div></div>