From db2136cd0473e46b1dc7aae9d32c37841bf5a7ff Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期四, 24 十月 2019 11:01:08 +0800
Subject: [PATCH] add backup rec

---
 csrc/buz/recorder.cpp |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/csrc/buz/recorder.cpp b/csrc/buz/recorder.cpp
index 17f2306..beda224 100644
--- a/csrc/buz/recorder.cpp
+++ b/csrc/buz/recorder.cpp
@@ -84,6 +84,12 @@
             std::string filename(sole::uuid4().base62() + "-" + std::to_string(pid) + ".mp4");
             file_path_ = dir_ + "/" + filename;
 
+            std::string backup_dir("./video");
+            size_t pos = dir_.rfind("/");
+            if (pos != std::string::npos){
+                backup_dir = dir_.substr(0, pos);
+            }
+
             auto v = in_->getStream(AVMEDIA_TYPE_VIDEO);
             if (!v){
                 return -2;
@@ -97,10 +103,9 @@
                 logIt("start record h264 file: %s", file_path_.c_str());                
                 return 0;
             }else{
-                std::string backup_dir("./video");
                 mkdir(backup_dir.c_str(), 0777);
                 file_path_ = backup_dir + "/" + filename;
-                
+
                 logIt("failed in dir %s, try file %s to start record file", dir_.c_str(), file_path_.c_str());                
                 ret = out_->JustWriter(v, a, file_path_.c_str());
                 if (ret){
@@ -123,9 +128,14 @@
             std::string filename(sole::uuid4().base62() + "-" + std::to_string(pid) + ".hevc");
             file_path_ = dir_ + "/" + filename;
 
+            std::string backup_dir("./video");
+            size_t pos = dir_.rfind("/");
+            if (pos != std::string::npos){
+                backup_dir = dir_.substr(0, pos);
+            }
+            
             fp_ = fopen(file_path_.c_str(), "wb");
             if (!fp_){
-                std::string backup_dir("./video");
                 mkdir(backup_dir.c_str(), 0777);
                 file_path_ = backup_dir + "/" + filename;
 

--
Gitblit v1.8.0