Closed andimik closed 2 years ago
I have never seen this issue on my antenna signals and test stream I have. In theory there should be no difference for the audio detection between input devices. In other words it should be reproducible also from raw file. This would be actually the only possibility for me to reproduce if you can share some raw files, longer better. Can you share some recordings?
Additionally, could you try apply the attached patch and check what number is printed in command line in faulty case? Is the number always the same?
Let me try on another computer in the next days.
One additional question. Is this issue new for 1.1 or you have observed this also in previous version?
Good question. Let me test it.
no, 1e3a6c5 did not help in 1.1+
There is only a little chance for audio.
Switching back to 1.0:
git reset --hard 87aa017
There is still the same issue, no sound, no SLS, no DLS for the most attempts. Only a few attempts with audio.
Back to 1.1 I've applied the patch file you sent me.
For those with no audio I get lots of F0
(I guess that is for HE-AACv1 services) or E8
(all HE-AACv2 services) or 20
,
For working audio 68
(HE-AACv2), 70
(HE-AACv1), 20
(HE-AACv1 32 kHz mono) or 60
(don't know what that stands for)
(20, with SLS and DLS, but no sound)
So, 20
is not unique and could be either sound or no sound (but with SLS and DLS)
The service Radio Student has normal audio in Qt-DAB, so this is not related to the multiplex. (Hint: the red bar means mono)
I found another hint, maybe that could help you to identify it.
For sound, the error rate is 0
for no sound there are CRC errors only.
Here is the log for Austrian's bundesmux, I clicked each service for around 5 seconds.
Remark: all other tools (Qt-DAB, welle.io, Qirx, etc) are working with all audio services.
Could you download this 150 MB raw file (recorded with AbracaDABra) and test it on your machine? (BTW: the constellation diagram of this recording looks very poor compared to live, don't know if this is another bug)
Thanks for the recording, I will try next week. It seems that there is a problem with CRC, but not clear why, because it seems that the signal is good enough. Can you also copy text from ensemble information for good and bad case? And I assume that with https://github.com/KejPi/AbracaDABra/commit/1e3a6c5aa601dcceb84427f28aaa83c45806b8f4 there is either no aac format detected or correct format. No longer wrong format, can you confirm?
I tried another laptop with the same Ubuntu 22.04 and there it works fine.
So I reinstalled all necessary packages, but no luck.
Later in the afternoon I will purge and install them again.
Update: The Windows version works well on the same laptop where I have problems under Ubuntu 22.04. So it's not related to the tool itself and seems to be a local issue on my computer under Ubuntu only.
I also tried the appimage under Ubuntu, same result.
I just need to investigate, if one of the packages (needed for e.g. dablin
, ODR-DabMod
and eti-tools
, which I have installed in addition to my other PC) causes that issue.
Therefore, I close this issue unless I find out what causes the incompatibility.
I found out that it might has to do with 48 kHz sampling rate.
Because all (!) stations with 32 kHz are working all the time.
Found XPAD app 2
HE-AAC 32 kHz mono
Output SR = 32000, channels = 2
Unmuting audio
I tried the following muxes
Mux | all services ok? | content |
---|---|---|
TRT Turkey | yes, all ok | no SPI, only 48 kHz |
ERT Greece | partly | only 48 kHz |
DAB Italia | partly | only 48 kHz |
Bundesmux Germany | partly | only 48 kHz |
RAS 10D Südtirol | nearly all | only 48 kHz |
RAS 10B Südtirol | some | only 48 kHz |
Mux 1 Slovenia | some, all 32 kHz | 32 and 48 kHz |
Mux 2E Slovenia | partly | only 48 kHz |
Mux 2W Slovenia | partly | only 48 kHz |
Bundesmux Austria | some | only 48 kHz |
Salisbury UK | all 32 kHz | DAB 48 kHz and DAB+ 32 kHz |
$ dpkg -l | grep portau
ii libportaudio2:amd64 19.6.0-1.1 amd64 Portable audio I/O - shared library
ii libportaudiocpp0:amd64 19.6.0-1.1 amd64 Portable audio I/O C++ bindings - shared library
ii portaudio19-dev:amd64 19.6.0-1.1 amd64 Portable audio I/O - development files
Further attempts:
I tried to unselect portaudio in cmake and even uninstall portaudio (= as this is not used under Windows).
And I built it with option cmake .. -DUSE_FDK_AAC=ON
.
Still 100% audio loss on lots of 48 kHz programs (some work from time to time). 32 kHz programs always work.
More and more I feel this is really a AbracaDABra bug and not a misleading constellation on my system.
I would say the problem is not the audio decoder or audio output. The numbers printed by experimental patch show problems with CRC (bit 7 is set). It will be probably in libdabsdr, I will look at this next week, I think there is nothing wrong with your system and there is not much you can do to fix it. But in any case, thank you for all your reports a trials. Still any recording you can share is highly appreciated!
Remark: Above tests were done with prerecorded eti files which were modulated as raw file using ODR-DabMod. So it has nothing to do with reception.
If the issue can be reproduced using files and ODR-DabMod then I should be able to reproduce the problem too. I have ODR-DABMOD on my Mac.
If you could send me another patch which prints more information in the console, then we can locate it where the bug comes from.
Because I fear only I can reproduce it on my machine according to my hardware or/and software packages.
For me I can reproduce it on a raw file as well, but you won't see a difference.
Please find attached the debug version of libdabsdr with some messages that might help me to understand what is going on. This library was built under Ubuntu 22.04, apart from debug messages it has a small fix that might solve the problem. This was the only potential problem I was able to find. Please let me know your results, I have tried to reproduce the issue with the recording you have shared and with other recordings from the forum as well as on my antenna signals (most of the services @ 48kHz) but it always works on Mac.
Thanks, it did not help, but attached you find the console output. I have clicked through all my stations I can receive, 5 seconds each.
Well, I do not know what the problem could be. Obviously there is a lot of errors that is why you do not have audio, the question is why they are there. I do not understand why the problem is not reproducible from raw file recorded using IQ dump (Ensemble info -> Dump raw data). Can you confirm that if you dump the stream in AbracaDABra and then you play it via raw file device the problem is not present any more? I can see huge frequency offset in some of the screenshots you have shared (~13kHz). Can you confirm this offset also for the log you shared? What was the signal quality? And are you using SW AGC?
I do not understand why the problem is not reproducible from raw file recorded using IQ dump
I told you: This is only related to my Ubuntu installation on that particular laptop. I still need to find out what could be the reason.
Is it my soundcard? Also tried an external one. Is it the kernel? Also tried a previous kernel. Is it the one of the software packages? Also tried reinstall of all required packages.
$ sudo apt-get install --reinstall git cmake build-essential mesa-common-dev libusb-dev librtlsdr-dev libfaad2 mpg123 libmpg123-dev libfaad-dev portaudio19-dev qt6-base-dev qt6-multimedia-dev libqt6svg6-dev rtl-sdr
Next try is to use the appimage under a live system (where I still need to install the rtl-sdr driver)
I would exclude sound card and kernel. If the input stream is correct (this can be checked by dumping it and playing it from file) then it is inside the application related to live playback. The dump takes input data and stores them to file as they are coming from rtldsr device. If it is playing from file correctly then it means that data are correct and the problem is caused in the application during the processing. The fact that you see a lot of RS/CRC errors means that this happens before audio decoder so there is no problem with audio decoder, audio output and sound card. One idea would be the slow CPU (what is the CPU load when AbracaDABra is running?) the other is big frequency offset that I could not test.
Please try to set
#define RTLSDR_DOC_ENABLE 0
on rtlsdrinput.h line 10.
This is the last idea I have to explain difference between rtlsdr input and raw file input. Otherwise there is no difference apart from CPU load caused by handling USB input.
I am writing these lines now under Ubuntu 22.04 live CD on the same laptop.
Booting from ISO file and chose try Ubuntu
.
Then I had to install the rtl-driver:
sudo add-apt-repository universe
sudo apt-get install libusb-dev librtlsdr-dev rtl-sdr
then
sudo apt-get install fuse libfuse2
in order to get the appimage running. Then as root:
echo 0 > /sys/module/usbcore/parameters/usbfs_memory_mb
It still shows the same issue.
It has nothing to do with reception (= because same issue for raw files, same with generated raw files from ETI input). No changing when disable the software AGC (= because same issue for raw files).
Your suggestions don't seem reasonable.
So my conclusion is the problem needs to be found in your code. Please try to focus on 48 kHz/32 kHz.
If it is playing from file correctly
No, it does not. When I first wrote the issue I tested it with a raw file where - by chance - all were in 32 kHz, so please ignore the sentence
And it seems, rawfiles are not affected.
because it's wrong.
I just need to investigate, if one of the packages (needed for e.g. dablin, ODR-DabMod and eti-tools, which I have installed in addition to my other PC) causes that issue.
No, see above. Clean Live CD without any other tools installed.
Let me summarize my current understanding of the issue - please correct whatever is wrong:
Open points / questions - please answer:
OK, I have downloaded the files and have tested them several times (around 10 per radio service).
Service: Radio PROGLAS SID = 0xE22AA1, SCIdS = 0
Service: DAB plus TOP40 SID = 0xE22FB5, SCIdS = 0
Service: Radio BEAT SID = 0xE22F31, SCIdS = 0
Service: CRo-KARLOVY VARY SID = 0xE22E0B, SCIdS = 0
Service: RADIO 1 SID = 0xE22339, SCIdS = 0
Service: Radio 7 SID = 0xE22FB9, SCIdS = 0
Service: Signal Radio SID = 0xE22511, SCIdS = 0
They are in AAC-LC 48 kHz.
Service: RADIO UKRAJINA SID = 0xE22F70, SCIdS = 0
This is the only one in HE-AAC. All others are in AAC-LC. All are in 48 kHz.
Ensemble:
0x2003 RTI cz DAB1 [ RTI cz ] ECC = 0xE2, UTC 120 min, INT = 1, alarm announcements = 1
Services (8):
0x2339 RADIO 1 [ RADIO 1 ] ECC = 0xE2, PTY: 15 (static)
AudioComponent (primary), SCIdS: 0, Label: 'RADIO 1' [ 'RADIO 1' ], ASCTy: 0x3F (AAC)
SubChId: 3, Language: 0, StartCU: 484, NumCU: 88, EEP 2-A, Coderate: 3/8, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2511 Signal Radio [ Signal ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Signal Radio' [ 'Signal' ], ASCTy: 0x3F (AAC)
SubChId: 7, Language: 0, StartCU: 776, NumCU: 88, EEP 2-A, Coderate: 3/8, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2AA1 Radio PROGLAS [ PROGLAS ] ECC = 0xE2, PTY: 20 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio PROGLAS' [ 'PROGLAS' ], ASCTy: 0x3F (AAC)
SubChId: 4, Language: 0, StartCU: 0, NumCU: 132, EEP 1-A, Coderate: 1/4, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2E0B CRo-KARLOVY VARY [ R-KVARY ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-KARLOVY VARY' [ 'R-KVARY' ], ASCTy: 0x3F (AAC)
SubChId: 1, Language: 0, StartCU: 352, NumCU: 132, EEP 1-A, Coderate: 1/4, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F31 Radio BEAT [ BEAT ] ECC = 0xE2, PTY: 11 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio BEAT' [ 'BEAT' ], ASCTy: 0x3F (AAC)
SubChId: 2, Language: 0, StartCU: 264, NumCU: 88, EEP 2-A, Coderate: 3/8, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F70 RADIO UKRAJINA [ UKRAJINA ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'RADIO UKRAJINA' [ 'UKRAJINA' ], ASCTy: 0x3F (AAC)
SubChId: 6, Language: 0, StartCU: 704, NumCU: 72, EEP 1-A, Coderate: 1/4, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2FB5 DAB plus TOP40 [ TOP40 ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'DAB plus TOP40' [ 'TOP40' ], ASCTy: 0x3F (AAC)
SubChId: 13, Language: 0, StartCU: 132, NumCU: 132, EEP 1-A, Coderate: 1/4, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2FB9 Radio 7 [ Radio 7 ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio 7' [ 'Radio 7' ], ASCTy: 0x3F (AAC)
SubChId: 5, Language: 0, StartCU: 572, NumCU: 132, EEP 1-A, Coderate: 1/4, Bitrate: 88kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
Service: Classic Praha SID = 0xE2244A, SCIdS = 0
Service: HITRADIO CITY SID = 0xE22032, SCIdS = 0
Service: RADIO BONTON SID = 0xE22430, SCIdS = 0
Service: Radio BEAT SID = 0xE22F31, SCIdS = 0
Service: BLANIK PRAHA SID = 0xE2233C, SCIdS = 0
Service: Expres FM SID = 0xE2203B, SCIdS = 0
Service: ZET SID = 0xE2210E, SCIdS = 0
Service: PIGY RADIO SID = 0xE22FB7, SCIdS = 0
Service: EVROPA 2 SID = 0xE22204, SCIdS = 0
Service: FREKVENCE 1 SID = 0xE22205, SCIdS = 0
Service: Cesky Impuls SID = 0xE22FB4, SCIdS = 0
Service: Radio Dechovka SID = 0xE224B2, SCIdS = 0
Service: ROCKZONE SID = 0xE22445, SCIdS = 0
Service: Radio Impuls SID = 0xE22203, SCIdS = 0
All of them are in 48 kHz, all either HE-AACv1 or v2, no AAC-LC, no 32 kHz in the ensemble
Ensemble:
0x2002 CRa DAB+ [ CRa ] ECC = 0xE2, UTC 120 min, INT = 1, alarm announcements = 0
Services (14):
0x2032 HITRADIO CITY [ HITRADIO ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'HITRADIO CITY' [ 'HITRADIO' ], ASCTy: 0x3F (AAC)
SubChId: 10, Language: 0, StartCU: 600, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x203B Expres FM [ ExpresFM ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Expres FM' [ 'ExpresFM' ], ASCTy: 0x3F (AAC)
SubChId: 11, Language: 0, StartCU: 664, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x210E ZET [ ZET ] ECC = 0xE2, PTY: 17 (static)
AudioComponent (primary), SCIdS: 0, Label: 'ZET' [ 'ZET' ], ASCTy: 0x3F (AAC)
SubChId: 7, Language: 0, StartCU: 456, NumCU: 40, EEP 2-A, Coderate: 3/8, Bitrate: 40kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2203 Radio Impuls [ Impuls ] ECC = 0xE2, PTY: 1 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio Impuls' [ 'Impuls' ], ASCTy: 0x3F (AAC)
SubChId: 1, Language: 0, StartCU: 40, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2204 EVROPA 2 [ EVROPA 2 ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'EVROPA 2' [ 'EVROPA 2' ], ASCTy: 0x3F (AAC)
SubChId: 6, Language: 0, StartCU: 376, NumCU: 80, EEP 2-A, Coderate: 3/8, Bitrate: 80kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2205 FREKVENCE 1 [ F1 ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'FREKVENCE 1' [ 'F1' ], ASCTy: 0x3F (AAC)
SubChId: 5, Language: 0, StartCU: 296, NumCU: 80, EEP 2-A, Coderate: 3/8, Bitrate: 80kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x233C BLANIK PRAHA [ BLANIK ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'BLANIK PRAHA' [ 'BLANIK' ], ASCTy: 0x3F (AAC)
SubChId: 9, Language: 0, StartCU: 536, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2430 RADIO BONTON [ BONTON ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'RADIO BONTON' [ 'BONTON' ], ASCTy: 0x3F (AAC)
SubChId: 0, Language: 0, StartCU: 0, NumCU: 40, EEP 2-A, Coderate: 3/8, Bitrate: 40kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2445 ROCKZONE [ ROCKZONE ] ECC = 0xE2, PTY: 11 (static)
AudioComponent (primary), SCIdS: 0, Label: 'ROCKZONE' [ 'ROCKZONE' ], ASCTy: 0x3F (AAC)
SubChId: 2, Language: 0, StartCU: 104, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x244A Classic Praha [ Classic ] ECC = 0xE2, PTY: 13 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Classic Praha' [ 'Classic' ], ASCTy: 0x3F (AAC)
SubChId: 12, Language: 0, StartCU: 728, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x24B2 Radio Dechovka [ Dechovka ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio Dechovka' [ 'Dechovka' ], ASCTy: 0x3F (AAC)
SubChId: 4, Language: 0, StartCU: 232, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F31 Radio BEAT [ BEAT ] ECC = 0xE2, PTY: 11 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Radio BEAT' [ 'BEAT' ], ASCTy: 0x3F (AAC)
SubChId: 13, Language: 0, StartCU: 792, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2FB4 Cesky Impuls [ CeskyImp ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'Cesky Impuls' [ 'CeskyImp' ], ASCTy: 0x3F (AAC)
SubChId: 3, Language: 0, StartCU: 168, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2FB7 PIGY RADIO [ PIGY ] ECC = 0xE2, PTY: 18 (static)
AudioComponent (primary), SCIdS: 0, Label: 'PIGY RADIO' [ 'PIGY' ], ASCTy: 0x3F (AAC)
SubChId: 8, Language: 0, StartCU: 496, NumCU: 40, EEP 2-A, Coderate: 3/8, Bitrate: 40kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
Service: CRo-VLTAVA SID = 0xE2232D, SCIdS = 0
Service: CRo-RADIOZURNAL SID = 0xE2232F, SCIdS = 0
Service: CRo-C.BUDEJOVICE SID = 0xE2250D, SCIdS = 0
Service: CRo-RZ SPORT SID = 0xE22F2C, SCIdS = 0
Service: UKRAJINSKE-RADIO SID = 0xE22FE0, SCIdS = 0
Service: CRo-PARDUBICE SID = 0xE2280C, SCIdS = 0
Service: CRo-LIBEREC SID = 0xE22706, SCIdS = 0
Service: CRo-DAB PRAHA SID = 0xE22F1A, SCIdS = 0
Service: CRo-POHODA SID = 0xE22F1B, SCIdS = 0
Service: CRo-PLZEN SID = 0xE22608, SCIdS = 0
Service: CRo-REGION SID = 0xE2243F, SCIdS = 0
Service: CRo-WAVE SID = 0xE22F23, SCIdS = 0
Service: CRo-JAZZ SID = 0xE22F27, SCIdS = 0
Service: CRo-DVOJKA SID = 0xE2232E, SCIdS = 0
Service: CRo-JUNIOR SID = 0xE22F25, SCIdS = 0
Service: CRo-DDUR SID = 0xE22F26, SCIdS = 0
Service: CRo-PLUS SID = 0xE22424, SCIdS = 0
Service: UKRAJINSKE-RADIO SID = 0xE22FE0, SCIdS = 0
18:52:18.488239 [D] : => ps_flag=0, dac_rate=0, sbr_flag=1, aac_channel_mode=0 18:52:18.488277 [D] : => HE-AAC 32 kHz mono
It's in 32 kHz, I get DLS, but no sound, although your tool does NOT have any AU CRC errors ...
With Qt-DAB I can listen to it.
Ensemble:
0x2005 CRo DAB+ [ CRo DAB+ ] ECC = 0xE2, UTC 120 min, INT = 1, alarm announcements = 0
Services (17):
0x232D CRo-VLTAVA [ R-VLTAVA ] ECC = 0xE2, PTY: 7 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-VLTAVA' [ 'R-VLTAVA' ], ASCTy: 0x3F (AAC)
SubChId: 3, Language: 0, StartCU: 112, NumCU: 72, EEP 2-A, Coderate: 3/8, Bitrate: 72kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x232E CRo-DVOJKA [ R-DVOJKA ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-DVOJKA' [ 'R-DVOJKA' ], ASCTy: 0x3F (AAC)
SubChId: 2, Language: 0, StartCU: 64, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x232F CRo-RADIOZURNAL [ R-ZURNAL ] ECC = 0xE2, PTY: 3 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-RADIOZURNAL' [ 'R-ZURNAL' ], ASCTy: 0x3F (AAC)
SubChId: 1, Language: 0, StartCU: 0, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2424 CRo-PLUS [ R-PLUS ] ECC = 0xE2, PTY: 2 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-PLUS' [ 'R-PLUS' ], ASCTy: 0x3F (AAC)
SubChId: 4, Language: 0, StartCU: 184, NumCU: 40, EEP 2-A, Coderate: 3/8, Bitrate: 40kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x243F CRo-REGION [ R-REGION ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-REGION' [ 'R-REGION' ], ASCTy: 0x3F (AAC)
SubChId: 9, Language: 0, StartCU: 472, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x250D CRo-C.BUDEJOVICE [ R-CB ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-C.BUDEJOVICE' [ 'R-CB' ], ASCTy: 0x3F (AAC)
SubChId: 16, Language: 0, StartCU: 656, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2608 CRo-PLZEN [ R-PLZEN ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-PLZEN' [ 'R-PLZEN' ], ASCTy: 0x3F (AAC)
SubChId: 12, Language: 0, StartCU: 608, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2706 CRo-LIBEREC [ R-LBC ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-LIBEREC' [ 'R-LBC' ], ASCTy: 0x3F (AAC)
SubChId: 19, Language: 0, StartCU: 704, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x280C CRo-PARDUBICE [ R-PCE ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-PARDUBICE' [ 'R-PCE' ], ASCTy: 0x3F (AAC)
SubChId: 21, Language: 0, StartCU: 752, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F1A CRo-DAB PRAHA [ R-DAB PH ] ECC = 0xE2, PTY: 10 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-DAB PRAHA' [ 'R-DAB PH' ], ASCTy: 0x3F (AAC)
SubChId: 10, Language: 0, StartCU: 520, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F1B CRo-POHODA [ R-POHODA ] ECC = 0xE2, PTY: 9 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-POHODA' [ 'R-POHODA' ], ASCTy: 0x3F (AAC)
SubChId: 11, Language: 0, StartCU: 568, NumCU: 40, EEP 2-A, Coderate: 3/8, Bitrate: 40kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F23 CRo-WAVE [ R-WAVE ] ECC = 0xE2, PTY: 15 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-WAVE' [ 'R-WAVE' ], ASCTy: 0x3F (AAC)
SubChId: 5, Language: 0, StartCU: 224, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F25 CRo-JUNIOR [ R-JUNIOR ] ECC = 0xE2, PTY: 18 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-JUNIOR' [ 'R-JUNIOR' ], ASCTy: 0x3F (AAC)
SubChId: 6, Language: 0, StartCU: 288, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F26 CRo-DDUR [ R-DDUR ] ECC = 0xE2, PTY: 14 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-DDUR' [ 'R-DDUR' ], ASCTy: 0x3F (AAC)
SubChId: 7, Language: 0, StartCU: 336, NumCU: 72, EEP 2-A, Coderate: 3/8, Bitrate: 72kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F27 CRo-JAZZ [ R-JAZZ ] ECC = 0xE2, PTY: 24 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-JAZZ' [ 'R-JAZZ' ], ASCTy: 0x3F (AAC)
SubChId: 8, Language: 0, StartCU: 408, NumCU: 64, EEP 2-A, Coderate: 3/8, Bitrate: 64kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2F2C CRo-RZ SPORT [ R-SPORT ] ECC = 0xE2, PTY: 4 (static)
AudioComponent (primary), SCIdS: 0, Label: 'CRo-RZ SPORT' [ 'R-SPORT' ], ASCTy: 0x3F (AAC)
SubChId: 24, Language: 0, StartCU: 800, NumCU: 48, EEP 2-A, Coderate: 3/8, Bitrate: 48kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
0x2FE0 UKRAJINSKE-RADIO [ UKR-R ] ECC = 0xE2, PTY: 3 (static)
AudioComponent (primary), SCIdS: 0, Label: 'UKRAJINSKE-RADIO' [ 'UKR-R' ], ASCTy: 0x3F (AAC)
SubChId: 25, Language: 0, StartCU: 848, NumCU: 16, EEP 2-A, Coderate: 3/8, Bitrate: 16kbps
UserApp 1/1: Label: '' [ '' ], UAType: 0x2 (SlideShow), X-PAD AppTy: 12, DSCTy: 0x3C (MOT), DG: 0, Data (2) [0C3C]
it happens on one of your Linux PC, the other is without problem although both are running Ubuntu 22.04
I tried 3 different PCs with Ubuntu 22.04, on one other I also had problems, the only thing what I did is to reinstall libdrm-dev
, then it worked. But no idea if it had to do with THIS issue.
it can be reproduced on both rtlsdr input as well as on raw filer input
yes
it seems that 32kHz services are always working while 48kHz services fail
Initially yes, but see above, Ukrainian radio was silent with 32 kHz.
On the other hand I had SWR live reception from Germany, all 48 kHz were playing, but the only 32 kHz not ...
it can be reproduces on more raw files, not specific to single raw file
yes, not related to any specific file. I tried around 50 different raw files including live signals from satellite (which were then converted into raw)
not related to Ubuntu configuration, issue can be reproduced on clean Live system using released AppImage
yes.
what CPU is in the laptop that is affected by the problem?
AMD® A8-4500m apu with radeon(tm) hd graphics × 4
I don't know it exactly by heart, but I am sure, my others are Intel CPUs.
$ lsb_release -a
LSB Version: core-11.1.0ubuntu4-noarch:security-11.1.0ubuntu4-noarch
Distributor ID: Ubuntu
Description: Ubuntu 22.04 LTS
Release: 22.04
Codename: jammy
$ uname -r
5.15.0-40-generic
any other observations that I missed?
I can listen to all radio programms with Qt-DAB, dablin, and other tools. No problem there.
SuperframeFilter: Superframe sync succeeded after 4 frame(s)
EnsemblePlayer: format: HE-AAC v2, 48 kHz Stereo @ 64 kBit/s
AACDecoder: using decoder 'FAAD2'
SDLOutput: using audio buffer of 192000 bytes
SDLOutput: audio opened; driver name: pulseaudio, freq: 48000, channels: 2, size: 18432, samples: 2304, silence: 0x00, output: 32bit float
Well, I also tried to build it with
cmake .. -DUSE_FDKAAC=ON
but there is a build error at the very end (100%)
/usr/bin/ld: CMakeFiles/AbracaDABra.dir/audiodecoder.cpp.o: in function `AudioDecoder::~AudioDecoder()':
audiodecoder.cpp:(.text+0x32): undefined reference to `NeAACDecClose'
/usr/bin/ld: CMakeFiles/AbracaDABra.dir/audiodecoder.cpp.o: in function `AudioDecoder::stop()':
audiodecoder.cpp:(.text+0x14a): undefined reference to `NeAACDecClose'
/usr/bin/ld: CMakeFiles/AbracaDABra.dir/audiodecoder.cpp.o: in function `AudioDecoder::initAACDecoder()':
audiodecoder.cpp:(.text+0x11be): undefined reference to `NeAACDecClose'
/usr/bin/ld: audiodecoder.cpp:(.text+0x11c3): undefined reference to `NeAACDecOpen'
/usr/bin/ld: audiodecoder.cpp:(.text+0x11d5): undefined reference to `NeAACDecGetCapabilities'
/usr/bin/ld: audiodecoder.cpp:(.text+0x11e6): undefined reference to `NeAACDecGetCurrentConfiguration'
/usr/bin/ld: audiodecoder.cpp:(.text+0x1208): undefined reference to `NeAACDecSetConfiguration'
/usr/bin/ld: audiodecoder.cpp:(.text+0x1231): undefined reference to `NeAACDecInit2'
/usr/bin/ld: CMakeFiles/AbracaDABra.dir/audiodecoder.cpp.o: in function `AudioDecoder::processAAC(QByteArray*)':
audiodecoder.cpp:(.text+0x1377): undefined reference to `NeAACDecDecode'
/usr/bin/ld: CMakeFiles/AbracaDABra.dir/audiodecoder.cpp.o: in function `AudioDecoder::initAACDecoder() [clone .cold]':
audiodecoder.cpp:(.text.unlikely+0xc15): undefined reference to `NeAACDecGetErrorMessage'
collect2: error: ld returned 1 exit status
make[2]: *** [gui/CMakeFiles/AbracaDABra.dir/build.make:677: gui/AbracaDABra] Error 1
make[1]: *** [CMakeFiles/Makefile2:99: gui/CMakeFiles/AbracaDABra.dir/all] Error 2
make: *** [Makefile:91: all] Error 2
Could you try to fix that first and then I'll try the fdkaac?
define RTLSDR_DOC_ENABLE 0
Done, but no changing.
I have also tried ccmake
and switched OFF all cmake options which ccmake
finds. No changing.
FDK-AAC issue should be fixed now.
Please try with attached library linux_x86_64_1.1.2.tar.gz
This is my last idea - it this is not helping I will probably give it up until I have some way to reproduce the problem :-(
Wow, progress!
Now it works for all station as long as I don't select a station with a different sampling rate.
For example I first select all 48 kHz services then they play all perfectly, but the first 32 kHz breaks it.
Important: Then all (!) following stations (48 and 32 kHz) have no audio (but SLS and DLS works) any more. You need to restart the tool.
Your 5A plays 100% (also RADIO UKRAJINA). All on 7A work, but on 12C I have selected UKRAJINSKE-RADIO at the end, which is in 32 kHz (no audio, but SLS and DLS work). And then all others won't have audio any more.
Log:
After the start I have chosen a 48 kHz station
=== MCI complete
23:41:39.748916 [I] : Superframe SYNC :-)
23:41:39.748978 [D] : AU header: 0x70
23:41:39.749022 [D] : => ps_flag=0, dac_rate=1, sbr_flag=1, aac_channel_mode=1
23:41:39.749070 [D] : => HE-AAC 48 kHz stereo
HE-AAC 48 kHz stereo
Output SR = 48000, channels = 2
Unmuting audio
Then after selecting a 32 kHz service no audio:
Muting... [available 2880 samples]
Found XPAD app 2
23:41:47.326193 [I] : RS detected uncorrectable errors
23:41:47.332030 [I] : RS detected uncorrectable errors
23:41:47.333064 [I] : RS detected uncorrectable errors
23:41:47.334088 [I] : RS detected uncorrectable errors
23:41:47.335090 [I] : Superframe SYNC :-)
23:41:47.335110 [D] : AU header: 0x20
23:41:47.335150 [D] : => ps_flag=0, dac_rate=0, sbr_flag=1, aac_channel_mode=0
23:41:47.335197 [D] : => HE-AAC 32 kHz mono
HE-AAC 32 kHz mono
Output SR = 32000, channels = 2
Back to a 48 kHz station, still no audio, but no error on the console.
Found XPAD app 2
23:42:53.327055 [I] : RS detected uncorrectable errors
23:42:53.333329 [I] : Superframe SYNC :-)
23:42:53.333350 [D] : AU header: 0x68
23:42:53.333401 [D] : => ps_flag=1, dac_rate=1, sbr_flag=1, aac_channel_mode=0
23:42:53.333455 [D] : => HE-AAC v2 48 kHz stereo
Thanks for the report. Now it looks more like an issue with AAC decoder or audio output. I would like to ask you to do another trial with the attached patch. Please apply it on 056b5d6e7ad4005931186472f848d92d93d5341e using default FAAD decoder.
After you compile the code I would like to ask you to follow these steps:
Preparation
Test
The application will print a lot of logs during the test, please copy it and share. Additionally it will create 2 files called audio.raw and audio.aac in the folder where the executable is. Please share these files too.
ok, first patch these two files (BTW: I had to learn how to patch 2 instead of 1 files ...)
~/apps/AbracaDABra/gui$ patch < /tmp/logAAC_audio2file.patch
patching file audiodecoder.cpp
patching file audiodecoder.h
Then cmake
without any options and make
afterwards.
~/apps/AbracaDABra/build$ cmake ..
make
delete the ini
file.
rm ~/.config/AbracaDABra/AbracaDABra.ini
Start the tool, stop the scan, go to expert settings and chose RAW. Close the app. Restart the app. Scan 12C (does not matter). Play a 48 kHz station, then switch to the only 32 kHz audio.
This is the log file from console. audio.zip abracadabra_12c.log
You can apply the patch using git apply command. I am sorry my instructions were probably misleading. Please correct my if I am wrong, but it seems that you used the DABSDR library from repository not the one that I shared recently. Could you please redo the test with linux_x86_64_1.1.2.tar.gz
Just to be clear:
git apply logAAC_audio2file.patch
mkdir build && cd build && cmake .. && make
Thanks and sorry for additional request.
Oops, yes, you are right. I forgot to use the new library.
Will repeat it in the evening.
this is the log:
Switched between CRo-C.BUDEJOVICE, then UKRAJINSKE-RADIO and back to CRo-C.BUDEJOVICE
$ ./gui/AbracaDABra
Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
Service: CRo-VLTAVA SID = 0xE2232D, SCIdS = 0
Service: CRo-RADIOZURNAL SID = 0xE2232F, SCIdS = 0
Service: CRo-C.BUDEJOVICE SID = 0xE2250D, SCIdS = 0
Service: CRo-RZ SPORT SID = 0xE22F2C, SCIdS = 0
Service: UKRAJINSKE-RADIO SID = 0xE22FE0, SCIdS = 0
Service: CRo-PARDUBICE SID = 0xE2280C, SCIdS = 0
Service: CRo-LIBEREC SID = 0xE22706, SCIdS = 0
Service: CRo-DAB PRAHA SID = 0xE22F1A, SCIdS = 0
Service: CRo-POHODA SID = 0xE22F1B, SCIdS = 0
Service: CRo-PLZEN SID = 0xE22608, SCIdS = 0
Service: CRo-REGION SID = 0xE2243F, SCIdS = 0
Service: CRo-WAVE SID = 0xE22F23, SCIdS = 0
Service: CRo-JAZZ SID = 0xE22F27, SCIdS = 0
Service: CRo-DVOJKA SID = 0xE2232E, SCIdS = 0
Service: CRo-JUNIOR SID = 0xE22F25, SCIdS = 0
Service: CRo-DDUR SID = 0xE22F26, SCIdS = 0
Service: CRo-PLUS SID = 0xE22424, SCIdS = 0
=== MCI complete
Found XPAD app 2
22:25:39.590610 [I] : RS detected uncorrectable errors
22:25:39.595825 [I] : RS detected uncorrectable errors
22:25:39.597295 [I] : RS detected uncorrectable errors
22:25:39.598717 [I] : Superframe SYNC :-)
22:25:39.598735 [D] : AU header: 0x68
22:25:39.598765 [D] : => ps_flag=1, dac_rate=1, sbr_flag=1, aac_channel_mode=0
22:25:39.598803 [D] : => HE-AAC v2 48 kHz stereo
Decoder: AAC header 0x68
HE-AAC v2 48 kHz stereo
Output SR = 48000, channels = 2
Decoder: error = 0 | bytesconsumed = 199 | samples = 0
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 209 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 208 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 220 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 220 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 210 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 198 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 194 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 241 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 211 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 238 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 247 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 200 | samples = 3840
Unmuting audio
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 190 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 256 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 197 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 230 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 221 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 204 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 231 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 197 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 237 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 214 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 190 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 233 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 225 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 200 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 245 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 203 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 236 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 218 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 190 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 197 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 256 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 195 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 204 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 229 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 215 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 233 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 215 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 235 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 198 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 200 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 225 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 223 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 216 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 236 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 196 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 194 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 241 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 216 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 188 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 215 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 223 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 210 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 230 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 211 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 214 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 219 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 215 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 209 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 238 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 203 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 234 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 211 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 195 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 242 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 194 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 247 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 204 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 236 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 208 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 197 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 243 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 203 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 210 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 235 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 203 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 197 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 249 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 213 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 191 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 192 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 254 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 206 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 243 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 215 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 237 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 196 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 241 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 208 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 211 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 230 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 217 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 238 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 193 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 231 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 210 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 212 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 192 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 216 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 233 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 206 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 251 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 191 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 211 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 239 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 198 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 243 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 204 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 206 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 242 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 200 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 198 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 251 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 199 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 214 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 190 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 207 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 240 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 224 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 230 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 194 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 214 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 190 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 193 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 249 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 206 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 201 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 245 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 202 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 204 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 250 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 194 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 200 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 245 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 203 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 189 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 251 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 208 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 216 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 244 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 188 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 185 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 249 | samples = 3840
Decoder: AAC header 0x68
Decoder: error = 0 | bytesconsumed = 214 | samples = 3840
Muting... [available 2880 samples]
Found XPAD app 2
22:25:47.585185 [I] : RS detected uncorrectable errors
22:25:47.590606 [I] : Superframe SYNC :-)
22:25:47.590646 [D] : AU header: 0x20
22:25:47.590679 [D] : => ps_flag=0, dac_rate=0, sbr_flag=1, aac_channel_mode=0
22:25:47.590724 [D] : => HE-AAC 32 kHz mono
Decoder: AAC header 0x20
HE-AAC 32 kHz mono
Output SR = 32000, channels = 2
Decoder: error = 0 | bytesconsumed = 113 | samples = 0
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 98 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 120 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 91 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 105 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 106 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 123 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 88 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 110 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 101 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 97 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 114 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 110 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 101 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 120 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 91 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 114 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 97 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 115 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 96 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 117 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 94 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 115 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 96 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 133 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 78 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 126 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 85 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 126 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 85 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 100 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 111 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 132 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 79 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 120 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 91 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 124 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 87 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 123 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 88 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 102 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 109 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 116 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 95 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 103 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 108 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 114 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 97 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 112 | samples = 3840
Decoder: AAC header 0x20
Decoder: error = 0 | bytesconsumed = 99 | samples = 3840
Decoder: void AudioDecoder::handleAudioOutputFAAD(const NeAACDecFrameInfo&, const uint8_t*) 368640: 0 < 7680
Found XPAD app 2
22:25:57.590679 [I] : RS detected uncorrectable errors
22:25:57.595741 [I] : Superframe SYNC :-)
22:25:57.595764 [D] : AU header: 0x68
22:25:57.595881 [D] : => ps_flag=1, dac_rate=1, sbr_flag=1, aac_channel_mode=0
22:25:57.596005 [D] : => HE-AAC v2 48 kHz stereo
22:26:13.187989 [I] : Finishing thread...
22:26:13.188929 [I] : Thread joined
BTW: The app does not close correctly ... Need to use Ctrl + c
EDIT: I have changed the patch file to print more info.
Thanks for the report. If I understand well, the application behaved during the test like this:
If this was the behavior, then the problem is with audio output. It is not able to switch between sample rates for some reason. I am sorry I have to ask you to do few more tests :-(
Test 1:
git reset --hard
git apply logAAC_audio2file_portaudioDeviceList2.patch
mkdir build && cd build && cmake .. && make
Test 2:
mkdir build
cd build
cmake .. -DUSE_PORTAUDIO=OFF
make
Please note that it is mandatory to delete build folder before.
If this was the behavior
Yes, correct.
I will test it in the evening.
As I seem to be the first Linux user, I am glad to help here.
The tool itself is amazing and has much better performance (reception) than all other software.
Thanks. I would like to solve it and I am grateful for your help. It seems that the problem is AMD HW platform. I have done all my tests on Intel and ARM64 (Apple Silicon M1) and there was never problem like this. On the other hand, my Linux building machine is AMD too but desktop CPU line and there seems to be no issue too. Just to share my current thoughts about the problems: There are more issues unfortunately. One is in library, that is probably "solved" in the latest build I have shared. But this is no solution at all, only workaround. I did not do any code change, I have disabled all optimization and suddenly it works. I do not consider this as solution because one of AbracaDABra advantages is low CPU usage and I do not want to give it up. Second issue seems to be related to audio output - target of the tests now. It seems that PortAudio is not able to handle transition between sample rates. I have never seen this on any other platform I have.
Before doing any tests please try revision 3cb5f0e166dd64bfc0c678e2771d64f49d452a18 with last library linux_x86_64_1.1.2.tar.gz I believe it could solve the audio output issue. It it does not help then please perform the tests described above.
Now CRo-C.BUDEJOVICE and UKRAJINSKE-RADIO have both audio The app quits normally.
abracadabra_12C_14july2022.txt audio.zip
Please note that it is mandatory to delete build folder before.
Yes, sure. I always did it (resp. rm -r *
)
CRo-C.BUDEJOVICE and UKRAJINSKE-RADIO have both audio The app quits normally.
abracadabra_12C_portaudiooff_14july2022.txt audio_portaudiooff.zip
There is still a message saying
Selected file : "/home/andreas/Downloads/2022-07-11_105700_12C.raw" Sample format unknown
Guess this is from sampledialog.cpp
Line 311 as the extension is raw.
Test 2 result is surprising, I would expect that it would not work. However more important for me is that Test1 works - this is the default configuration. Please try without patch but with modified library for the ensembles you have and please report any issue. If it is working I would consider audio problem solved and I will focus on DABSDR library optimizations.
EDIT: yes the message is because from .raw extension it is not clear what the sample format is. I should probably use .u8 for all files that the application dumps.
I will test it later regarding the audio, but at the start now I get lots of infos about portaudio
on the console compared to before.
$ ./gui/AbracaDABra
Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
ALSA lib pcm_dsnoop.c:601:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1032:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2664:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=Datei oder Verzeichnis nicht gefunden)
attempt to connect to server failed
connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=Datei oder Verzeichnis nicht gefunden)
attempt to connect to server failed
ALSA lib pcm_oss.c:397:(_snd_pcm_oss_open) Cannot open device /dev/dsp
ALSA lib pcm_oss.c:397:(_snd_pcm_oss_open) Cannot open device /dev/dsp
ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card
ALSA lib pcm_usb_stream.c:482:(_snd_pcm_usb_stream_open) Invalid card 'card'
ALSA lib confmisc.c:160:(snd_config_get_card) Invalid field card
ALSA lib pcm_usb_stream.c:482:(_snd_pcm_usb_stream_open) Invalid card 'card'
ALSA lib pcm_dmix.c:1032:(snd_pcm_dmix_open) unable to open slave
connect(2) call to /dev/shm/jack-1000/default/jack_0 failed (err=Datei oder Verzeichnis nicht gefunden)
attempt to connect to server failed
PortAudio version: 0x00130600
Version text: 'PortAudio V19.6.0-devel, revision 396fe4b6699ae929d3a685b3ef8a7e97396139a4'
Number of devices = 5
--------------------------------------- device #0
Name = HDA ATI HDMI: 0 (hw:0,3)
Host API = ALSA
Max inputs = 0, Max outputs = 8
Default low input latency = -1,0000
Default low output latency = 0,0058
Default high input latency = -1,0000
Default high output latency = 0,0348
Default sample rate = 44100,00
Supported standard sample rates
for half-duplex 16 bit 8 channel output =
32000,00, 44100,00, 48000,00, 88200,00,
96000,00, 192000,00
--------------------------------------- device #1
Name = HD-Audio Generic: CX20590 Analog (hw:1,0)
Host API = ALSA
Max inputs = 2, Max outputs = 0
Default low input latency = 0,0058
Default low output latency = -1,0000
Default high input latency = 0,0348
Default high output latency = -1,0000
Default sample rate = 44100,00
Supported standard sample rates
for half-duplex 16 bit 2 channel input =
44100,00, 48000,00, 96000,00
--------------------------------------- device #2
Name = hdmi
Host API = ALSA
Max inputs = 0, Max outputs = 8
Default low input latency = -1,0000
Default low output latency = 0,0058
Default high input latency = -1,0000
Default high output latency = 0,0348
Default sample rate = 44100,00
Supported standard sample rates
for half-duplex 16 bit 8 channel output =
32000,00, 44100,00, 48000,00, 88200,00,
96000,00, 192000,00
--------------------------------------- device #3
Name = pulse
Host API = ALSA
Max inputs = 32, Max outputs = 32
Default low input latency = 0,0087
Default low output latency = 0,0087
Default high input latency = 0,0348
Default high output latency = 0,0348
Default sample rate = 44100,00
Supported standard sample rates
for half-duplex 16 bit 32 channel input =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
Supported standard sample rates
for half-duplex 16 bit 32 channel output =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
Supported standard sample rates
for full-duplex 16 bit 32 channel input, 32 channel output =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
--------------------------------------- device #4
[ Default Input, Default Output ]
Name = default
Host API = ALSA
Max inputs = 32, Max outputs = 32
Default low input latency = 0,0087
Default low output latency = 0,0087
Default high input latency = 0,0348
Default high output latency = 0,0348
Default sample rate = 44100,00
Supported standard sample rates
for half-duplex 16 bit 32 channel input =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
Supported standard sample rates
for half-duplex 16 bit 32 channel output =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
Supported standard sample rates
for full-duplex 16 bit 32 channel input, 32 channel output =
8000,00, 9600,00, 11025,00, 12000,00,
16000,00, 22050,00, 24000,00, 32000,00,
44100,00, 48000,00, 88200,00, 96000,00,
192000,00
Service: CRo-VLTAVA SID = 0xE2232D, SCIdS = 0
Service: CRo-DVOJKA SID = 0xE2232E, SCIdS = 0
Service: CRo-RADIOZURNAL SID = 0xE2232F, SCIdS = 0
Service: CRo-PLUS SID = 0xE22424, SCIdS = 0
Service: CRo-REGION SID = 0xE2243F, SCIdS = 0
Service: CRo-C.BUDEJOVICE SID = 0xE2250D, SCIdS = 0
Service: CRo-PLZEN SID = 0xE22608, SCIdS = 0
Service: CRo-LIBEREC SID = 0xE22706, SCIdS = 0
Service: CRo-PARDUBICE SID = 0xE2280C, SCIdS = 0
Service: CRo-DAB PRAHA SID = 0xE22F1A, SCIdS = 0
Service: CRo-POHODA SID = 0xE22F1B, SCIdS = 0
Service: CRo-WAVE SID = 0xE22F23, SCIdS = 0
Service: CRo-JUNIOR SID = 0xE22F25, SCIdS = 0
Service: CRo-DDUR SID = 0xE22F26, SCIdS = 0
Service: CRo-JAZZ SID = 0xE22F27, SCIdS = 0
Service: CRo-RZ SPORT SID = 0xE22F2C, SCIdS = 0
Service: UKRAJINSKE-RADIO SID = 0xE22FE0, SCIdS = 0
EDIT: yes the message is because from .raw extension it is not clear what the sample format is. I should probably use .u8 for all files that the application dumps.
Use *.u8.raw
which then is clearer ...
Yes, I have added PortAudio info in the patch to understand what sample rates are supported by your HW. I will probably add the check for supported sample rates in the code as default to avoid problems in future.
I will maybe change the filename later, I still consider it as debug option not to be used by average user.
If and only if everything works with clean repository + and dabsdr library 1.1.2 shared before, please try with attached version of the library. I have re-enabled the optimization but changed compiler flags that might help with compatibility.
Do you mean 3cb5f0e166dd in combination with 1.1.3 without the patches? Well, it does not work for 48 kHz (only in a very few cases), for 32 kHz it seems to work.
21:12:33.256759 [I] : RS detected uncorrectable errors
21:12:33.257540 [I] : RS detected uncorrectable errors
21:12:33.258345 [I] : RS detected uncorrectable errors
It seems I was too optimistic :-( Could you please try this? linux_x86_64_1.1.4.tar.gz
no, does not work
1.1.2 is the only one with 100% audio
It seems to be some problem with SSE. Could you please compile and check FFTS:
git clone https://github.com/anthonix/ffts.git
cd ffts
mkdir build
cd build
cmake ..
make
./ffts_test
Please share output from cmake and from ffts_test, thanks!
$ cmake ..
-- The C compiler identification is GNU 11.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Looking for malloc.h
-- Looking for malloc.h - found
-- Looking for mm_malloc.h
-- Looking for mm_malloc.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stdlib.h
-- Looking for stdlib.h - found
-- Looking for string.h
-- Looking for string.h - found
-- Looking for sys/mman.h
-- Looking for sys/mman.h - found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Looking for aligned_alloc
-- Looking for aligned_alloc - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for valloc
-- Looking for valloc - found
-- Looking for _mm_malloc
-- Looking for _mm_malloc - not found
-- Looking for aligned_alloc
-- Looking for aligned_alloc - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for valloc
-- Looking for valloc - found
-- Looking for _mm_malloc
-- Looking for _mm_malloc - not found
-- Looking for xmmintrin.h
-- Looking for xmmintrin.h - found
-- Looking for emmintrin.h
-- Looking for emmintrin.h - found
-- Looking for pmmintrin.h
-- Looking for pmmintrin.h - found
-- Performing Test HAVE_GCC_VISIBILITY
-- Performing Test HAVE_GCC_VISIBILITY - Success
-- Looking for pow in m
-- Looking for pow in m - found
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/andreas/apps/ffts/build
$ make
[ 8%] Building C object CMakeFiles/ffts_static.dir/src/ffts.c.o
[ 16%] Building C object CMakeFiles/ffts_static.dir/src/ffts_chirp_z.c.o
[ 25%] Building C object CMakeFiles/ffts_static.dir/src/ffts_nd.c.o
[ 33%] Building C object CMakeFiles/ffts_static.dir/src/ffts_real.c.o
[ 41%] Building C object CMakeFiles/ffts_static.dir/src/ffts_real_nd.c.o
[ 50%] Building C object CMakeFiles/ffts_static.dir/src/ffts_transpose.c.o
[ 58%] Building C object CMakeFiles/ffts_static.dir/src/ffts_trig.c.o
[ 66%] Building C object CMakeFiles/ffts_static.dir/src/ffts_static.c.o
/home/andreas/apps/ffts/src/ffts_static.c:239:36: warning: ‘ffts_constants_inv_64f’ defined but not used [-Wunused-const-variable=]
239 | static const FFTS_ALIGN(16) double ffts_constants_inv_64f[16] = {
| ^~~~~~~~~~~~~~~~~~~~~~
/home/andreas/apps/ffts/src/ffts_static.c:195:36: warning: ‘ffts_constants_64f’ defined but not used [-Wunused-const-variable=]
195 | static const FFTS_ALIGN(16) double ffts_constants_64f[16] = {
| ^~~~~~~~~~~~~~~~~~
/home/andreas/apps/ffts/src/ffts_static.c:141:36: warning: ‘ffts_constants_small_inv_64f’ defined but not used [-Wunused-const-variable=]
141 | static const FFTS_ALIGN(16) double ffts_constants_small_inv_64f[24] = {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/andreas/apps/ffts/src/ffts_static.c:77:36: warning: ‘ffts_constants_small_64f’ defined but not used [-Wunused-const-variable=]
77 | static const FFTS_ALIGN(16) double ffts_constants_small_64f[24] = {
| ^~~~~~~~~~~~~~~~~~~~~~~~
[ 75%] Building C object CMakeFiles/ffts_static.dir/src/codegen.c.o
/home/andreas/apps/ffts/src/codegen.c: In function ‘ffts_generate_func_code’:
/home/andreas/apps/ffts/src/codegen.c:282:19: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare]
282 | if (ws_is != pLUT) {
| ^~
/home/andreas/apps/ffts/src/codegen.c:121:15: warning: unused variable ‘len’ [-Wunused-variable]
121 | ptrdiff_t len;
| ^~~
[ 83%] Linking C static library libffts.a
[ 83%] Built target ffts_static
[ 91%] Building C object CMakeFiles/ffts_test.dir/tests/test.c.o
[100%] Linking C executable ffts_test
[100%] Built target ffts_test
$ ./ffts_test
Sign | Size | L2 Error
------+-----------+-------------
-1 | 2 | 8.659561E-17
-1 | 4 | 1.145552E-16
-1 | 8 | 1.210162E-08
-1 | 16 | 2.220916E-08
-1 | 32 | 2.396272E-08
-1 | 64 | 2.272872E-08
-1 | 128 | 1.940460E-08
-1 | 256 | 2.081312E-08
-1 | 512 | 2.045939E-08
-1 | 1024 | 2.079071E-08
-1 | 2048 | 2.074052E-08
-1 | 4096 | 2.124981E-08
-1 | 8192 | 2.086463E-08
-1 | 16384 | 2.071494E-08
-1 | 32768 | 2.062090E-08
-1 | 65536 | 2.054694E-08
-1 | 131072 | 2.060355E-08
-1 | 262144 | 2.054523E-08
1 | 2 | 8.659561E-17
1 | 4 | 1.145552E-16
1 | 8 | 1.210162E-08
1 | 16 | 2.220916E-08
1 | 32 | 2.396272E-08
1 | 64 | 2.272872E-08
1 | 128 | 1.940460E-08
1 | 256 | 2.081312E-08
1 | 512 | 2.045939E-08
1 | 1024 | 2.079071E-08
1 | 2048 | 2.074052E-08
1 | 4096 | 2.124981E-08
1 | 8192 | 2.086463E-08
1 | 16384 | 2.071494E-08
1 | 32768 | 2.062090E-08
1 | 65536 | 2.054694E-08
1 | 131072 | 2.060355E-08
1 | 262144 | 2.054523E-08
Thanks, so it works. I have to review the code, it will take some time. Meanwhile you should be able to run the app with library 1.1.2, in case you find any problem please report. Once I get some idea how to fit this issue, I will ask you to do another test. Thank you for your help!
No, thank YOU!
One additional question. For the same raw file input, do you see the same frequency offset when using library 1.1.2 and 1.1.4? (you can check it in Ensemble Information dialog). it should be about 263 Hz for 12C raw file.
Yes, around 263 Hertz
Could you please check with this library when you have time: linux_x86_64_1.1.5.tar.gz
I have realized that the audio codec is very often not detected correctly and therefore I don't get a sound, no DLS and no SLS slideshow.
This should be HE-AAC, not AAC-LC, same here:
The console says for instance
I wonder the line
because then there is no following
for such silent audio services.
I need to try several other services before I get a sound. Switching back to the previous service may result (= not always) in correct codec detection and I may get audio.
This following screenshot was taken after 10 attempts ...
And I tried both, RTLTCP and RTLSDR. And it seems, rawfiles are not affected.
Hint: I don't think this is the issue #17