Skip to content

Commit

Permalink
almost ready to test 6.9
Browse files Browse the repository at this point in the history
  • Loading branch information
JvanKatwijk committed Nov 30, 2024
1 parent bc132da commit d32610a
Show file tree
Hide file tree
Showing 16 changed files with 187 additions and 161 deletions.
38 changes: 25 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,42 +7,54 @@
-------------------------------------------------------------------------

------------------------------------------------------------------------
Qt5 to Qt6 Qt5-DAB-6.9 and (Qt6-DAB-6.9)
From Qt5 to Qt6: Qt5-DAB-6.9 and Qt6-DAB-6.9
------------------------------------------------------------------------

![6.9](/res/read_me/qt-dab-6.9.png?raw=true)

Since Qt6 is there for quite a while, it is inevitable to move over
to Qt6. Unfortunately, AppImages are built with "old" library versions,
and AppImages are and will be compiled with Qt5 for a while.
to Qt6. Unfortunately, AppImages require "old" library versions,
so AppImages are and will be compiled with Qt5 for a while.
So, we need to have a sourcetree that can be compiled with Qt5 and Qt6,
and indeed, the sources for the 6.9 Version, both compilable using Qt5
and Qt6.

The qwt ibrary version - provided by the Fedora system - is for both the Qt5 and
Qt6 versions 6.20, the Qt6 version Qt6.8.
While preparing the sources for Qt6, some more changes were made, so
the version number was increased and is 6.9.

While the Qt6 based version for Linux works fine, there are some issues
Fedora 41 - my development ennvironment - supports both Qt5 and Qt6
with Qwt 6.20 as qt library.
The Qt6 based version for Linux works fine, there are some issues
with the Windows versions, probably caused by problems with some
incomaptible dll's.
The windows versions for Qt_DAB 6.9 are therefore still compiled with
Qt4 (as is the AppImage).

The sourcetree contains the sources for the 6.9 Version, both compilable using Qt5
and Qt6.
Aaprt from the modifications required for Qt6 - mosty the Qt_audio soundhandler - some more modifications were made, most of them on my "todo" list.
Some of them are clearly visible, others are "under the hood"

* Qt_DAB 6.9 has - apart from the possibility to use either Qt5 or Qt6 - a few modifications: The strength meters moved from the "technical Widget" to the main widget, as did the "mot" indicator.
* the audio strength meter and the "mot" indicator are placed on the main widget, which seems to make more sense

* the Spectrum widget has a "BER" indicator for the FIC segments, this indicator shows the ratio between bits that are modified in the Viterbi decoder, vs the total amount of bits. As such this indicator gives a good idea on the real quality of decoding, the picture below show a value of 0.012, indicating that (on average) 12 bits per 1000 were wrong and needed correction when decoding the FIC data.

* the Quality indicator on the spectrum widget shows no the Modulation quality as
defined in ETSI TR 101 290 V1.3.1.
* the Quality indicator on the spectrum widget shows now the Modulation quality as defined in ETSI TR 101 290 V1.3.1.

* having the "BER" as measure for the quality of the decoding, some more experiments with decoders (i.e. the mapping from the result of the DPSK in the carriers in the FFT bins to bits). Three of them are based on work of others (see the tooltip).

* There were questions why not to restrict the visible services in the list to audioservices only. The configuration and control widget has a selector for that.

* Since there was an additional selector on the configuration and control widget, the layout of the widget chanhed a little.

* Audio output handling using Qt-Audio has now different implementations for use under Qt5 or Qt6.
* the dxDisplay now shows more data on the transmitters that are identified in the current channel.

![6.9](/res/read_me/new-dxDisplay.png?raw=true)

* if the "dxMode" is "on" the tii data, as appearing on the dxDisplay, is now written - extended with the coordinates of the transmitters - in a ".csv" file.

![6.9](/res/read_me/tiifile.png?raw=true)

Experimental versions of the Qt-DAB-qt5-6.9 (an installer for W64 and an AppImage for Linux) are included in the 6.8 release

![6.9](/res/read_me/qt-dab-6.9.png?raw=true)
------------------------------------------------------------------------
About Qt-DAB-6.8
-------------------------------------------------------------------------
Expand Down
4 changes: 3 additions & 1 deletion includes/dab-constants.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,6 @@ typedef void *HINSTANCE;
#endif

#define MAX_VITERBI 127

#define NR_TAPS 512

#ifdef __WITH_DOUBLES__
Expand All @@ -69,6 +68,9 @@ typedef std::complex<int16_t> complex16;
# define M_PI 3.14159265358979323846 /* pi */
#endif

#ifndef M_PI_2
#define M_PI_2 (M_PI / 2.0f)
#endif
constexpr float RAD_PER_DEGREE = (float)(M_PI / 180.0);

enum AudioFlags : uint32_t {
Expand Down
9 changes: 6 additions & 3 deletions qt-dab-6.9/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,8 @@ add_definitions (-D__THREADED_BACKEND__) # uncomment for use for an RPI
../includes/ofdm/dab-config.h
../includes/ofdm/fib-table.h
../includes/ofdm/fic-handler.h
../includes/ofdm/tii-detector.h
../includes/ofdm/tii-detector-1.h
../includes/ofdm/tii-detector-2.h
../includes/ofdm/timesyncer.h
../includes/ofdm/estimator.h
../includes/protection/protTables.h
Expand Down Expand Up @@ -346,7 +347,8 @@ add_definitions (-D__THREADED_BACKEND__) # uncomment for use for an RPI
../src/ofdm/freq-interleaver.cpp
../src/ofdm/fib-decoder.cpp
../src/ofdm/fic-handler.cpp
../src/ofdm/tii-detector.cpp
../src/ofdm/tii-detector-1.cpp
../src/ofdm/tii-detector-2.cpp
../src/ofdm/timesyncer.cpp
../src/ofdm/estimator.cpp
../src/protection/protTables.cpp
Expand Down Expand Up @@ -460,7 +462,8 @@ add_definitions (-D__THREADED_BACKEND__) # uncomment for use for an RPI
../includes/ofdm/freqsyncer.h
../includes/ofdm/fib-decoder.h
../includes/ofdm/fic-handler.h
../includes/ofdm/tii-detector.h
../includes/ofdm/tii-detector-1.h
../includes/ofdm/tii-detector-2.h
../includes/ofdm/estimator.h
../includes/backend/msc-handler.h
../includes/backend/backend.h
Expand Down
Loading

0 comments on commit d32610a

Please sign in to comment.