From 77973e5f553c10131ecb41a2e2299f992532949c Mon Sep 17 00:00:00 2001
From: chenshijun <csj_sky@126.com>
Date: 星期二, 12 三月 2019 10:10:47 +0800
Subject: [PATCH] 修改录制文件的pts没有,导致无法播放问题

---
 QiaoJiaSystem/DataManagerServer/http_configserver.cpp |   43 +++++++++++++++++++++++++++++++------------
 1 files changed, 31 insertions(+), 12 deletions(-)

diff --git a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
index 1170960..c79f6b2 100644
--- a/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
+++ b/QiaoJiaSystem/DataManagerServer/http_configserver.cpp
@@ -1008,6 +1008,16 @@
         elem["str_brand"] = iter->str_brand.toStdString();
         elem["str_reserved"] = iter->str_reserved.toStdString();
 
+        SdkRuleMap ruleMap = db_c.searchSdkRuleByCamId(iter->str_cam_dev_id);
+
+        int count = ruleMap.size();
+        elem["nSdkTypes"] = Json::arrayValue;
+
+        if (count > 0) {
+            for (auto rule:ruleMap) {
+                elem["nSdkTypes"].append(rule.second.nSdkType);
+            }
+        }
 //        Record_Cam_Sdk rec_sdk = db_c.searchCamSdkTableByCamId(iter->str_cam_dev_id);
 //        elem["str_sdks"] = rec_sdk.str_sdks.toStdString();
 //        elem["str_det_thr"] = rec_sdk.str_det_thr.toStdString();
@@ -1272,26 +1282,35 @@
 
     Json::Reader reader;
     Json::Value value_reader;
-
+    std::string out;
     if (!reader.parse(content, value_reader)) {
         return "{\"ret_status\": \"浼犺緭閿欒锛岃妫�鏌ワ紒\"}";
     }
+    Json::Value value;
+    if (value_reader.isMember("id")) {
+        if (value_reader["id"].isNull()) return "{\"ret_status\": \"id鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
+        value["connect_status"] = "True";
+        std::string rtmp_url = appConfig.getStringProperty("srsAddr");
+        rtmp_url.append("cam").append(value_reader["id"].asCString());
+        value["video_url"] = rtmp_url;
+        out = value.toStyledString();
 
-    //TODO
-    //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream
+    } else {
+        //TODO
+        //璋冪敤rtsp娴乺tsp://admin:a1234567@192.168.1.215:554/h264/ch1/main/av_stream
 //    std::string rtsp_url = "rtsp://" + username + ":" + passwd + "@" + ip + ":"  + std::to_string(port) + "/h264/ch1/main/av_stream";
-    bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \
+        bool ret = cam_connect_video_start(value_reader["str_ip"].asString(), value_reader["n_port"].asInt(), \
                             value_reader["str_username"].asString(), value_reader["str_password"].asString(), \
                             value_reader["str_brand"].asString());
-    if (!ret) {
-        return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
-    }
+        if (!ret) {
+            return "{\"ret_status\": \"鍐呭鏈夎锛岃妫�鏌ワ紒\"}";
+        }
 
-    std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp();
-    Json::Value value;
-    value["connect_status"] = "True";
-    value["video_url"] = rtmp_url;
-    std::string out = value.toStyledString();
+        std::string rtmp_url = m_rtmp[value_reader["str_ip"].asCString()].appPC->getRtmp();
+        value["connect_status"] = "True";
+        value["video_url"] = rtmp_url;
+        out = value.toStyledString();
+    }
 
     return out;
 }

--
Gitblit v1.8.0