From 47a9f357fe9d6c4e6ea592f1fbc947cae3c532f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20S=C3=B6derlund?= Date: Fri, 5 Apr 2019 20:56:07 +0200 Subject: cam: Extend BufferWriter to include a stream name in file path MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To be able to write multiple buffers captured in the same request (and hence having the same sequence number) the buffer writer needs to name each file uniquely. Add a stream name to the writer function which the buffer writer can add to the part of the pattern it already expands to the sequence number. As cam only supports one stream, hard code the name to stream0. Signed-off-by: Niklas Söderlund Reviewed-by: Laurent Pinchart --- src/cam/buffer_writer.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/cam/buffer_writer.cpp') diff --git a/src/cam/buffer_writer.cpp b/src/cam/buffer_writer.cpp index 2d2258b4..e0374ffc 100644 --- a/src/cam/buffer_writer.cpp +++ b/src/cam/buffer_writer.cpp @@ -19,7 +19,8 @@ BufferWriter::BufferWriter(const std::string &pattern) { } -int BufferWriter::write(libcamera::Buffer *buffer) +int BufferWriter::write(libcamera::Buffer *buffer, + const std::string &streamName) { std::string filename; size_t pos; @@ -29,7 +30,8 @@ int BufferWriter::write(libcamera::Buffer *buffer) pos = filename.find_first_of('#'); if (pos != std::string::npos) { std::stringstream ss; - ss << std::setw(6) << std::setfill('0') << buffer->sequence(); + ss << streamName << "-" << std::setw(6) + << std::setfill('0') << buffer->sequence(); filename.replace(pos, 1, ss.str()); } -- cgit v1.2.1