summaryrefslogtreecommitdiff
path: root/src/cam/buffer_writer.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-07-07 02:59:40 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-07-22 17:13:57 +0300
commit5082fe7b5b9ea7e073e409fd8b73126951803456 (patch)
tree4f6d5a97df0511e69ff6738a4a30996fa482cc6f /src/cam/buffer_writer.cpp
parentcaa6ffacb2fc4fb6ff1bc648fb418c5639011824 (diff)
cam: Allow specifying directories in the --file option
The value of the --file option is the full name of the file to which captured frames are written. To write files to a specific directory with the default naming scheme, the "frame-#.bin" name has to appear at the end of the file name. Simplify usage of the option by allowing --file to specify a directory only. If the file name ends with a '/', the default "frame-#.bin" file name is automatically appended. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/cam/buffer_writer.cpp')
-rw-r--r--src/cam/buffer_writer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/cam/buffer_writer.cpp b/src/cam/buffer_writer.cpp
index f2b21aef..a7648a92 100644
--- a/src/cam/buffer_writer.cpp
+++ b/src/cam/buffer_writer.cpp
@@ -49,7 +49,12 @@ int BufferWriter::write(FrameBuffer *buffer, const std::string &streamName)
size_t pos;
int fd, ret = 0;
- filename = pattern_;
+ if (!pattern_.empty())
+ filename = pattern_;
+
+ if (filename.empty() || filename.back() == '/')
+ filename += "frame-#.bin";
+
pos = filename.find_first_of('#');
if (pos != std::string::npos) {
std::stringstream ss;