mirror of
https://github.com/AlexandreRouma/SDRPlusPlus.git
synced 2025-07-09 02:25:24 +02:00
Compare commits
5 Commits
5ab3428b90
...
retroactiv
Author | SHA1 | Date | |
---|---|---|---|
2ce1738a49 | |||
f205d97b52 | |||
628dcfcce0 | |||
d1e7cc56b4 | |||
334860c963 |
4
.github/workflows/build_all.yml
vendored
4
.github/workflows/build_all.yml
vendored
@ -138,7 +138,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Prepare CMake
|
- name: Prepare CMake
|
||||||
working-directory: ${{runner.workspace}}/build
|
working-directory: ${{runner.workspace}}/build
|
||||||
run: cmake -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 $GITHUB_WORKSPACE -DOPT_BUILD_PLUTOSDR_SOURCE=ON -DOPT_BUILD_BLADERF_SOURCE=ON -DOPT_BUILD_SDRPLAY_SOURCE=ON -DOPT_BUILD_LIMESDR_SOURCE=ON -DOPT_BUILD_AUDIO_SINK=OFF -DOPT_BUILD_PORTAUDIO_SINK=ON -DOPT_BUILD_NEW_PORTAUDIO_SINK=ON -DOPT_BUILD_M17_DECODER=ON -DOPT_BUILD_PERSEUS_SOURCE=ON -DOPT_BUILD_AUDIO_SOURCE=OFF -DOPT_BUILD_RFNM_SOURCE=ON -DOPT_BUILD_FOBOSSDR_SOURCE=ON -DUSE_BUNDLE_DEFAULTS=ON -DCMAKE_BUILD_TYPE=Release
|
run: cmake -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 $GITHUB_WORKSPACE -DOPT_BUILD_PLUTOSDR_SOURCE=ON -DOPT_BUILD_BLADERF_SOURCE=ON -DOPT_BUILD_SDRPLAY_SOURCE=ON -DOPT_BUILD_LIMESDR_SOURCE=ON -DOPT_BUILD_AUDIO_SINK=OFF -DOPT_BUILD_PORTAUDIO_SINK=ON -DOPT_BUILD_NEW_PORTAUDIO_SINK=ON -DOPT_BUILD_M17_DECODER=OFF -DOPT_BUILD_PERSEUS_SOURCE=ON -DOPT_BUILD_AUDIO_SOURCE=OFF -DOPT_BUILD_RFNM_SOURCE=ON -DOPT_BUILD_FOBOSSDR_SOURCE=ON -DUSE_BUNDLE_DEFAULTS=ON -DCMAKE_BUILD_TYPE=Release
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
working-directory: ${{runner.workspace}}/build
|
working-directory: ${{runner.workspace}}/build
|
||||||
@ -195,7 +195,7 @@ jobs:
|
|||||||
|
|
||||||
- name: Prepare CMake
|
- name: Prepare CMake
|
||||||
working-directory: ${{runner.workspace}}/build
|
working-directory: ${{runner.workspace}}/build
|
||||||
run: cmake -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 $GITHUB_WORKSPACE -DOPT_BUILD_PLUTOSDR_SOURCE=ON -DOPT_BUILD_BLADERF_SOURCE=ON -DOPT_BUILD_SDRPLAY_SOURCE=ON -DOPT_BUILD_LIMESDR_SOURCE=ON -DOPT_BUILD_AUDIO_SINK=OFF -DOPT_BUILD_PORTAUDIO_SINK=ON -DOPT_BUILD_NEW_PORTAUDIO_SINK=ON -DOPT_BUILD_M17_DECODER=OFF -DOPT_BUILD_PERSEUS_SOURCE=OFF -DOPT_BUILD_AUDIO_SOURCE=OFF -DOPT_BUILD_RFNM_SOURCE=ON -DOPT_BUILD_FOBOSSDR_SOURCE=ON -DUSE_BUNDLE_DEFAULTS=ON -DCMAKE_BUILD_TYPE=Release
|
run: cmake -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 $GITHUB_WORKSPACE -DOPT_BUILD_PLUTOSDR_SOURCE=ON -DOPT_BUILD_BLADERF_SOURCE=ON -DOPT_BUILD_SDRPLAY_SOURCE=ON -DOPT_BUILD_LIMESDR_SOURCE=ON -DOPT_BUILD_AUDIO_SINK=OFF -DOPT_BUILD_PORTAUDIO_SINK=ON -DOPT_BUILD_NEW_PORTAUDIO_SINK=ON -DOPT_BUILD_M17_DECODER=ON -DOPT_BUILD_PERSEUS_SOURCE=OFF -DOPT_BUILD_AUDIO_SOURCE=OFF -DOPT_BUILD_RFNM_SOURCE=ON -DOPT_BUILD_FOBOSSDR_SOURCE=ON -DUSE_BUNDLE_DEFAULTS=ON -DCMAKE_BUILD_TYPE=Release
|
||||||
|
|
||||||
- name: Build
|
- name: Build
|
||||||
working-directory: ${{runner.workspace}}/build
|
working-directory: ${{runner.workspace}}/build
|
||||||
|
@ -52,9 +52,22 @@ public:
|
|||||||
sampleTypes.define(wav::SAMP_TYPE_INT32, "Int32", wav::SAMP_TYPE_INT32);
|
sampleTypes.define(wav::SAMP_TYPE_INT32, "Int32", wav::SAMP_TYPE_INT32);
|
||||||
sampleTypes.define(wav::SAMP_TYPE_FLOAT32, "Float32", wav::SAMP_TYPE_FLOAT32);
|
sampleTypes.define(wav::SAMP_TYPE_FLOAT32, "Float32", wav::SAMP_TYPE_FLOAT32);
|
||||||
|
|
||||||
|
// Define retroactive buffer sizes
|
||||||
|
retroBufSizes.define(0, "None", 0);
|
||||||
|
retroBufSizes.define(1 << 18, "256MB", 1 << 18);
|
||||||
|
retroBufSizes.define(1 << 19, "512MB", 1 << 19);
|
||||||
|
retroBufSizes.define(1 << 20, "1GB", 1 << 20);
|
||||||
|
retroBufSizes.define(1 << 21, "2GB", 1 << 21);
|
||||||
|
retroBufSizes.define(1 << 22, "4GB", 1 << 22);
|
||||||
|
retroBufSizes.define(1 << 23, "8GB", 1 << 23);
|
||||||
|
retroBufSizes.define(1 << 24, "16GB", 1 << 24);
|
||||||
|
retroBufSizes.define(1 << 25, "32GB", 1 << 25);
|
||||||
|
retroBufSizes.define(1 << 26, "64GB", 1 << 26);
|
||||||
|
|
||||||
// Load default config for option lists
|
// Load default config for option lists
|
||||||
containerId = containers.valueId(wav::FORMAT_WAV);
|
containerId = containers.valueId(wav::FORMAT_WAV);
|
||||||
sampleTypeId = sampleTypes.valueId(wav::SAMP_TYPE_INT16);
|
sampleTypeId = sampleTypes.valueId(wav::SAMP_TYPE_INT16);
|
||||||
|
retroBufSizeId = retroBufSizes.nameId("None");
|
||||||
|
|
||||||
// Load config
|
// Load config
|
||||||
config.acquire();
|
config.acquire();
|
||||||
@ -70,6 +83,9 @@ public:
|
|||||||
if (config.conf[name].contains("sampleType") && sampleTypes.keyExists(config.conf[name]["sampleType"])) {
|
if (config.conf[name].contains("sampleType") && sampleTypes.keyExists(config.conf[name]["sampleType"])) {
|
||||||
sampleTypeId = sampleTypes.keyId(config.conf[name]["sampleType"]);
|
sampleTypeId = sampleTypes.keyId(config.conf[name]["sampleType"]);
|
||||||
}
|
}
|
||||||
|
if (config.conf[name].contains("retroBufferSize") && retroBufSizes.keyExists(config.conf[name]["retroBufferSize"])) {
|
||||||
|
retroBufSizeId = retroBufSizes.keyId(config.conf[name]["retroBufferSize"]);
|
||||||
|
}
|
||||||
if (config.conf[name].contains("audioStream")) {
|
if (config.conf[name].contains("audioStream")) {
|
||||||
selectedStreamName = config.conf[name]["audioStream"];
|
selectedStreamName = config.conf[name]["audioStream"];
|
||||||
}
|
}
|
||||||
@ -282,6 +298,14 @@ private:
|
|||||||
config.release(true);
|
config.release(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGui::LeftLabel("Retroactive buffer");
|
||||||
|
ImGui::FillWidth();
|
||||||
|
if (ImGui::Combo(CONCAT("##_recorder_retro_buf_size_", _this->name), &_this->retroBufSizeId, _this->retroBufSizes.txt)) {
|
||||||
|
config.acquire();
|
||||||
|
config.conf[_this->name]["retroBufferSize"] = _this->retroBufSizes.key(_this->retroBufSizeId);
|
||||||
|
config.release(true);
|
||||||
|
}
|
||||||
|
|
||||||
if (_this->recording) { style::endDisabled(); }
|
if (_this->recording) { style::endDisabled(); }
|
||||||
|
|
||||||
// Show additional audio options
|
// Show additional audio options
|
||||||
@ -566,11 +590,13 @@ private:
|
|||||||
|
|
||||||
OptionList<std::string, wav::Format> containers;
|
OptionList<std::string, wav::Format> containers;
|
||||||
OptionList<int, wav::SampleType> sampleTypes;
|
OptionList<int, wav::SampleType> sampleTypes;
|
||||||
|
OptionList<int64_t, int64_t> retroBufSizes;
|
||||||
FolderSelect folderSelect;
|
FolderSelect folderSelect;
|
||||||
|
|
||||||
int recMode = RECORDER_MODE_AUDIO;
|
int recMode = RECORDER_MODE_AUDIO;
|
||||||
int containerId;
|
int containerId;
|
||||||
int sampleTypeId;
|
int sampleTypeId;
|
||||||
|
int retroBufSizeId;
|
||||||
bool stereo = true;
|
bool stereo = true;
|
||||||
std::string selectedStreamName = "";
|
std::string selectedStreamName = "";
|
||||||
float audioVolume = 1.0f;
|
float audioVolume = 1.0f;
|
||||||
|
@ -23,6 +23,12 @@
|
|||||||
"start": 531000,
|
"start": 531000,
|
||||||
"end": 1602000
|
"end": 1602000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "160m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 1810000,
|
||||||
|
"end": 2000000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "120m SW broadcast",
|
"name": "120m SW broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
@ -35,6 +41,12 @@
|
|||||||
"start": 3200000,
|
"start": 3200000,
|
||||||
"end": 3400000
|
"end": 3400000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "80m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 3500000,
|
||||||
|
"end": 3800000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "75m SW Broadcast",
|
"name": "75m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
@ -47,12 +59,24 @@
|
|||||||
"start": 4750000,
|
"start": 4750000,
|
||||||
"end": 5060000
|
"end": 5060000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "60m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 5351500,
|
||||||
|
"end": 5366500
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "49m SW Broadcast",
|
"name": "49m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
"start": 5900000,
|
"start": 5900000,
|
||||||
"end": 6200000
|
"end": 6200000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "40m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 7000000,
|
||||||
|
"end": 7200000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "40m SW Broadcast",
|
"name": "40m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
@ -65,6 +89,12 @@
|
|||||||
"start": 9400000,
|
"start": 9400000,
|
||||||
"end": 9900000
|
"end": 9900000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "30m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 10100000,
|
||||||
|
"end": 10150000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "25m SW Broadcast",
|
"name": "25m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
@ -77,12 +107,24 @@
|
|||||||
"start": 13570000,
|
"start": 13570000,
|
||||||
"end": 13870000
|
"end": 13870000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "20m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 14000000,
|
||||||
|
"end": 14350000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "19m SW Broadcast",
|
"name": "19m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
"start": 15100000,
|
"start": 15100000,
|
||||||
"end": 15800000
|
"end": 15800000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "17m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 18068000,
|
||||||
|
"end": 18168000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "16m SW Broadcast",
|
"name": "16m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
@ -95,23 +137,65 @@
|
|||||||
"start": 18900000,
|
"start": 18900000,
|
||||||
"end": 19020000
|
"end": 19020000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "15m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 21000000,
|
||||||
|
"end": 21450000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "13m SW Broadcast",
|
"name": "13m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
"start": 21450000,
|
"start": 21450000,
|
||||||
"end": 21850000
|
"end": 21850000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "12m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 24890000,
|
||||||
|
"end": 24990000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "11m SW Broadcast",
|
"name": "11m SW Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
"start": 25670000,
|
"start": 25670000,
|
||||||
"end": 26100000
|
"end": 26100000
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "10m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 28000000,
|
||||||
|
"end": 29700000
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "FM Broadcast",
|
"name": "FM Broadcast",
|
||||||
"type": "broadcast",
|
"type": "broadcast",
|
||||||
"start": 87500000,
|
"start": 87500000,
|
||||||
"end": 108000000
|
"end": 108000000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "6m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 50000000,
|
||||||
|
"end": 52000000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "4m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 70000000,
|
||||||
|
"end": 70500000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "2m ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 144000000,
|
||||||
|
"end": 146000000
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "70cm ham band",
|
||||||
|
"type": "amateur",
|
||||||
|
"start": 430000000,
|
||||||
|
"end": 440000000
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user