Giter Club home page Giter Club logo

jvankatwijk / qt-dab Goto Github PK

View Code? Open in Web Editor NEW
276.0 31.0 63.0 462.7 MB

Qt-DAB, a general software DAB (DAB+) decoder with a (slight) focus on showing the signal

Home Page: http://www.sdr-j.tk

License: GNU General Public License v2.0

CMake 3.05% C++ 61.82% C 20.41% QMake 1.90% Shell 0.09% Makefile 12.11% HTML 0.59% OpenEdge ABL 0.02% Python 0.01%
dab-decoder dabplus sdrplay-devices airspy hackrf lime rtlsdr-dongle sdrplay sdrplay-rsp-devices adalm-pluto-sdr

qt-dab's People

Contributors

andimik avatar atsampson avatar firefox2100 avatar jvankatwijk avatar michaellass avatar michalleonborsuk avatar probonopd avatar russel avatar sjlongland avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qt-dab's Issues

Ubuntu needs qwt-qt5 as well

Please mention in the readme, that also this package should be installed in Ubuntu:

sudo apt-get install libqwt-qt5-dev

otherwise compiling will stop with the following error:

/usr/bin/ld: cannot find -lqwt-qt5

Send to rtltcp port?

Hi Jan,

Not a issue but a short question: Do you know how to send samples (sdr, raw or eti) to rtltcp for other programs on the same machine under Windows?

I thought about analysis with the very great DAB Player from Andreas Gsinn which has Inputs for DABstick, Airspy and Rtltcp, but not for files like your (also great) programs.

Sound

Actulal version from git has sound problems again, I have also old sdr-j .9985 and sound is ok.

Still unable to compile on RPI3

I have been unable to compile versions since late September, including latest.


oc_dab-processor.o moc_sample-reader.o moc_ofdm-decoder.o moc_fic-handler.o moc_fib-processor.o moc_mp2processor.o moc_mp4processor.o moc_faad-decoder.o moc_dab-data.o moc_data-processor.o moc_pad-handler.o moc_virtual-datahandler.o moc_tdc-datahandler.o moc_ip-datahandler.o moc_mot-data.o moc_audio-base.o moc_tii_table.o moc_iqdisplay.o moc_spectrum-handler.o moc_rtlsdr-handler.o moc_rtl-dongleselect.o moc_rtl_tcp_client.o qrc_resources.o -L/usr/lib/arm-linux-gnueabihf -lfftw3f -lusb-1.0 -ldl -lportaudio -lz -lsndfile -lsamplerate -lfaad /usr/lib/libqwt-qt5.so -lQtMultimedia -lQtGui -lQtNetwork -lQtCore -lpthread
/usr/bin/ld: cannot find -lQtMultimedia
collect2: error: ld returned 1 exit status
Makefile:273: recipe for target 'linux-bin/qt-dab-1.0-alpha' failed
make: *** [linux-bin/qt-dab-1.0-alpha] Error 1

I have tried every possible library path for all QWT, absolutely none work. I have installed all possibilities in turn from the software database.
I have started from scratch several times now following all instructions given to the letter.

RPI - Amendments of 21/09/2017 - epgdec.h and qdom.h

Hi Jan and other followers !

Attempting to compile the snapshot as at 21/09/2017.

I have commented out rtl-sdr and airspy to leave dabstick, and attempting cmake using Qt5 on Raspbian Stretch.

At around 56% of the subsequent make compilation. in module src/backend/data/motdatabuilder.cpp an error is generated as it is unable to include epgdec.h ( from includes/backend/data/epg ).

I added the required lines into my CMakeList.txt to include the directory and header. The includes file once read, itself found an error, that it could not include qdom.h, which is in QtXml package. I tried including a findpackage for QtXml at the start of my CMakeList.txt, but this command was rejected by cmake.

I am sure that this is my lack of knowledge of cmake. I would be really grateful of any advice about the coding required to get QtXml discoverable by "make" at the above point.

Thank you for any comments

Phil

Why not u8 (*.raw) as dump file type?

I converted an sdr file (s16le) to raw (u8) with

sox -e unsigned-integer -r 240000 -t raw -c 1 -b 16 /home/andreas/10c_dabmedia.sdr -t raw -e signed-integer -b 8 -r 240000 /home/andreas/10c_dabmedia.raw

Both are working in qt-dab and eti-frontend, indeed.

But I don't see any advantage in using sdr as the filesize is exactly 2x a raw file:

andreas@andiE535:~$ ls -l 10c_dabmedia.???
-rw-rw-r-- 1 andreas andreas 298197014 Apr 18 23:40 10c_dabmedia.raw
-rw-r--r-- 1 andreas andreas 596394028 Apr 17 18:45 10c_dabmedia.sdr

Maybe you can convince me to continue writing sdr files ;-)

Compiling on RPi3

Getting this error on make:

pi@raspberrypi:~/qt-dab $ make
g++ -c -pipe -flto -ffast-math -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DTECHNICAL_DATA -DMOT_DATA -DMSC_DATA__ -D__QUALITY -DHAVE_SPECTRUM -DHAVE_RTLSDR -DHAVE_RTL_TCP -DTII_ATTEMPT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -Isrc -Iincludes -Iincludes/ofdm -Iincludes/backend -Iincludes/backend/audio -Iincludes/backend/data -Iincludes/backend/data/journaline -Iincludes/output -Iincludes/various -Idevices -Idevices/rawfiles -Idevices/wavfiles -I/usr/local/include -I/usr/local/include -I/usr/include/qt4/qwt -I/usr/include/qt4/qwt -I/usr/include/qwt -Iincludes/scopes-qwt6 -Iincludes/scopes-qwt6 -Ioptional-scope -Idevices/rtlsdr-handler -Idevices/rtl_tcp -I../janSpul -I. -I. -o main.o main.cpp
In file included from radio.h:40:0,
from main.cpp:33:
includes/ofdm/ofdm-processor.h:38:26: fatal error: tii_detector.h: No such file or directory
#include "tii_detector.h"
^
compilation terminated.
Makefile:583: recipe for target 'main.o' failed
make: *** [main.o] Error 1

Raspberry Pi 3 Dropouts

DAB on the raspberry pi 3, is intermittent. I've had anywhere between 1 minute and 15 minutes audio before it just grinds to a halt. It appears that the CPU remains high at 60% yet no audio.

If you can direct me how to test and provide feedback, I will. No errors that I've seen. No crashes. Just a stop in audio.

I'm using a Nooelec NESDR SMART device. Not entirely convinced by it. But reviews say it's just as good as the RTL SDR dongle from rtlsdr.

Thanks
Simon

Prerequisites to get sound

Jvan, thanks for qt-dab!

I've managed to compile it on Debian Stretch (testing):

  • Qt4:
    • install libqwt-dev
    • qt-dab.pro: LIBS += -lqwt
    • QT_SELECT=4 qmake qt-dab.pro
    • make
  • Qt5:
    • install libqwt-qt5-dev
    • qt-dab.pro: LIBS += -lqwt-qt5
    • QT_SELECT=4 qmake qt-dab.pro
    • make

(just in case someone would need for reference)

Using dabstick, channels are found but I get no sound. RAW data can be saved, but not audio file. Technical info looks like:
wdrcosmo
What are minimal prerequisites to decode/play audio? (And what do these 4 horizontal bars mean?)

Thanks,
Andrey

qt5 on RPI

Hi Jan, I guess in the README we should add

sudo apt-get install qtbase5-dev

for RPI3 users otherwise there is a Qt5Core error

Save settings and volume slider

Hi,

I use the windows version and it works great. Can you add a save settings button>? Everytime I start then i have to assign again all the sound and dabstick settings. Also if I select audio output ASIO4ALL then the program crashes. And maybe add a volume slider so I can change the volume in the program instead change the main PC volume.

Furthermore, the GUI is kind of messy, too much info and not beautifull. You might can creat6e a expert and a normal GUI (simplified) setting. Also I dont like al the sepperate windows.
Resizing the current windows dont work, get rid of that option or make it work :)

It need a lot improvements but so far I like it. Keep up teh good work.

Text missing in file open/save window

Seems the texts in brackets in the "file open" or "file save" window are not displayed. See radio.cpp, lines 497, 1218, 1233, 1248, 1461 and 1496.

For example:

tr ("iq data (*.iq)"));

I also tried escaping, but then there is a compiler warning ...

warning: unknown escape sequence: ')'

slide show window

Hi,
Today I see slides show for first time, but new window always popup avery image change on top of all others apps, this is very annoying.
Regards

Can't compile

hello,
can't compile after yesterday update. Previously (5 days ago) used to work.
/tmp/ccoKIXXi.ltrans2.ltrans.o: In function RadioInterface::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)': :(.text+0x686): undefined reference toRadioInterface::showCoordinates(float, float)'
collect2: error: ld returned 1 exit status
Makefile:395: recipe for target 'linux-bin/qt-dab-0.999' failed

Just curious what it could be, where I'm doing wrong? Doing this on odroid (clone of Raspberry)

Build fail on Rawhide

I have Git master up-to-date as at 2017-02-14T07:53+00:00 and am using the CMake build. I am getting an error:

/home/russel/Repositories/Git/Forks/Qt_DAB/src/ofdm/ofdm-decoder.cpp:219:49: error: no ‘float ofdmDecoder::computeQuality(DSPCOMPLEX*)’ member function declared in class ‘ofdmDecoder’
 float ofdmDecoder::computeQuality (DSPCOMPLEX *v) {
                                                 ^

RTL-TCP port fixed to 1234...

Hi,

At time the RTL-TCP port is fixed to 1234... however this port can be in use in the server.

It's possible to support an user configurable port?

Thank you!

DAB stick not found with RTL2838

I get

DAB stick not found! Please use one with RTL2832U or similar chipset!

I tried running Qt-DAB as normal user and as root (to exclude the possibility of missing permissions).

This is my device:

me@host:~$ lsusb
Bus 002 Device 003: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
(...)

me@host:~$ lsmod
Module                  Size  Used by
ir_lirc_codec          16384  0
ir_xmp_decoder         16384  0
lirc_dev               20480  1 ir_lirc_codec
ir_sharp_decoder       16384  0
ir_mce_kbd_decoder     16384  0
ir_sanyo_decoder       16384  0
ir_sony_decoder        16384  0
ir_jvc_decoder         16384  0
ir_rc6_decoder         16384  0
ir_rc5_decoder         16384  0
ir_nec_decoder         16384  0
rtl2832_sdr            36864  0
videobuf2_vmalloc      16384  1 rtl2832_sdr
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         28672  1 rtl2832_sdr
videobuf2_core         36864  2 rtl2832_sdr,videobuf2_v4l2
v4l2_common            16384  2 rtl2832_sdr,videobuf2_v4l2
videodev              176128  4 rtl2832_sdr,v4l2_common,videobuf2_core,videobuf2_v4l2
media                  24576  1 videodev
r820t                  28672  1
rtl2832                28672  1
i2c_mux                16384  1 rtl2832
dvb_usb_rtl28xxu       36864  1
dvb_usb_v2             36864  1 dvb_usb_rtl28xxu
dvb_core              122880  2 rtl2832,dvb_usb_v2
rc_core                28672  14 ir_sharp_decoder,ir_xmp_decoder,lirc_dev,ir_lirc_codec,dvb_usb_rtl28xxu,ir_rc5_decoder,ir_nec_decoder,ir_sony_decoder,ir_mce_kbd_decoder,ir_jvc_decoder,dvb_usb_v2,ir_rc6_decoder,ir_sanyo_decoder
nvram                  16384  0
msr                    16384  0
gpio_ich               16384  0
(...)

Hide several Menu items when playing rawfiles

When a user plays a rawfile (sdr, iq or raw), then these Menu items don't make sense:

  1. Scan band
  2. VHF/L-Band switch
  3. Mode 1-4
  4. Channel
  5. in Technical Details: frequency

So you could set them inactive.

qmake qtdab.pro error

Hi,

I'm hoping that some could help with the error below?

Thanks

pi@raspberrypi:/qt-dab $ qmake qt-dab.pro
pi@raspberrypi:
/qt-dab $ make
g++ -c -pipe -flto -ffast-math -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DTECHNICAL_DATA -DMSC_DATA__ -DTRY_EPG -DHAVE_SPECTRUM -DHAVE_DABSTICK -DHAVE_RTL_TCP -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4 -I. -I. -Isrc -Iincludes -Iincludes/ofdm -Iincludes/backend -Iincludes/backend/audio -Iincludes/backend/data -Iincludes/backend/data/epg -Iincludes/backend/data/journaline -Iincludes/output -Iincludes/various -Isrc/input -Isrc/input/rawfiles -Isrc/input/wavfiles -I/usr/local/include -I/usr/include/qt5/qwt -Iincludes/scopes-qwt6 -Iincludes/scopes-qwt6 -Ioptional-scope -I/home/jan/rtl-sdr/include -Isrc/input/dabstick -Isrc/input/rtl_tcp -I. -I. -o radio.o radio.cpp
In file included from optional-scope/spectrum-handler.h:42:0,
from radio.cpp:71:
./ui_scopewidget.h:19:22: fatal error: qwt_plot.h: No such file or directory
#include "qwt_plot.h"
^
compilation terminated.
Makefile:591: recipe for target 'radio.o' failed
make: *** [radio.o] Error 1

Cancel writing (of dump or audio) is not possible

Pressing "Save audio" or "dump to raw file" opens a file dialog. But if you then press cancel it does not cancel, but writes a file ".wav" resp. ".sdr" anyway. You can only stop recording by pressing "WRITING" again.

Would it be possible to set the text "WRITING" in red color (see audioDumpButton and the dumpButton)?

This issue is also valid for eti-stuff.

dabstick autogain value not restored

The "Autogain" setting for dabstick is saved in ~/.qt-dab.ini but is not restored on next invocation of qt-dab.

The value saved looks like: "autogain=autogain on"

The software is running on Debian GNU/linux (testing) amd64 with Nooelec nesdr. qt-dab was downloaded 9th Mar 17.

N.B. It might be helpful to default this setting to "on" as the receiver does very little with autogain off.

compilation error

I have compilation error:

[100%] Linking CXX executable qt-dab-0.999
/tmp/ccYqk3rV.ltrans5.ltrans.o: In function mp4Processor::~mp4Processor()': <artificial>:(.text+0x123): undefined reference to faadDecoder::~faadDecoder()'
/tmp/ccYqk3rV.ltrans5.ltrans.o: In function mp4Processor::~mp4Processor()': <artificial>:(.text+0x2953): undefined reference to faadDecoder::~faadDecoder()'
/tmp/ccYqk3rV.ltrans5.ltrans.o: In function mp4Processor::handle_aacFrame(unsigned char*, short, unsigned char, unsigned char, unsigned char, unsigned char, bool*)': <artificial>:(.text+0x45ba): undefined reference to faadDecoder::MP42PCM(unsigned char, unsigned char, short, unsigned char, unsigned char*, short)'
/tmp/ccYqk3rV.ltrans11.ltrans.o: In function mp4Processor::mp4Processor(RadioInterface*, short, RingBuffer<short>*)': <artificial>:(.text+0x1a1e): undefined reference to faadDecoder::faadDecoder(RadioInterface*, RingBuffer*)'
:(.text+0x1bb7): undefined reference to faadDecoder::~faadDecoder()' /tmp/ccYqk3rV.ltrans20.ltrans.o:(.data.rel.ro+0x3c8): undefined reference to faadDecoder::~faadDecoder()'
/tmp/ccYqk3rV.ltrans20.ltrans.o:(.data.rel.ro+0x3d0): undefined reference to `faadDecoder::~faadDecoder()'
collect2: error: ld returned 1 exit status

I hope it's helpful.

Path of Image Files

Hi,

I noticed that there are several image files (like slide11.jpg slide22.jpg slide91.jpg slide94.png ) that are provided by the radio stations and shown by qt-dab. Most of them are in the same directory like were the binaries are located (linux-bin folder). However I also found one image in my home directory (most likely because I started qt-dab from there using ~/Programms/qt-dab/linux-bin/qt-dab-0.999 ). Most of these images are corrupt, therefore these files might be leftovers for cases were I had to kill the program (e.g. because I lost the connection to my Raspberry). Anyway I would strongly prefer if these (temporary) images would be placed in some temporary folder (like /tmp/qt-dab ) and not all-over the place. Or is this a side effect of my usage of the -T option to analyse the frame drops?

Empty service language

Hi,

I think that FIG0/5 Service Language is not correctly implemented because always shows nothing.

cmake Error

I have the following error using cmake:
cmake .. -DDABSTICK=ON -DRTLTCP=ON
make
[ 76%] Building CXX object CMakeFiles/qt-dab-0.998.dir/optional-scope/spectrum-handler.cpp.o /home/snoopy/qt-dab/optional-scope/spectrum-handler.cpp: In constructor ‘spectrumhandler::spectrumhandler(RadioInterface*, QSettings*, RingBuffer<std::complex<float> >*, RingBuffer<std::complex<float> >*)’: /home/snoopy/qt-dab/optional-scope/spectrum-handler.cpp:88:19: error: ‘class QwtPlotCurve’ has no member named ‘setOrientation’ spectrumCurve -> setOrientation (Qt::Horizontal); ^ /home/snoopy/qt-dab/optional-scope/spectrum-handler.cpp: In member function ‘void spectrumhandler::ViewSpectrum(double*, double*, double, int32_t)’: /home/snoopy/qt-dab/optional-scope/spectrum-handler.cpp:202:19: error: ‘class QwtPlotCurve’ has no member named ‘setSamples’ spectrumCurve -> setSamples (X_axis, Y1_value, displaySize); ^ make[2]: *** [CMakeFiles/qt-dab-0.998.dir/optional-scope/spectrum-handler.cpp.o] Fehler 1 make[1]: *** [CMakeFiles/qt-dab-0.998.dir/all] Fehler 2 make: *** [all] Fehler 2

CMAKE_INSTALL_PREFIX not honoured

I use the CMake build and set -DCMAKE_INSTALL_PREFIX for the build area. However install is going to /usr/local/bin even though this override destination is set.

No longer compiling on RPi3

/usr/include/c++/4.9/atomic:642:15: error: expected ‘;’ at end of member declaration
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:642:17: error: ‘noexcept’ does not name a type
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:647:7: error: ‘constexpr’ does not name a type
constexpr atomic(__integral_type __i) noexcept : __base_type(__i) { }
^
/usr/include/c++/4.9/atomic:647:7: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11
/usr/include/c++/4.9/atomic:660:14: error: expected ‘;’ at end of member declaration
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:660:16: error: ‘noexcept’ does not name a type
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:661:15: error: expected ‘;’ at end of member declaration
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:661:17: error: ‘noexcept’ does not name a type
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:666:7: error: ‘constexpr’ does not name a type
constexpr atomic(__integral_type __i) noexcept : __base_type(__i) { }
^
/usr/include/c++/4.9/atomic:666:7: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11
/usr/include/c++/4.9/atomic:679:14: error: expected ‘;’ at end of member declaration
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:679:16: error: ‘noexcept’ does not name a type
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:680:15: error: expected ‘;’ at end of member declaration
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:680:17: error: ‘noexcept’ does not name a type
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:685:7: error: ‘constexpr’ does not name a type
constexpr atomic(__integral_type __i) noexcept : __base_type(__i) { }
^
/usr/include/c++/4.9/atomic:685:7: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11
/usr/include/c++/4.9/atomic:698:14: error: expected ‘;’ at end of member declaration
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:698:16: error: ‘noexcept’ does not name a type
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:699:15: error: expected ‘;’ at end of member declaration
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:699:17: error: ‘noexcept’ does not name a type
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:704:7: error: ‘constexpr’ does not name a type
constexpr atomic(__integral_type __i) noexcept : __base_type(__i) { }
^
/usr/include/c++/4.9/atomic:704:7: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11
/usr/include/c++/4.9/atomic:717:14: error: expected ‘;’ at end of member declaration
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:717:16: error: ‘noexcept’ does not name a type
atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:718:15: error: expected ‘;’ at end of member declaration
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:718:17: error: ‘noexcept’ does not name a type
~atomic() noexcept = default;
^
/usr/include/c++/4.9/atomic:723:7: error: ‘constexpr’ does not name a type
constexpr atomic(__integral_type __i) noexcept : __base_type(__i) { }
^
/usr/include/c++/4.9/atomic:723:7: note: C++11 ‘constexpr’ only available with -std=c++11 or -std=gnu++11
/usr/include/c++/4.9/atomic:731:19: error: ‘char16_t’ was not declared in this scope
struct atomic<char16_t> : public atomic_char16_t
^
/usr/include/c++/4.9/atomic:731:27: error: template argument 1 is invalid
struct atomic<char16_t> : public atomic_char16_t
^
/usr/include/c++/4.9/atomic:732:5: error: expected class-name before ‘{’ token
{
^
/usr/include/c++/4.9/atomic:750:19: error: ‘char32_t’ was not declared in this scope
struct atomic<char32_t> : public atomic_char32_t
^
/usr/include/c++/4.9/atomic:750:27: error: template argument 1 is invalid
struct atomic<char32_t> : public atomic_char32_t
^
/usr/include/c++/4.9/atomic:751:5: error: expected class-name before ‘{’ token
{
^
/usr/include/c++/4.9/atomic:771:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:776:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:780:66: error: expected initializer before ‘noexcept’
atomic_flag_clear_explicit(atomic_flag* __a, memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:785:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:789:46: error: expected initializer before ‘noexcept’
atomic_flag_test_and_set(atomic_flag* __a) noexcept
^
/usr/include/c++/4.9/atomic:793:55: error: expected initializer before ‘noexcept’
atomic_flag_test_and_set(volatile atomic_flag* __a) noexcept
^
/usr/include/c++/4.9/atomic:797:39: error: expected initializer before ‘noexcept’
atomic_flag_clear(atomic_flag* __a) noexcept
^
/usr/include/c++/4.9/atomic:801:48: error: expected initializer before ‘noexcept’
atomic_flag_clear(volatile atomic_flag* __a) noexcept
^
/usr/include/c++/4.9/atomic:808:50: error: expected initializer before ‘noexcept’
atomic_is_lock_free(const atomic<_ITp>* __a) noexcept
^
/usr/include/c++/4.9/atomic:813:59: error: expected initializer before ‘noexcept’
atomic_is_lock_free(const volatile atomic<_ITp>* __a) noexcept
^
/usr/include/c++/4.9/atomic:818:46: error: expected initializer before ‘noexcept’
atomic_init(atomic<_ITp>* __a, _ITp __i) noexcept;
^
/usr/include/c++/4.9/atomic:822:55: error: expected initializer before ‘noexcept’
atomic_init(volatile atomic<_ITp>* __a, _ITp __i) noexcept;
^
/usr/include/c++/4.9/atomic:827:24: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:833:24: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:838:69: error: expected initializer before ‘noexcept’
atomic_load_explicit(const atomic<_ITp>* __a, memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:844:23: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:850:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:856:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:864:27: error: expected initializer before ‘noexcept’
memory_order __m2) noexcept
^
/usr/include/c++/4.9/atomic:872:27: error: expected initializer before ‘noexcept’
memory_order __m2) noexcept
^
/usr/include/c++/4.9/atomic:880:29: error: expected initializer before ‘noexcept’
memory_order __m2) noexcept
^
/usr/include/c++/4.9/atomic:888:29: error: expected initializer before ‘noexcept’
memory_order __m2) noexcept
^
/usr/include/c++/4.9/atomic:894:47: error: expected initializer before ‘noexcept’
atomic_store(atomic<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:899:56: error: expected initializer before ‘noexcept’
atomic_store(volatile atomic<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:904:42: error: expected initializer before ‘noexcept’
atomic_load(const atomic<_ITp>* __a) noexcept
^
/usr/include/c++/4.9/atomic:909:51: error: expected initializer before ‘noexcept’
atomic_load(const volatile atomic<_ITp>* __a) noexcept
^
/usr/include/c++/4.9/atomic:914:50: error: expected initializer before ‘noexcept’
atomic_exchange(atomic<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:919:59: error: expected initializer before ‘noexcept’
atomic_exchange(volatile atomic<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:925:29: error: expected initializer before ‘noexcept’
_ITp* __i1, _ITp __i2) noexcept
^
/usr/include/c++/4.9/atomic:935:29: error: expected initializer before ‘noexcept’
_ITp* __i1, _ITp __i2) noexcept
^
/usr/include/c++/4.9/atomic:945:31: error: expected initializer before ‘noexcept’
_ITp* __i1, _ITp __i2) noexcept
^
/usr/include/c++/4.9/atomic:955:31: error: expected initializer before ‘noexcept’
_ITp* __i1, _ITp __i2) noexcept
^
/usr/include/c++/4.9/atomic:969:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:975:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:981:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:987:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:993:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:999:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1005:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1011:27: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1017:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1023:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1028:58: error: expected initializer before ‘noexcept’
atomic_fetch_add(__atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1033:67: error: expected initializer before ‘noexcept’
atomic_fetch_add(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1038:58: error: expected initializer before ‘noexcept’
atomic_fetch_sub(__atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1043:67: error: expected initializer before ‘noexcept’
atomic_fetch_sub(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1048:58: error: expected initializer before ‘noexcept’
atomic_fetch_and(__atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1053:67: error: expected initializer before ‘noexcept’
atomic_fetch_and(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1058:57: error: expected initializer before ‘noexcept’
atomic_fetch_or(__atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1063:66: error: expected initializer before ‘noexcept’
atomic_fetch_or(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1068:58: error: expected initializer before ‘noexcept’
atomic_fetch_xor(__atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1073:67: error: expected initializer before ‘noexcept’
atomic_fetch_xor(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
^
/usr/include/c++/4.9/atomic:1081:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1087:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1092:66: error: expected initializer before ‘noexcept’
atomic_fetch_add(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
^
/usr/include/c++/4.9/atomic:1097:57: error: expected initializer before ‘noexcept’
atomic_fetch_add(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
^
/usr/include/c++/4.9/atomic:1103:43: error: expected initializer before ‘noexcept’
ptrdiff_t __d, memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1109:28: error: expected initializer before ‘noexcept’
memory_order __m) noexcept
^
/usr/include/c++/4.9/atomic:1114:66: error: expected initializer before ‘noexcept’
atomic_fetch_sub(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
^
/usr/include/c++/4.9/atomic:1119:57: error: expected initializer before ‘noexcept’
atomic_fetch_sub(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
^
In file included from includes/backend/fic-handler.h:34:0,
from dab-processor.h:37,
from radio.h:40,
from main.cpp:33:
includes/backend/fib-processor.h:94:4: warning: anonymous type with no linkage used to declare variable ‘ ensemble_Descriptor’ with linkage
} ensemble_Descriptor;
^
main.cpp: In function ‘int main(int, char**)’:
main.cpp:63:17: warning: unused variable ‘tracing’ [-Wunused-variable]
bool tracing = false;
^
Makefile:584: recipe for target 'main.o' failed
make: *** [main.o] Error 1

make fails to compile ofdm-decoder

get this error when running make (Ubuntu 16)

src/ofdm/ofdm-decoder.cpp: In member function ‘void ofdmDecoder::decodeFICblock(int32_t)’:
src/ofdm/ofdm-decoder.cpp:253:1: warning: label ‘fftlabel’ defined but not used [-Wunused-label]
fftlabel:
^~~~~~~~
src/ofdm/ofdm-decoder.cpp:263:1: warning: label ‘toBitsLabel’ defined but not used [-Wunused-label]
toBitsLabel:
^~~~~~~~~~~
src/ofdm/ofdm-decoder.cpp:289:1: warning: label ‘handlerLabel’ defined but not used [-Wunused-label]
handlerLabel:
^~~~~~~~~~~~
src/ofdm/ofdm-decoder.cpp: In member function ‘void ofdmDecoder::decodeMscblock(int32_t)’:
src/ofdm/ofdm-decoder.cpp:317:1: warning: label ‘fftLabel’ defined but not used [-Wunused-label]
fftLabel:
^~~~~~~~
src/ofdm/ofdm-decoder.cpp:322:1: warning: label ‘toBitsLabel’ defined but not used [-Wunused-label]
toBitsLabel:
^~~~~~~~~~~
src/ofdm/ofdm-decoder.cpp:336:1: warning: label ‘handlerLabel’ defined but not used [-Wunused-label]
handlerLabel:;
^~~~~~~~~~~~
src/ofdm/ofdm-decoder.cpp: At global scope:
src/ofdm/ofdm-decoder.cpp:246:5: warning: ‘cnt’ defined but not used [-Wunused-variable]
int cnt = 0;
^~~
Makefile:603: recipe for target 'ofdm-decoder.o' failed
make: *** [ofdm-decoder.o] Error 1

Make fails on qwt error

Almost got all the QT/Qwt stuff compiled except ld fails looking for a file called -lqwt-qt5.
I can find no reference online to this file. What is it?

The app. does work if I don't include spectrum, so i guess its todo with that.

/usr/bin/ld: cannot find -lqwt-qt5
collect2: error: ld returned 1 exit status
Makefile:377: recipe for target 'linux-bin/qt-dab-0.998' failed
make: *** [linux-bin/qt-dab-0.998] Error 1

2nd open file dialog

I'm using Qt-DAB mainly for prerecorded files.

But it seems (obviously since some versions) that when I chose a raw/iq/sdr file at the start the same window appears again and I have again to specify the file name.

missing file

I can't compile from git:

CMake Error at CMakeLists.txt:506 (add_executable):
Cannot find source file:

./input/virtual-input.cpp

Regards

Protection level +1 in console window

In fib-processor.cpp I found protlevel 0, 1, 2, and 3, but the best protection level is 1A, not 0A.

That's why an EPG or TPEG (Slovenia, Vienna, Italy) shows

data: protlevel = 2

instead of 3.

So you should add 1 for the output.

Hint: The output in the "Technical Data" window is - on the other hand - correct for all audio services.

No longer compiles on RPI3

Latest release refuses to compile, previous releases were able to compile.


-Iincludes/scopes-qwt6 -Ioptional-scope -Iinput/dabstick -Iinput/rtl_tcp -Iincludes/backend/data/epg -I. -I. -o rtl_tcp_client.o input/rtl_tcp/rtl_tcp_client.cpp
g++ -c -pipe -flto -ffast-math -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DTECHNICAL_DATA -DMOT_DATA -DMSC_DATA__ -D__QUALITY -DHAVE_SPECTRUM -DHAVE_DABSTICK -DHAVE_RTL_TCP -DTRY_EPG -DQT_NO_DEBUG -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4 -I. -I. -Isrc -Iincludes -Iincludes/ofdm -Iincludes/backend -Iincludes/backend/audio -Iincludes/backend/data -Iincludes/backend/data/journaline -Iincludes/output -Iincludes/various -Iinput -Iinput/rawfiles -Iinput/wavfiles -I/usr/local/include -I/usr/local/include -I/usr/include/qt4/qwt -I/usr/include/qt5/qwt -I/usr/include/qt4/qwt -I/usr/include/qwt -Iincludes/scopes-qwt6 -Iincludes/scopes-qwt6 -Ioptional-scope -Iinput/dabstick -Iinput/rtl_tcp -Iincludes/backend/data/epg -I. -I. -o epgdec.o src/backend/data/epg/epgdec.cpp
src/backend/data/epg/epgdec.cpp: In member function ‘void CEPGDecoder::decode(const std::vector&, const QString&)’:
src/backend/data/epg/epgdec.cpp:46:59: error: ‘fopen’ was not declared in this scope
FILE *epgFile = fopen (name. toLatin1 (). data (), "w");
^
src/backend/data/epg/epgdec.cpp:48:17: error: ‘stderr’ was not declared in this scope
fprintf (stderr, "filename = %s\n", name. toLatin1 (). data ());
^
src/backend/data/epg/epgdec.cpp:48:70: error: ‘fprintf’ was not declared in this scope
fprintf (stderr, "filename = %s\n", name. toLatin1 (). data ());
^
src/backend/data/epg/epgdec.cpp:50:23: error: ‘fclose’ was not declared in this scope
fclose (epgFile);
^
src/backend/data/epg/epgdec.cpp:53:17: error: ‘stderr’ was not declared in this scope
fprintf (stderr, "cannot open %s\n", name. toLatin1 (). data ());
^
src/backend/data/epg/epgdec.cpp:53:71: error: ‘fprintf’ was not declared in this scope
fprintf (stderr, "cannot open %s\n", name. toLatin1 (). data ());
^
src/backend/data/epg/epgdec.cpp: In function ‘QDomElement element(QDomDocument&, const tag_length_value&)’:
src/backend/data/epg/epgdec.cpp:332:27: warning: comparison is always false due to limited range of data type [-Wtype-limits]
#define invalidTag(x) ((x < 0) || (x > 50))
^
src/backend/data/epg/epgdec.cpp:335:6: note: in expansion of macro ‘invalidTag’
if (invalidTag (tlv. tag)) {
^
Makefile:1171: recipe for target 'epgdec.o' failed
make: *** [epgdec.o] Error 1

fft view

Hi

I have suggestion for fft view to change end lever form -40 to -30 when dabstic is used.

Regards

Building on Debian using CMake

Whilst the CMake build works fine on Fedora Rawhide, it fails on Debian Sid. The problem is that Sid does not have Qt5Declarative. Instead it seems to have Qt5Quick. The line:

find_package (Qt5Declarative REQUIRED)

works fine on Rawhide, but has to be replaced with:

find_package (Qt5Quick REQUIRED)

to get a build on Sid.

Slideshows don't work in Slovenia and Slovakia

I found out that the slideshows in qt-dab and eti-stuff don't work at all in Slovenija and in Slovakia, whereas dablin_gtk or XPADxpert (and the DABPlayer from Andreas Gsinn under Windows) show them.
xpad_10d

BTW: In Vienna it worked under qt-dab well on the same Laptop, see screenshot: .
11d_vienna_slideshow

According to XPADxpert it's in the same subchannel.

See the (zipped) eti-file http://andimik.bplaced.net/temp/10d_lang2.eti.zip , please load in eti-backend, tune to the English speaking "Slo Int Radio SI" (other programs didn't have slideshows at that time and the sample is too short).

Channel is not updated in ~/.qt-dab.ini

I'm using qt-dab with an dabstick on my RaspberryPi.
If I start the gui, change the channel, listen to some music and then quit the program by clicking the "quit" button I get

ofdm decoder is closing down now
Termination started
closed
Segmentation fault

I don't know if the segmentation fault is the reason why the channel in the ~/.qt-dab.ini is not being updated. Of course I can update the channel in the file manually, however I would prefer if the last used channel is automatically saved. The other values (device and soundchannel) were properly updated.

Slideshows in appimage not working

Seems the slideshows in the appimage do not work. I only get a very small window without the slide.

grafik

instead of the slide. The console output is

going to show picture img01.jpg
going to write file /tmp/qt-pictures/img01.jpg

The same release (d293dbf) built with Qt-Creator works well.

I guess this is the same problem as under Windows:

going to show picture
setGeometry: Unable to set geometry 5x13+363+124 on QWidgetWindow/'QLabelClassWindow'.
Resulting geometry: 120x13+363+124 (frame: 8, 31, 8, 8, custom margin: 0, 0, 0, 0, minimum size:
0x0, maximum size: 16777215x16777215).

grafik

Fedora Rawhide, Qt 5.9, and not building

Fedora Rawhide has now updated to Qt 5.9 beta 3. This introduces that it is not possible to build with the current CMakeFiles.txt. The problem appears to be the naming of the Qt5Declarative package which is no longer present. As with Debian Sid, the name is now Qt5Quick. So with:

#if(LSB_ID_SHORT STREQUAL "Debian")
	find_package(Qt5Quick REQUIRED)
#else()
#	find_package (Qt5Declarative REQUIRED)
#endif()

things built again. I am not sure what a proper solution to this is.

Stop/Pause Playback?

Maybe I'm missing an obvious solution, but is there a way to stop the playback of music without closing the complete program (I assume that setting the gain in the extra windows to 0 would still use resources?)
Instead of adding an extra button one could maybe think about toggling the "start" button to a "stop" button while music is being played?
(Just as a side question, what is the difference between the "Start" and the "Scan band" button?)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.