-
Notifications
You must be signed in to change notification settings - Fork 38
Supported RDS features
Oona Räisänen edited this page Jun 2, 2018
·
25 revisions
Redsea outputs newline-delimited JSON, which means every line is a valid JSON object containing one or several of the properties below.
Name | Type | Description |
---|---|---|
alt_kilohertz |
array of integers | Alternative frequencies for this program, often including the current carrier frequency. |
bler |
integer | Block error rate, or the percentage of blocks that had errors before error correction, when --bler is specified. Averaged over the last 12 groups. For hex input, this is the percentage of missing blocks. |
callsign |
string | (USA/RBDS only) The station's call sign letters, back-calculated from the PI code. |
callsign_uncertain |
string | (USA/RBDS only) Call sign letters that may be incorrect due to incompatibility with RDS-TMC. |
clock_time |
string | Date and time at the transmitter, formatted to RFC 3339. |
country |
string | ISO 3166-1 country code for this program. |
group |
string | Group type for this group. |
has_linkage |
boolean | This station is currently broadcasting a common program with other stations identified by EON PI. (This is the Linkage Actuator bit.) |
in_house_data |
array of uint16_t | The contents of these bits are defined by the operator. |
is_music |
boolean | Music/speech flag; true if music is currently playing. |
language |
string | Language of this program, in English. |
partial_ps |
string | When --show-partial is specified, the value of the internal Program Service name variable is printed for every 0A group. |
partial_radiotext |
string | When --show-partial is specified, the value of the internal RadioText variable is printed for every 2A group. |
pi |
string | The station's 16-bit Program Identification code as a hexadecimal number ("0x12AB"). |
prog_item_number |
integer | A numeric identifier for the currently running program. |
prog_item_started |
object | The Program Item number decoded as its starting time with day of the month (day ) and 24-hour time of day (time ). |
prog_type |
string | Type of programming running at the moment on this station. |
ps |
string | Program Service name; an 8-character identifier for this station. |
rx_time |
string | Time at decoder when --timestamp is specified. |
radiotext |
string | A RadioText message of up to 64 characters. |
ta |
boolean | Traffic Announcement flag. If this and tp are both true, a traffic announcement is currently being broadcast on this program. If only ta is true, this program specifies a traffic information frequency via EON. |
tp |
boolean | Traffic Program flag - true if this station broadcasts traffic announcements. |
Some stations transmit information about programmes on other channels. This will be under the other_network
object in group 14A.
Name | Type | Description |
---|---|---|
other_network. alt_kilohertz
|
array of integers | Alternative frequencies for the program, often including the current carrier frequency. |
other_network. has_linkage
|
boolean | The other station is currently broadcasting a common program with other stations identified by EON PI. (This is the Linkage Actuator bit.) |
other_network. kilohertz
|
integer | Carrier frequency for the other station. |
other_network. linkage_set
|
integer | When has_linkage is true, this station is currently transmitting common audio with other stations having the same linkage_set number and country code. |
other_network. pi
|
string | The other station's 16-bit Program Identification code as a hexadecimal number ("0x12AB"). |
other_network. prog_item_number
|
integer | A numeric identifier for the currently running program. |
other_network. prog_item_started
|
object | The Program Item number decoded as its starting time with day of the month (day ) and 24-hour time of day (time ). |
other_network. prog_type
|
string | Type of programming running at the moment on the other station. |
other_network. ps
|
string | Program Service name; an 8-character identifier for the other station. |
other_network. ta
|
boolean | Traffic Announcement flag. A traffic announcement is currently being broadcast on the other station. |
These will be under the open_data_app
object.
Name | Type | Description |
---|---|---|
open_data_app. oda_group
|
string | The group type that carries this Open Data Application. |
open_data_app. app_name
|
string | A human-readable name for this Open Data Application. |
open_data_app. message
|
array of uint16_t | Application-specific data. |
RadioText+ (radiotext_plus
) is broadcast by some stations to tag substrings of RadioText, like artist names and song titles.
Name | Type | Description |
---|---|---|
radiotext_plus. item_running
|
boolean | True if the item this RT+ is referring to is currently running. |
radiotext_plus. item_toggle
|
integer | Alternates between 0 and 1 to indicate that the item changed. |
radiotext_plus. tags
|
array of objects | One or more substrings tagged with content-types (see below). |
tags
is an array of objects like so:
Name | Type | Description |
---|---|---|
content-type |
string | One of many available RT+ content-types for this substring, such as programme.homepage , item.composer , or info.news . |
data |
string | RadioText content tagged with the content-type. |
Some stations broadcast traffic messages via TMC. An appropriate location database is required to make sense of the location codes. Additionally, the location codes may be encrypted.
Name | Type | Description |
---|---|---|
tmc.system_info. activity_time
|
integer | (TMC enchanced mode) Position of the start of the activity/window sequence, referenced from the minute's edge, in seconds. |
tmc.system_info. delay_time
|
integer | (TMC enchanced mode) The time in a time slot during which 8A groups may be transmitted (seconds). |
tmc.system_info. encryption_id
|
integer | Encryption ID for an encrypted service. |
tmc.system_info. gap
|
integer | Number of groups between successive 8A groups; for battery saving purposes. |
tmc.system_info. is_encrypted
|
boolean | True if the location information of messages is encrypted. |
tmc.system_info. is_on_alt_freq
|
boolean | True if alternative frequencies carry TMC. |
tmc.system_info. scope
|
array of string | One or more of inter-road, national, regional, urban. |
tmc.system_info. service_id
|
integer | Identifies this TMC service. |
tmc.system_info. window_time
|
integer | (TMC enchanced mode) The time in a time slot during which transmission of 8A groups is suspended (seconds). |
Name | Type | Description |
---|---|---|
tmc.message. coordinates
|
array of objects | List of coordinate pairs along the affected route. A coordinate pair has a North latitude (lat ) and East longitude (lon ) as floating-point numbers. (requires location database) |
tmc.message. description
|
string | Human-readable description of the event. |
tmc.message. direction
|
string | Whether this event affects only one direction (single or both ). |
tmc.message. encrypted_location
|
uint16_t | Location code in its encrypted form. |
tmc.message. event_codes
|
array of integers | List of event codes, or references to the event code list. |
tmc.message. extent
|
string | The event affects this many points from the point location. This is represented as a string to allow for negative-direction zero-extent events (-0 ). |
tmc.message. location
|
integer | Location code, or reference to the location database. |
tmc.message. road_number
|
string | Human-readable road number for the event (requires location database). |
tmc.message. span_from
|
string | Human-readable starting point for the event, for instance an intersection on a highway (requires location database). |
tmc.message. span_to
|
string | Human-readable end point for the event, for instance an intersection on a highway (requires location database). |
tmc.message. update_class
|
integer | Message replaces previous messages of this class. |
tmc.message. urgency
|
string | Message urgency: normal (none ), urgent (U ), extremely urgent (X ). |