tuner

Project Logo

Open meta-data for the next generation of broadcast radio user interfaces

Walkthrough – Finding Radio Station Logos

A step-by-step guide to finding station logos using RadioDNS

Step 1

Start with the broadcast information of a radio station.

In this example, we use Heart in London, UK.

frequency = 106.2MHz
PI code = C460
ECC code for the United Kingdom = E1
(You can find a list of countries and their ECC codes in TS 101 756. Some common ones are Germany “e0” and the USA “a0”)

Step 2

Convert this information into the RadioDNS format

Convert frequency: 106.2MHz => 10620
Convert PI code: C460 => c460
Create a GCC by combining the first letter of the PI (“C”) code and the country ECC code (“E1”) => ce1

Make a RadioDNS FQDN by stringing these details together

10620.c460.ce1.fm.radiodns.org

Step 3

Do a DNS lookup on these details to find the broadcaster’s Fully Qualified Domain Name (FQDN).

From Microsoft Windows, MacOS or Linux, open a command window and type:

nslookup -type=CNAME 10620.c460.ce1.fm.radiodns.org

Look at the response from the command, and you should see a line which says

10620.c460.ce1.fm.radions.org  canonical name = rdns.musicradio.com

Step 4

Find the broadcaster’s metadata server.

Using the broadcaster’s FQDN, use DNS again to find the server with their metadata

nslookup -type=SRV _radioepg._tcp.rdns.musicradio.com

In the response, you should see one (or more) entries that say

_radioepg._tcp.rdns.musicradio.com      service = 0 100 80 epg.musicradio.com.

So you need to connect to epg.musicradio.com get the SI (Service Information) file from this broadcaster.

Step 5

Download the broadcaster’s SI file.

The SI file contains all the metadata for that broadcaster (all their radio stations). The URL to the SI file is always constructed as

http://<broadcaster metadata server>/radiodns/spi/3.1/SI.xml

So open a browser to:

http://epg.musicradio.com/radiodns/spi/3.1/SI.xml

Save this file to disk.

Step 6

Find the radio station in the broadcaster’s SI file.

Open the SI.xml file in a text editor / XML editor, or similar. We need to search for the station in the format of a bearer. This is a similar format to the RadioDNS FQDN at Step 2.

fm:<gcc>.<pi code>.<frequency>

So the correct bearer string will be

fm:ce1.c460.10620

Search the text file to find this string – “fm:ce1.c460.10620”. The text around it will look this like

<service>
<shortName>Heart</shortName>
<longName>Heart London</longName>
<mediaDescription>
<multimedia height="32" url="http://owdo.thisisglobal.com/2.0/id/151/logo/32x32.png" width="32" mimeValue="image/png"/>
</mediaDescription>
<mediaDescription>
<multimedia height="32" url="http://owdo.thisisglobal.com/2.0/id/151/logo/112x32.png" width="112" mimeValue="image/png"/>
</mediaDescription>
<mediaDescription>
<multimedia height="128" url="http://owdo.thisisglobal.com/2.0/id/151/logo/128x128.png" width="128" mimeValue="image/png"/>
</mediaDescription>
<mediaDescription>
<multimedia height="240" url="http://owdo.thisisglobal.com/2.0/id/151/logo/320x240.jpg" width="320" mimeValue="image/jpg"/>
</mediaDescription>
<mediaDescription>
<multimedia height="600" url="http://owdo.thisisglobal.com/2.0/id/151/logo/600x600.jpg" width="600" mimeValue="image/jpg"/>
</mediaDescription>
<mediaDescription>
<multimedia height="800" url="http://owdo.thisisglobal.com/2.0/id/151/logo/800x800.jpg" width="800" mimeValue="image/jpg"/>
</mediaDescription>
<bearer cost="30" id="fm:ce1.c460.10620"/>
<bearer cost="20" id="dab:ce1.c185.c460.0" mime="audio/mpeg" offset="2500"/>
<radiodns fqdn="www.heart.co.uk" serviceIdentifier="london"/>
<memberOf id="heart"/>
</service>

Step 7

Find the URL to the radio station logos.

The <bearer> element you found will live within a <service> element, which defines the service. Within this you’ll see a series of mediaDescription items like this

<mediaDescription
<multimedia height="600" url="http://owdo.thisisglobal.com/2.0/id/151/logo/600x600.jpg" width="600" mimeValue="image/jpg"/>
</mediaDescription>

Each mediaDescription item refers to a specific logo size or dimension.

Step 8

Download the radio station logo.

Use the URL in the mediaDescription item to open the logo in a browser.

http://owdo.thisisglobal.com/2.0/id/151/logo/600x600.jpg

Summary

This process is identical for all radio stations using RadioDNS. Try working this example again, but for a German radio station on DAB.

Bayern 3
Service Component ID : 0
Service ID: D313
Ensemble ID: 10A5
ECC: E0

The structure of a DAB RadioDNS FQDN IS:

<service component id>.<service id>.<ensemble id>.<gcc>.dab.radiodns.org

So your FQDN query will be:

0.d313.10a5.de0.dab.radiodns.org

The bearer structure is similarly altered

dab:<gcc>.<ensemble id>.<service id>.<service component id>

If you need support or help, please let us know – feedback@radiodns.org

Go back to the Project Logo Hub Page