2023-11-19 07:31:45 -05:00
|
|
|
///////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Copyright (C) 2016-2019, 2022 Edouard Griffiths, F4EXB <f4exb06@gmail.com> //
|
|
|
|
// //
|
|
|
|
// This program is free software; you can redistribute it and/or modify //
|
|
|
|
// it under the terms of the GNU General Public License as published by //
|
|
|
|
// the Free Software Foundation as version 3 of the License, or //
|
|
|
|
// (at your option) any later version. //
|
|
|
|
// //
|
|
|
|
// This program is distributed in the hope that it will be useful, //
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of //
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the //
|
|
|
|
// GNU General Public License V3 for more details. //
|
|
|
|
// //
|
|
|
|
// You should have received a copy of the GNU General Public License //
|
|
|
|
// along with this program. If not, see <http://www.gnu.org/licenses/>. //
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////
|
2016-05-04 11:07:26 -04:00
|
|
|
#ifndef INCLUDE_AUDIODIALOG_H
|
|
|
|
#define INCLUDE_AUDIODIALOG_H
|
|
|
|
|
|
|
|
#include <QDialog>
|
|
|
|
|
2018-03-20 08:49:21 -04:00
|
|
|
#include "export.h"
|
2018-03-26 05:55:45 -04:00
|
|
|
#include "audio/audiodevicemanager.h"
|
2018-03-03 14:23:38 -05:00
|
|
|
|
2018-03-26 05:55:45 -04:00
|
|
|
class QTreeWidgetItem;
|
2016-05-04 11:07:26 -04:00
|
|
|
|
|
|
|
namespace Ui {
|
|
|
|
class AudioDialog;
|
|
|
|
}
|
|
|
|
|
2018-03-25 07:36:09 -04:00
|
|
|
class SDRGUI_API AudioDialogX : public QDialog {
|
2016-05-04 11:07:26 -04:00
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
2018-03-25 07:36:09 -04:00
|
|
|
explicit AudioDialogX(AudioDeviceManager* audioDeviceManager, QWidget* parent = 0);
|
|
|
|
~AudioDialogX();
|
2016-05-04 11:07:26 -04:00
|
|
|
|
2018-03-26 05:55:45 -04:00
|
|
|
int m_inIndex;
|
|
|
|
int m_outIndex;
|
|
|
|
|
2016-05-04 11:07:26 -04:00
|
|
|
private:
|
2018-03-26 05:55:45 -04:00
|
|
|
void updateInputDisplay();
|
|
|
|
void updateOutputDisplay();
|
|
|
|
void updateInputDeviceInfo();
|
|
|
|
void updateOutputDeviceInfo();
|
2019-02-14 02:31:18 -05:00
|
|
|
void updateOutputSDPString();
|
2018-03-26 05:55:45 -04:00
|
|
|
|
2016-05-04 11:07:26 -04:00
|
|
|
Ui::AudioDialog* ui;
|
|
|
|
|
2018-03-23 22:36:49 -04:00
|
|
|
AudioDeviceManager* m_audioDeviceManager;
|
2018-03-26 05:55:45 -04:00
|
|
|
AudioDeviceManager::InputDeviceInfo m_inputDeviceInfo;
|
|
|
|
AudioDeviceManager::OutputDeviceInfo m_outputDeviceInfo;
|
|
|
|
quint16 m_outputUDPPort;
|
2016-05-04 11:07:26 -04:00
|
|
|
|
|
|
|
private slots:
|
|
|
|
void accept();
|
2018-03-26 05:55:45 -04:00
|
|
|
void reject();
|
2019-02-17 00:15:12 -05:00
|
|
|
void check();
|
2018-03-26 05:55:45 -04:00
|
|
|
void on_audioInTree_currentItemChanged(QTreeWidgetItem* currentItem, QTreeWidgetItem* previousItem);
|
|
|
|
void on_audioOutTree_currentItemChanged(QTreeWidgetItem* currentItem, QTreeWidgetItem* previousItem);
|
2017-01-05 21:13:53 -05:00
|
|
|
void on_inputVolume_valueChanged(int value);
|
2018-03-26 05:55:45 -04:00
|
|
|
void on_inputReset_clicked(bool checked);
|
|
|
|
void on_inputCleanup_clicked(bool checked);
|
|
|
|
void on_outputUDPPort_editingFinished();
|
|
|
|
void on_outputReset_clicked(bool checked);
|
|
|
|
void on_outputCleanup_clicked(bool checked);
|
2019-02-14 02:31:18 -05:00
|
|
|
void on_outputSampleRate_valueChanged(int value);
|
|
|
|
void on_decimationFactor_currentIndexChanged(int index);
|
|
|
|
void on_outputUDPChannelCodec_currentIndexChanged(int index);
|
|
|
|
void on_outputUDPChannelMode_currentIndexChanged(int index);
|
2022-11-08 16:55:40 -05:00
|
|
|
void on_record_toggled(bool checked);
|
|
|
|
void on_showFileDialog_clicked(bool checked);
|
|
|
|
void on_recordSilenceTime_valueChanged(int value);
|
2016-05-04 11:07:26 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // INCLUDE_AUDIODIALOG_H
|