Перемещение позиции текущего фрэйма для файла, запись которого еще не окончена
К примеру у меня есть некий видео поток, который я записываю в файл (mkv). Пока идет запись я паралельно обрабатываю данные из потока и когда засекаю что-либо интересное, то хочу вырезать эту часть. Из-за того что обработка происходит асинхронно я не могу просто запись из потока, мне нужно вырезать нужный кусок из файла. Так как я знаю позицию относительно начала, то это не должно вызвать трудностей, однако из-за того, что файл в этот момент все еще находится в состоянии записи, это вызывает некоторые трудности. Так, например, я не могу просто указать cv::VideoCapture нужный фрэйм через метод set - это не дает результата. А перебирать каждый фрэйм от начала - не очень хорошая затея. Как же все-таки реализовать нормальный seek для такого случая? Может это можно сделать через ffmpeg или gstreamer или там тоже подводные камни?