yashsingh1/xdaforums huggingface dataset:
[Android Head-Units] realzoulou:
Google Play release 1.7.72

Release 1.7.72 is uploaded to Google Play and should soon be available for download

Change log:

New

* OMRI is now the default mode

* App requires Android >= 4.4

* OMRI: Timeshifting (default off, needs to be enabled in Settings->Audio, writes up to ~32 MB per hour to flash memory)

With Timeshifting the full DAB/DAB+ broadcast of the current station is recorded in background and allows to seek back and forth in steps of 10s.

Even DLS/DL+ ("Radiotext") and SLS (slide show pictures) are updated accordingly.

When enabled, a new button will appear to seek back by 10s. See 1st picture below.

When having seeked back, a 2nd row of buttons appears. See 2nd picture below. These allow to seek backwards, forward and go back to live audio. The time diff between current timeshifted audio and the live audio is displayed. "-00:01:17" means that current audio and DLS/SLS are 1 min 17 seconds old. Note that this time typically is stable, but can toogle by 1 sec back and forth.

* OMRI: Audiorecording (only Android >= 5.0)

All OMRI audio recordings are stored as .aac file in <sdcard>/DAB/rec folder, even when DAB MP2 stations are recorded.

OMRI audio recording always records the live DAB/DAB+ audio stream irrespective of how Timeshifting is used.

If DL+ artist and title are received, the file name consists of stationname + artist + title only, instead of the full DLS text like in libdab.so mode.

Bugfixes

* On high resolution smartphones/tablets, buttons are too small

* DL+ artist and title not always updated

* Stability fixes
[Android Head-Units] tasdevil123:
With the change of default mode to OMRI in the latest release, I am having an issue where an entire multiplex (9A) is ignored when I perform a scan.

I have attached a log from the app. There are 2 DAB+ multiplexes here in Hobart (Tasmania, Australia), both transmitting from the same tower. 9C which is a national broadcaster multiplex, and 9A which is for commercial and community broadcasters.

Using OMRI mode, 9A is completely missed/ignored in the scan. Using legacy mode, 9A is scanned in as normal.

I was hoping to be able to use the OMRI mode, as legacy mode seems to have the audio stuttering issue on some stations with my PX5 head unit.

Edit: might try a USB hub to fix the audio stuttering in the mean time
[Android Head-Units] realzoulou:
Ok, that's strange. Unfortunately, in my area 9A is not used, but I see that 9A is in use in Germany in 3 areas.

Can users in Sachsen, Lübeck or Saarland please confirm that stations on ensemble frequency 9A are also missing in their OMRI station list ?
[Android Head-Units] DominicS65:
OMRI mode

Hi, I love the app but have just upgraded the headunit to an Erisin one that runs Android 9 and I discovered by a process of trial and error that OMRI mode causes all sorts of lockups and system hangs.
[Android Head-Units] haynesteve:
Ah, thought that was just me. I'm in the UK and I sometimes have this problem, but only with Radio 2 to my knowledge, having to reset and quickly turn OMRI off. Most channels seem ok though.

On a pumpkin head unit, using HalK9 android 9.
[Android Head-Units] sniktaw:
Same with me on BBC Radio 2. MTCB.
[Android Head-Units] DominicS65:
I should give more details.

I am also in UK, the problem seems to be most obvious using BBC Radio 5 but then that is the station I default to so this may just be coincidence.

Android Version: 9

Build Number: rk3368-userdebug 9 PQ2A.190305.002 20191113.183229 test-keys

Kernel version: 4.4.167

MCU version: MTCE_LM_V3.37_1
[Android Head-Units] royalhawk2002:
I experienced that some time, at hot unit switch on, the app start but remain in loop without loading the stations. Exiting and reopening the app it start successfully. I noted that I have less signal drops with OMRI enabled.

Inviato dal mio SM-N960F utilizzando Tapatalk
[Android Head-Units] realzoulou:
I am sorry for the issues, especially in the UK with DAB stations. I expected them to occur and so I implemented a monitoring via Google Analytics, which allows me get a better overview about the issues with some DAB stations not giving any audio.

This should hopefully give me enough data to work on a solution.
[Android Head-Units] IG_Vasilich:
[MENTION=7838245]realzoulou[/MENTION]

1. since my last post i have updated DAB-Z twice, but in both versions in OMRI mode all hr sendersthat have bitrate 136kbps or 144kbps, now show only 32kbps. After witching to legacy mode (libdab.so) those channels show 136 or 144 kbps. I am not sure what indication is correct 8: but all those are stuttering in OMRI mode.

I have a feeling that it has something to do with decoding performance (decoding thread has lower priority that in libdab mode?)

I have attached 2 logs, where hr* stations stuttered. Those logs should also contain crash log for DAB-Z, when the app just get killed.

Questions to new features:

2. What station info (text, nowPlaying or whatever it called) will be shown in timeshift - from live point or from timeshifted point?

3. What happens when i press record button while in timeshift mode? will it record from the live point or from timeshifted point? what name will get the recorded file - station info from live point (i assume) or station info from timeshifted point?

4. Will timeshift get reset on station change?

Thanks in andvance
[Android Head-Units] realzoulou:
Hi IG_Vasilich,

I noted of course your post about the issues with OMRI and the "hr Radio" ensemble. But I have still no clue what's going wrong and why libdab and OMRI show different bitrates.

>> 2. What station info (text, nowPlaying or whatever it called) will be shown in timeshift - from live point or from timeshifted point?

The text under the station name is called DLS=Dynamic Label Segment. When in an active timeshift (i.e. additional row of buttons is visible), then it shows the DLS of that time in the past (if there was one transmitted). If not in an active timeshift, then it shows live DLS.

Note, that DLS is not constantly transmitted typically. So sometimes it does not update when switching between timeshift and live.

>>3. What happens when i press record button while in timeshift mode? will it record from the live point or from timeshifted point? what name will get the recorded file - station info from live point (i assume) or station info from timeshifted point?

Record button *always* records live audio only, never timeshift. The filename of the recording should be from the live DLS, but I just noticed while testing this scenario that it currently uses the timeshift DLS.

>> 4. Will timeshift get reset on station change?

Yes. Also recording stops on station change (like it did with libdab.so)
[Android Head-Units] IG_Vasilich:
Hello [MENTION=7838245]realzoulou[/MENTION]

1. Thanks for looking into it. It means though, that you do not see the possible reason for stuttering in logs? And also no idea about crashes? :( Any thoughts about decoding thread priority?

2. Great. Then it works as it should (from my point of view)

3. Ok. I hoped that it can record from listening point (live or timeshift), but as it is now is also acceptable. I think you should document (in 1st post or wherever else) how this works.

4. Ok.

All in all - great feature! thank you again.

Another question about station logos: your app sends media-style notifications to android. I use CarLauncher Pro in my car (Android 6.0.1 on SoFIA/Joying), where the launcher extracts "now playing" media information from that notification. Everything works as it should, except of small glitch in album cover: when the logo is not square (and this is almost always the case for DAB) the Android (?) cuts only the middle part of picture, posted as LargeIcon, to get square picture. It is observable e.g. with "sunshine live" station as its logo is way too far from square - in the notification there are only small central part (5-6 letters) visible from the full logo. Do you have any idea how to make it looking correct/nicer? maybe put transparent background to logo to get it square before setting LargeIcon? This issue isn't very important, i just thought that maybe you have an idea how to fix it quickly. And - this issue does not depend on engine used (OMRI or LibDab).
[Android Head-Units] surfer63:
If you record those stations from libdao and now from OMRI: In what bitrate are your recordings?
[Android Head-Units] realzoulou:
1. I looked into thread priorities already and even increasing them to the maximum had no positive impact.

I can see the audio stuttering in your logs:

Either there is not enough audio data coming out of the AAC decoder (with hr1 @ 136 kbps)

AudioFlinger: mixer(...) throttle end: throttle time(...)

or too much (hr3 @ 144 kbps, OMRI says 32 kbps)

dabplayer: pcm data overrun ...

Note: The AAC decoder used by OMRI is the AAC decoder by Google (=part of your Android 6 system image). This is why it is hard for me to find a workaround or fix.

I am able to reproduce stuttering with "BR-KLASSIK" here in the Munich area @ 144 kbps, which results in audio data underruns on Joying Intel Sofia 6.0.1. Same problems on PX5 Hal9k Android 9 though with the same DAB adapter, but not as frequent. So I guess it's a problem of Google's AAC decoder.

Regarding the logo, please ask the CarLauncher Pro guys. Android does not crop the bitmap. The documentation states that it may decide to scale it, nothing else.

FCC had a similar problem a long time ago, where it showed only a square logo properly and cropped the left and right area from a rectangular logo.
[Android Head-Units] realzoulou:
OMRI recordings are 64 kbps bitrate AAC encoded
[Android Head-Units] okij:
So they are recoded to 64 kbps? Wouldn't it be easier (and less CPU consuming) to just write the stream that is received from the adapter?

I'm just asking out of interest. :)
[Android Head-Units] apollo1976:
Hi realzoulou !!

As always a thank you very much for your wonderful app, a true masterpiece, the only one in this category. It has practically revolutionized the way we hear DAB radio on Android.

With the last update, however, I found a regression: When you set the volume to a value lower than 100% (for example 15%), when you close the app and start later the volume always returns to 100% even if in the settings it is set to 15%.

There was already this problem in the past but you had solved it brilliantly, unfortunately now it come up again.

Could you solve it again ??

Thank you!!
[Android Head-Units] surfer63:
That is also what I thought: Just write the raw AAC stream to "disk". Simplest and less CPU intensive (I think).

That's why I suggested to record in libdao and OMRI, to see how the recorded OMRI stream ended up: 32kb or 136/144 kb.
[Android Head-Units] realzoulou:
Nope. OMRI would allow me to get the raw DAB(+) stream, but then I would need to decode the full stream myself. So I am using the OMRI interface to get PCM audio data from it and this data I feed into the Android OMX framework to have it encoded in AAC.

Btw. I plan to increase the bitrate to 128 kbps. I noticed that the recordings do not sound very good when in the car...
[Android Head-Units] IG_Vasilich:
i had the same feeling...

i have checked recordings in LibDab mode - one shows me 113 kbps, another - 129kbps, so - definitely not 32kbps.

Btw, one recording in OMRI mode showed 96kbps?

All this is approximate because all recordings show variable bitrate
[Android Head-Units] IG_Vasilich:
OK. I just thought that android cuts it because i see already cutted image in notification.

maybe the decoder on that specific android version has problems with buffer sizes? maybe it can be fixed with changing buffer size... https://www.google.com/search?q=android+aac+decoder+buffer+underrun
[Android Head-Units] realzoulou:
Google Play release 1.7.73

Google Play release 1.7.73 is available now

Change log:

New

* OMRI only: Automatic RadioDNS logo download, requires Internet connection during station scan.

To make use of this feature you need to perform any type of station scan in order to download the logos.

Due to a small glitch in my software, you may need to close and reopen the app to see the logos after a scan.

The use of RadioDNS logos can be disabled in Settings->Station Logo.

The number of logos shown in Settings->Station Logo->"Use RadioDNS logos" is the total number of logos downloaded for your station list.

Note 1: RadioDNS provides logos in several resolutions. So one station will result in typically 3-5 logos.

Note 2: Not every radio station has registered with RadioDNS and so a lot of stations are still without logos.

For further infos about RadioDNS, please visit their website https://radiodns.org

* OMRI recordings now created with 128 kbps bitrate (was 64 before)

Bugfixes

* OMRI recording filename consists of timeshifted DLS/DL+ info instead of live info when recording is started during an active timeshift

* Stability fixes in OMRI timeshifting
[Android Head-Units] VBA_Dev:
Thanks for the update [MENTION=7838245]realzoulou[/MENTION]

Noticed a slight UI issue - if hide station list after x seconds is enabled, this still kicks in if you are scrolling the list.

I’ve also had a few crashes when flicking stations quite rapidly again. Sent a few bug reports over using the reporter.

Image downloader works greats!

Could you maybe build in a toggle for using downloaded images or user images? At the moment, user images override.
[Android Head-Units] realzoulou:
Thanks, yes the auto hide of the station list indeed is broken. Will fix.

Unfortunately with timeshift enabled, the amount of crashes have increased :( They mainly come from uncaught Exceptions from Android's MediaCodec. I have no access to this source code yet, so I cannot fix right away.

I will add another toggle for allowing the user to select which source of logos he prefers.
[Android Head-Units] VBA_Dev:
Thanks mate, I have disabled timeshift on mine for now. I think I can still cause it to crash with rapid station changes though even with it disabled. I’ll send over a logcat if I can replicate.
[Android Head-Units] royalhawk2002:
Fast test report:

- Executed all the 3 types of scan (internet connection), but 0 radioDNS logo found. I still see the "local" stored logos

- Changing between some of the stations, I see full strength signal but no audio is present. Switching to another station and going back to the previous one, the audio appears. This is not valid for all the stations. Some time the work around above is not working and audio is not reproduced.
[Android Head-Units] Kerimi55:
Hello

Great work, I have a question, is it possible to make the screen look like a real radio? Of course, what you did deserves luck.

Regards
[Android Head-Units] VBA_Dev:
Crash with timeshift disabled attached. Caused by rapidly flicking through stations while on favourites list. Also reported through built in android reporter.
[Android Head-Units] davemazo:
I don't know what OMRI is but I have never been able to get it working successfully. The ordinary setting works fine but as soon as I switch to OMRI any station I choose works intermittently. I have a Joying JY-VO131N4G in my Skoda Superb and connected to the original DAB aerial.

Also while I was trying OMRI I couldn't download any radio logos
[Android Head-Units] Chrisu02:
Hello [MENTION=7838245]realzoulou[/MENTION]

The App is working great on BMW Android units, especially since Idrive controller is supported :)

I have only one tiny iusse.

the colordifference between the background and selection is very little.

would it be possible to brighten this a little bit more, or make an option to make it the same brightness as the selected one ?

I attached a picture to make it more understandable.

sincereyl Kri
[Android Head-Units] leenq:
Metadata missing in OMRI mode

My Xtrons PX5 HU with Hal9k mod v4 recently update the DAB-Z app automatically to version 1.7.73 and starts by default in OMRI mode. In OMRI mode metadata such as the song info is not shown most of the time, it just shows a dot. Occasionally the artist and song title appear for a few seconds, then it goes back to showing a dot. The song/artist picture/logo is never shown. When switching back to legacy mode the metadata is shown properly with the picture alternating between the song picture and station logo. Can you look into fixing the metadata issue in OMRI mode? I am based in France and cannot say if it is a regional issue. For now I'll continue to use legacy mode as it is more stable. Thanks in any case for the great app, it is much better than the stock DAB app.
[Android Head-Units] realzoulou:
There is no guarantee that you get logos via RadioDNS.

I see from https://radiodns.org/get-involved/project-logo/project-logo-rollout/ that Italy should have logos for Rai Radio1, Rai Radio2, Rai Radio3, Rai Isoradio, Rai radiofd5, Rai Grparlamento, RTL102.5.

However, I have no tool to verify that this is really the case.

What stations are impacted?
[Android Head-Units] realzoulou:
Thanks, but this is a strange log. What tool do you use to capture?

The log does not contain DAB-Z doing much. I see only once that FCC gives a NEXT command to a not running DAB-Z.
[Android Head-Units] realzoulou:
What country do you live in? If it is UK, then you are most likely affected by the ... hmm, let's call it ... sub-optimal support for MP2 audio codec, which is transmitted by the older DAB standard (in contrast to DAB+, which uses AAC audio codec).
[Android Head-Units] realzoulou:
When I saw your post and picture, I had to laugh out. The fact that you even can use the iDrive to focus other stations while listening to the selected station was never intended to be supported. This is working purely by chance :)

Nevertheless, I will change the focus color. Thanks for making my day! :good:
[Android Head-Units] realzoulou:
Can you send a logcat via DAB-Z Settings->Info to me? Email it to yourself and then post it here, or send it directly to my zoulourns gmail address with some words about the issue, so I can know that it is you.

There is no source code in my app, that would ever create a dot (I hope)
[Android Head-Units] royalhawk2002:
Are not specific stations. It happen randomly on all the stations

Inviato dal mio SM-N960F utilizzando Tapatalk
[Android Head-Units] davemazo:
OMRI

Ok thanks. I didn't know there are two standards of DAB radio and yes, I am in the UK
[Android Head-Units] VBA_Dev:
I think I used [ROOT] aLogcat. I’ll reproduce and check it contains some more relevant info for you.
[Android Head-Units] Chrisu02:
Thats great to hear, so i found a new feature ? :D

but i also have found a other bug, the dimming feature of the pictures does not really work, they are always at full brightness at my system, is this known or do you need a logcat ?

Sincerely Kri
[Android Head-Units] VBA_Dev:
Hopefully one of these logs will be better for you :)
[Android Head-Units] realzoulou:
yes, I found the regression that I introduced with the audio fading feature in 1.6.69

Will be fixed in the next release.
[Android Head-Units] realzoulou:
Thanks, no new type of crash. There are around 2 hand full of crashes resulting from OMRI, both in native libraries and in Java code.

I can't fix them yet. I need to wait until OMRI is open-sourced.
[Android Head-Units] realzoulou:
I use this myself quite often. It is working. Would you mind doing a video?
[Android Head-Units] NogenLunde:
I have the same "issue". Even the logo and red recording button are accessible with the BMW iDrive wheel. These should maybe be locked from tabbing, if possible.

Could you perhaps make a frame around the selector? Make this optional, and let us choose color of the frame as well of the selector, if not too much work. Then we can use the color and appearance that best blend with the unit. I'm not allowed to post links yet, but you will know what I have in mind if you have seen the selector in the BMW Android screens.

This is my first post, I will thank you for making and supporting this app, by this you have made life a little easier for a lot of people!

---------- Post added at 05:01 AM ---------- Previous post was at 04:55 AM ----------

I have the same Android SD625 unit as you, I believe, with App 3.8, it works here. If the logo is smaller than the placeholder, you need to swipe directly on the logo. It doesn't work on the generic logo, though, but this is gray/black so dimming has no use anyway.
[Android Head-Units] Chrisu02:
I uploaded a video here.

Switch Logo and Senderlist position, then you have the idrive at the correct position from beginning on ;)

I think the whole selection making brighter does fit better to the design than making an additional frame, also because all other buttons will also become brighter, which is easier to programm than doing a frame for each.

What you probably are thinking of is adding Skinning support to the app, afaik i know, [MENTION=7838245]realzoulou[/MENTION] has not planned to do this, as its alot of work.

sincerely Kri
[Android Head-Units] leenq:
As I cannot yet post files on the forum I have emailed screenshot and log to you. Upon zooming the screenshot I noticed the artist/song shows a comma not a dot.
[Android Head-Units] realzoulou:
I think I have seen a small bug when you changed the brightness in the Settings. The image always started at full brightness, only when you hit the slider, then the image was dimmed.

But, I never saw you swiping down on the logo picture on the main screen. Only then it is dimmed to the brightness you selected in Settings. Swiping up restores the full brightness again.
[Android Head-Units] NogenLunde:
The logos are available only to 11-12 percent of the listeners in Italy, according to the link to Project Logo Rollout provided to you by realzoulou in his reply.

There is 65 percent RadioDNS coverage in my country, and even here there is no logos downloaded. I will try in a bigger city next week.

Same problem here when OMRI is enabled. This happens sometimes when going back to a station I previously listened to. I will do some testing and see if this can be reproduced in a systematic manner. My suspicion is that switching between stations from different broadcasters has something to do with it.

---------- Post added at 09:17 PM ---------- Previous post was at 09:07 PM ----------

And to reiterate my first reply, you need to swipe down directly on the logo, this is counterintuitive when the logo is much smaller then the placeholder for the picture. Probably not much to do about it, one just need to know this.
[Android Head-Units] Chrisu02:
thanks man, i didn`t knew that i had to swipe down, i always thought the image does change automatically :laugh:

Brightness of the images is now darker :)

sincerely Chri
[Android Head-Units] realzoulou:
Under Settings Info there is a Hints button. It should bring up the Gallery App with a picture with some hints on how to use the UI of DAB-Z
[Android Head-Units] NogenLunde:
I experienced no sound again today, in OMRI mode, and worse then ever. This time switching to other channels didn't get the sound back, neither did restart of DAB-Z. Full reception and online channel pictures were coming in. Got the sound back by launching the music app, then sound started working also in DAB-Z.

By the way, in OMRI mode it takes 4-6 seconds to switch channel (when not cached), without OMRI it takes 2-3 seconds. Is this normal?
[Android Head-Units] realzoulou:
What do you mean with "not cached"? When switching between services on the same channel (e.g. 12A) in OMRI mode, I expect a 1-2 seconds. Switching between different channels 4-5 seconds.

I am monitoring such "no audio" events with the current active 1.7.73 release via Google Firebase Analytics in order to get a better overview of the problem, aside from the reports that I get via XDA, Google Play and email. I am astonished that not only DAB stations appear, but also quite a lot of DAB+ stations. As expected BBC Radio 5 Live in UK is #1 (DAB), but #2 is bigFM in Germany (DAB+).

FYI ... an overview of cities where the reports come from