#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include "media/CameraCapture.h" #include "cplaywidget.h" #include "media/VideoCoder.h" #include "media/RtmpPusher.h" #include "components/toast.h" #include "utils.h" #include "Qss.h" #include "media/audiocaptureff.h" #include #include #include #include #include #include #include #include using namespace QtCharts; using namespace std; namespace Ui { class MainWindow; } class MainWindow : public QssMainWindow ,CaptureAudioFfmpeg::CaptureAudioObserver { Q_OBJECT public: explicit MainWindow(QWidget *parent = nullptr); ~MainWindow(); void OnAudioData(const void *frameaddress, uint32_t framelen) ; private slots: void on_pushButton_clicked(); void on_pushButton_2_clicked(); void on_pushButton_3_clicked(); void DetectDpi(); private: QLineSeries* mSeries; QVector mPoint1,mPoint2; Ui::MainWindow *ui; Camera *mCamera; QStringList mCameraList; bool m_bCameraOpen; CPlayWidget *mPlayerWidget; VideoCoder *mVideoCoder; bool m_bRtmpPushing; H264RtmpPuser *mPusher; CaptureAudioFfmpeg *mAudioCapture; vector mMic; QTimer *mTimer; QChart *mChart; QChartView *mChartView; QListmBufferAudio; QMutex mMux; }; #endif // MAINWINDOW_H