Bladeren bron

change RemoteContrl_stream. add ctrl framerate set.

yuchuli 4 jaren geleden
bovenliggende
commit
b410ebf369

+ 16 - 1
src/driver/driver_cloud_grpc_pc_stream/grpcpc.cpp

@@ -38,6 +38,7 @@ void grpcpc::threadsend(std::shared_ptr<::grpc::ClientReaderWriter<iv::queryReqS
 
     int ninterval = atoi(gstruploadinterval.data());
     if(ninterval<=0)ninterval = 100;
+    mninterval = ninterval;
 
     QTime xTime;
     xTime.start();
@@ -50,7 +51,7 @@ void grpcpc::threadsend(std::shared_ptr<::grpc::ClientReaderWriter<iv::queryReqS
     while(*pbrun)
     {
         std::this_thread::sleep_for(std::chrono::milliseconds(1));
-        if((xTime.elapsed()-nlastsend)<ninterval)
+        if((xTime.elapsed()-nlastsend)<mninterval)
         {
             continue;
         }
@@ -131,6 +132,7 @@ void grpcpc::run()
 
     int ninterval = atoi(gstruploadinterval.data());
     if(ninterval<=0)ninterval = 100;
+    mninterval = ninterval;
 
     QTime xTime;
     xTime.start();
@@ -349,3 +351,16 @@ float grpcpc::getframerate()
 {
     return mframerate;
 }
+
+void grpcpc::setctrlfps(float framerate)
+{
+    if(framerate > 0.01)
+    {
+        mninterval =(int)( 1000.0/framerate);
+    }
+}
+
+float grpcpc::getctrlfps()
+{
+    return 1000.0/mninterval;
+}

+ 3 - 0
src/driver/driver_cloud_grpc_pc_stream/grpcpc.h

@@ -74,6 +74,7 @@ private:
 
 
     float mframerate = 0.0;
+    int mninterval = 100;
 
     int gindex = 0;
 
@@ -89,6 +90,8 @@ public:
 
     void setframerate(float framerate);
     float getframerate();
+    void setctrlfps(float framerate);
+    float getctrlfps();
 
 
 };

+ 4 - 1
src/tool/RemoteCtrl_Stream/dialogsetframerate.cpp

@@ -1,15 +1,17 @@
 #include "dialogsetframerate.h"
 #include "ui_dialogsetframerate.h"
 
-DialogSetFrameRate::DialogSetFrameRate(float * pframerate,QWidget *parent) :
+DialogSetFrameRate::DialogSetFrameRate(float * pframerate,float * pctrlfps,QWidget *parent) :
     QDialog(parent),
     ui(new Ui::DialogSetFrameRate)
 {
     mpframerate = pframerate;
+    mpctrlfps = pctrlfps;
 
     ui->setupUi(this);
 
     ui->lineEdit_framerate->setText(QString::number(*mpframerate));
+    ui->lineEdit_ctrfps->setText(QString::number(*mpctrlfps));
 }
 
 DialogSetFrameRate::~DialogSetFrameRate()
@@ -20,5 +22,6 @@ DialogSetFrameRate::~DialogSetFrameRate()
 void DialogSetFrameRate::on_pushButton_set_clicked()
 {
     *mpframerate = ui->lineEdit_framerate->text().toDouble();
+    *mpctrlfps = ui->lineEdit_ctrfps->text().toDouble();
     this->accept();
 }

+ 2 - 1
src/tool/RemoteCtrl_Stream/dialogsetframerate.h

@@ -12,7 +12,7 @@ class DialogSetFrameRate : public QDialog
     Q_OBJECT
 
 public:
-    explicit DialogSetFrameRate(float * pframerate, QWidget *parent = 0);
+    explicit DialogSetFrameRate(float * pframerate, float * pctrlfps,QWidget *parent = 0);
     ~DialogSetFrameRate();
 
 private slots:
@@ -21,6 +21,7 @@ private slots:
 private:
     Ui::DialogSetFrameRate *ui;
     float * mpframerate;
+    float * mpctrlfps;
 };
 
 #endif // DIALOGSETFRAMERATE_H

+ 31 - 8
src/tool/RemoteCtrl_Stream/dialogsetframerate.ui

@@ -16,8 +16,8 @@
   <widget class="QPushButton" name="pushButton_set">
    <property name="geometry">
     <rect>
-     <x>130</x>
-     <y>130</y>
+     <x>140</x>
+     <y>190</y>
      <width>89</width>
      <height>25</height>
     </rect>
@@ -29,9 +29,9 @@
   <widget class="QLineEdit" name="lineEdit_framerate">
    <property name="geometry">
     <rect>
-     <x>170</x>
-     <y>70</y>
-     <width>161</width>
+     <x>188</x>
+     <y>124</y>
+     <width>111</width>
      <height>25</height>
     </rect>
    </property>
@@ -40,13 +40,36 @@
    <property name="geometry">
     <rect>
      <x>30</x>
-     <y>73</y>
-     <width>111</width>
+     <y>127</y>
+     <width>141</width>
+     <height>17</height>
+    </rect>
+   </property>
+   <property name="text">
+    <string>上传频率(HZ)</string>
+   </property>
+  </widget>
+  <widget class="QLabel" name="label_2">
+   <property name="geometry">
+    <rect>
+     <x>30</x>
+     <y>50</y>
+     <width>141</width>
      <height>17</height>
     </rect>
    </property>
    <property name="text">
-    <string>FrameRate</string>
+    <string>控制频率(HZ)</string>
+   </property>
+  </widget>
+  <widget class="QLineEdit" name="lineEdit_ctrfps">
+   <property name="geometry">
+    <rect>
+     <x>190</x>
+     <y>49</y>
+     <width>111</width>
+     <height>25</height>
+    </rect>
    </property>
   </widget>
  </widget>

+ 7 - 1
src/tool/RemoteCtrl_Stream/mainwindow.cpp

@@ -844,10 +844,16 @@ void MainWindow::on_actionSet_FrameRate_triggered()
 {
     float framerate = mgrpcpc->getframerate();
     float oldfr = framerate;
-    DialogSetFrameRate xdialog(&framerate);
+    float fctrlfps = mgrpcpc->getctrlfps();
+    float oldctrlfps = fctrlfps;
+    DialogSetFrameRate xdialog(&framerate,&fctrlfps);
     xdialog.exec();
     if(oldfr != framerate)
     {
         mgrpcpc->setframerate(framerate);
     }
+    if(oldctrlfps != fctrlfps)
+    {
+        mgrpcpc->setctrlfps(fctrlfps);
+    }
 }