Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Record ETI #296

Closed
awingender opened this issue Aug 8, 2023 · 30 comments
Closed

Record ETI #296

awingender opened this issue Aug 8, 2023 · 30 comments

Comments

@awingender
Copy link

awingender commented Aug 8, 2023

I have been attempting to record an ETI file of live DAB+ transmissions using QT-DAB 5.3.
I am able to see that an ETI file is generated, however when I attempt to decode or transmit it, I receive errors about missing FIC information.

Specifically, I am using DABMOD from Open Digital Radio to broadcast ETI files, but believe the error to be with QT-DAB. ETI files that I did NOT create with QT-DAB 5.3 work correctly. I get the following error from dabmod: "Exception Caught: FIC must be present to modulate!"

I have 2 devices with same results (HackRF and RTL-SDR). Both devices are able to scan, receive, and decode the live DAB+ signal.
Currently using Windows 10.

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 9, 2023 via email

@andimik
Copy link
Contributor

andimik commented Aug 9, 2023

@awingender

Can you play that file in dablin resp. dablin_gtk

What about re-transmit it with odr-dabmod?

Tried to load it into XPADxpert?

https://www.basicmaster.de/xpadxpert/

https://github.com/opendigitalradio/dablin

https://github.com/Opendigitalradio/ODR-DabMux

Honesty I have rarely tried that function, because I am creating eti files with eti-cmdline

@awingender
Copy link
Author

Does the resulting eti file play with e.g. dablin?

No. I get the following error from Dablin when I play my recorded QT-DAB eti files. This error repeats for each frame:
"ETIPlayer: ignored ETI frame due to wrong (MST) CRC"

I have also tested using pre-recorded sample ETI files from WorldDAB org that do play correctly directly from Dablin.

What about re-transmit it with odr-dabmod?

No. I cannot retransmit the ETI files that I have made using QT-DAB. I get this error:
"Exception Caught: FIC must be present to modulate!"

If I use my pre-recorded ETI files from WorldDAB, I am able to successfully transmit using odr-dabmod, and correctly receive DAB radio signal on multiple test radios.

Tried to load it into XPADxpert?

XPADxpert gives error when QT-DAB made ETI file is loaded:
"Runtime exception: Wrong FSYNC at frame # 1"

My WorldDAB pre-recorded ETI files, loaded into XPADxpert work as expected. This is a nice tool. **Although sometimes it gets stuck at 'extracting all sub-channels' and XPADxpert has to be restarted.

Honesty I have rarely tried that function, because I am creating eti files with eti-cmdline

Before today, I had not used eti-tools (eti-cmdline). I was able to easily get it up and running, pipping my output to dablin_gtk. Doing this, my live DAB+ transmission fully worked from Dablin_gtk. How do I use eti-cmdline to record an ETI file? I tried pipping the output of eti-cmdline directly to a test.eti file, and that did not seem to work.


I have uploaded two ETI files that I recorded using QT-DAB 5.3. The each 60 second recording was started after I felt the DAB+ signal was correctly being received by QT-DAB.

https://www.filebig.net/files/ViYNe5mRKx


I do have one thought that may be of concern, but hopefully not!
I am located in the USA. Because of this, I am transmitting my own DAB+ signal using a HackRF and Raspberry Pi, using the working WorldDAB ETI files. This works 100%.

My concern is that I am using a seperate PC to then record an ETI file using QT-DAB. (Using a RTLSDR). Should I be able to record a re-transmission? QT-DAB is able to play it no problem, just issue with recording ETI.

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 10, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 10, 2023

Hi,
i can confirm the above. ETI recordings created with qt-dab generate messages like
ETIPlayer: ignored ETI frame due to wrong (MST) CRC
EnsembleSource: skipping 14 bytes for sync
in dablin. Recordings done with eti-cmdline can be decoded.
I guess still storing the faulty FIC blocks might be the choice.
regards
Mario

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 11, 2023 via email

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 11, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 11, 2023 via email

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 11, 2023 via email

@awingender
Copy link
Author

I uploaded a Windows version, with "-test" added to the name, that contains
a few mods, telling the eti-generator the state of the FIC blocks

I just tested setup-qt-dab32-5.4-test.exe and unfortunately received the same FSYNC errors from xpadxpert.
"Runtime Exception: Wrong FSYNC at frame # 1"

My question is: do you use windows, or do you build your own executable or
do you use an AppImage?

For my use case, Windows is the most helpful.

Just a follow-up of a previous question I had above:
I have since been successfully in getting eti-cmdline to output a working ETI file of my DAB 're-broadcast'.
"eti-cmdline-rtlsdr -C 7A -G 20.7 > dump.eti"

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 11, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 11, 2023 via email

@awingender
Copy link
Author

eti-cmdline does not seem to contain an error, while the result of processing with Qt-DAB gives an error?

Yes, but my testing of QT-DAB has been exclusively on Windows10.
eti-cmdline has been used on raspberry pi (Raspbian 11 - Bullseye)

I will try the Appimage version of QT-DAB on RPi and report back

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 12, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 12, 2023

I can just have a look into the faulty ETI files with some different analysis tool. Maybe this gives some more insight. The fact that it seems to work under Linux suggests that there is some problem specific to the Windows compilation. No clue what this could be.

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 14, 2023 via email

@awingender
Copy link
Author

The fact that it seems to work under Linux suggests that there is some problem specific to the Windows compilation

I agree that the problem seems to be Windows specific.
I tested recording ETI file with QT-DAB 5.3 & 5.4 in linux, and the resulting ETI file works correctly.

I next used ETIsnoop from OpenDigitalRadio.
From what I'm seeing. FSYNC and CRC are correct at the beginning of FRAME#0, but by FRAME#1, both FSYNC and CRC are wrong.

https://imgur.com/a/1WRP57k
See image above. I compared the output of ETISnoop of a known good vs bad ETI file.
For a good ETI file: I see that all TPLs say EEP "Equal Error Protection"
For a bad ETI file: I see that some TPLs say UEP "Unequal Error Protection"

For a good ETI file: After EOF, i see the CRC shows "Value: No Error"
For a bad ETI file: After EOF, i see the CRC shows "Value: Mismatch: 2da8"

For a good ETI file: FYSYNC shows "Value: OK"
For a bad ETI file: FYSNC shows "Value: Wrong FYSNC"

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 15, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 15, 2023

It seems this did the job. With the 5.4 Windows binary i was able to record a ETI from DR Deutschland and read it into other tooling.
@awingender: can you confirm that?

@awingender
Copy link
Author

@JvanKatwijk @dh5ym

That works!!!

I tested recording an ETI file using latest QT-DAB 5.4 on Windows 10.
Dablin was successfully able to playback the recorded file.
I also inspected the new ETI file with ETIsnoop, and the 3 previous 'errors' i mentions about FSYNC, CRC, and protection levels are all now gone.

I want to thank both of you for your help. Your work has and will continue to indirectly/directly help many many people get a better DAB experience in the future. The ability to record an ETI from Windows, using a low-cost RTLSDR will help many people I work with troubleshoot radio issues we are investigating far from our offices. Again, thank you for this great tool.

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 15, 2023 via email

@awingender
Copy link
Author

awingender commented Aug 17, 2023

Is it possible that an image/artwork could be received by multiple vehicle radios, but not stored in the recorded ETI?
More specifically, I know MOT can be received and recorded by QT-DAB (Tested and verified by me today), however could there be other multimedia/image methods not supported by QT-DAB. For example, SLS, or slideshow, or SPI?

My scenario. I had someone in South UK record an ETI for me this morning using QT-DAB 5.4. I received the file of the BBC Ensemble, but it does not show any image data at all when inspected with XPADxpert. When I myself try to transmit the ETI file, it works completely, except I see no image/artwork from my radio. So to me, it seems the image data was not recorded by QT-DAB. The person recording ETI confirmed they could see images on 2 test radios at same time as recording. Radios are only DAB, not IP/internet connected at all.

Forgive me if this goes outside the scope of QT-DAB.

Test File recorded today:
http://www.filebig.net/files/r2h5uDMkdk

@dh5ym
Copy link

dh5ym commented Aug 17, 2023

I would assume that QT-DAB only supports XPAD MOT. SPI is very unlikely. But its possible that something is not assembled in the way it should be. I have not enough knowledge about the details of ETI to judge that but would not assume that PAD data is lost during recording. If i have enough time i can try to look into the file with some tooling tomorrow and watch out for errors.

@dh5ym
Copy link

dh5ym commented Aug 18, 2023

After a brief look into the ensemble i think its not an issue of the eti recording.
The ensemble BBC National DAB contains some DAB services with dynamic label but it seems the xpad does not contain any MOT. Instead there is a data service "BBC Guide" which contains EPG and MOT in enhanced packet mode. I doubt qt-dab can support that. Some of the car radios might already use information from such data services to display station logos e.g. If you need more info drop me a line to mario.dh5ym@ gmail.com

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 18, 2023 via email

@awingender
Copy link
Author

I think @dh5ym is correct or very close

It appears that the artwork is not being transmitted using the traditional MOT method within the XPAD. Instead, the BBC National DAB ensemble seems to be transmitting a data service called "BBC Guide, Service ID: E1C79E5E." which contains both EPG (aka SPI) and the MOT data.

https://imgur.com/a/0RfnmzN

So, the obvious question is: how is the data transmitted, as separate
service or embedded as MOT in OAD data

It appears that the images are part of a separate data service rather than being embedded within the XPAD as MOT data. This might explain that the absence of image data in the ETI file.

From WorldDAB, I have a known-good ETI file from Germany with similar SPI type images.
When I test broadcasting the German ETI file, QT-DAB was able to display the images OK. (The BBC images do not show in QT-DAB)
I next recorded an ETI of this SPI broadcast, and rebroadcasted that ETI itself again. Images recorded and played correctly again.
So it seems QT-DAB can work

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 19, 2023 via email

@awingender
Copy link
Author

Here is the German ETI file that I have. It was not recorded in QT-DAB from what I can tell, but seems to contain SPI data, as well as traditional MOT. When broadcasted, the images in this ETI file do work with QT-DAB, unlike the ETI file from UK.
http://www.filebig.net/files/sR4tyVgP46

This file appears to contain 5 subchannels of tdc & mot data:
Content Details

@JvanKatwijk
Copy link
Owner

JvanKatwijk commented Aug 23, 2023 via email

@dh5ym
Copy link

dh5ym commented Aug 23, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants