HYBRID MOBILE RADIO RECEIVER SERVICE BASED ON SOURCE SELECTION
Patent Information
- Authority / Receiving Office
- MX · MX
- Patent Type
- Patents
- Current Assignee / Owner
- IBIQUITY DIGITAL CORP
- Filing Date
- 2023-03-13
- Publication Date
- 2026-06-12
AI Technical Summary
Mobile hybrid radio receivers face challenges in switching between broadcast and wireless IP connections due to indirect quality indicators like RSSI, leading to poor audio quality and increased network charges, as existing methods fail to account for actual reception conditions and receiver performance.
A switching algorithm that uses a direct audio quality metric derived from broadcast signal fluctuations to determine optimal source selection, incorporating hysteresis to avoid aggressive switching and minimize IP data usage.
The algorithm ensures high-quality audio by prioritizing the broadcast signal when conditions permit, reducing network charges and aligning with user preferences, while adapting to various radio receiver types.
Smart Images

Figure MX434736B0
Abstract
Description
SOURCE SELECTION-BASED HYBRID MOBILE RADIO RECEIVER SERVICE Claim of Priority This application claims priority to U.S. Provisional Patent Application No. 63 / 079,463, filed on September 16, 2020, which is incorporated herein by reference in its entirety. Technical Field This description concerns the retrieval of audio content by a hybrid radio receiver. Background of the Invention Mobile hybrid radio receivers can retrieve audio content from both a broadcast signal and a wireless network signal via an Internet Protocol (IP) connection (e.g., a wireless IP connection). The movement of the hybrid radio receiver causes radio frequency (RF) reception conditions to vary. Under such conditions, the hybrid radio receiver may switch its audio source from the broadcast signal to the wireless IP connection, which can incur significant network service charges and, if poor decisions are made regarding when to switch, result in poor audio quality from a listener's perspective. The hybrid radio receiver may employ switching techniques. Conventional methods for determining when to switch to the IP connection include monitoring a Received Signal Strength Indicator (RSSI) of the broadcast signal or deriving what is essentially an equivalent RSSI based on a known geographic location of the hybrid radio receiver and switching to the IP connection when the RSSI falls below a single threshold. The fact that the RSSI is an indirect indicator of audio quality and depends on a single threshold leads to a crude or clumsy, often flawed, switching decision that can be either too aggressive (i.e., too fast) or not aggressive enough (i.e., too slow). Consequently, the user / listener may experience poor audio quality and higher network service charges. Another technique involves comparing the hybrid radio receiver's location with predetermined geographic coordinates representative of a geofence boundary and triggering a switch to the IP connection based on the comparison. This technique can also produce a suboptimal switching decision because it does not take into account the actual reception conditions experienced by the hybrid radio receiver or the different reception performance associated with different types of hybrid radio receivers. Therefore, using the geofence as the basis for the switching decision can result in poor audio quality and higher charges. ML / 1 / ZUZ J / U4 / SZ J network services. Brief Description of the Drawings Figure 1 is a high niz / el block diagram of an example hybrid radio system. Figure 2 is a block diagram of an example of a hybrid radio receiver of the radio system and that implements a commin algorithm to derive a switching decision to use a broadcast signal or a wireless network connection as the audio content source, according to modalities described herein. Figure 3 is a flowchart of an example of the switching algorithm, which derives the switching decision based on a reception metric that indicates the audio quality associated with the broadcast signal. Figure 4 is a flowchart of an example of the switching algorithm. Figure 5 is a flowchart of another example of the switching algorithm. Description of Example Modalities Example Modalities The modalities described herein can be implemented in a "hybrid" radio receiver capable of reproducing audio (e.g., playing the audio) and metadata obtained from multiple wireless or "over-the-air" (OTA) sources that include both a broadcast source (e.g., a signal from ML / 1 / ZUZ J / U4 / SZ J broadcasting), also as a wireless network source (e.g., a wireless IP connection). As the hybrid radio receiver changes location, RF reception conditions can vary significantly due to signal strength, adjacent channel interference levels, and multipath interference. Therefore, it is important for the hybrid radio receiver to know which OTA source to select for audio and metadata at any given time for the best user listening experience at minimal cost. Although transmitting audio and metadata retrieved from a broadcast signal, such as an analog frequency modulation (FM) broadcast signal, is free for a user, the user may incur data charges when transmitting audio and metadata from an IP connection via a cellular data modem, for example.Furthermore, radio broadcasters may incur significant royalty charges for providing streaming services via IP connection and are therefore incentivized to ensure that users utilize the broadcast signal rather than the IP connection whenever possible. Accordingly, the modes described herein include a switching algorithm configured to produce a switching decision or force to use either the broadcast signal or the wireless IP connection as the best ML / 1 / J / U4 / J is the source from which to obtain audio and metadata based on a reception or audio quality metric (also referred to simply as the metric in the following description) that is derived from the broadcast signal and is indicative of audio quality. Field tests have shown that the switching decision is highly correlated with results obtained via subjective evaluations of the audio captured during mobile field tests, e.g., car driving tests. The switching algorithm ensures that the broadcast signal is selected as the audio source instead of the 1P connection when the audio quality is good, according to criteria established by the switching algorithm, thus satisfying the desire to minimize IP data usage from both a user's and the broadcaster's cost perspective. The metric processed by the switching algorithm to make the switching decision is readily available or easily derived by most modern FM car radio tuner integrated circuits (ICs). Such ICs calculate and generate a metric or metrics to control the soft muting and high-cut filtering of the internal audio. The metric reflects or is indicative of a rapidly changing level of unwanted audio fluctuations, which can be caused by interference from ML / 1 / ZUZ J / U4 / SZ J multiple trajectories, for example, that are perceptible to a listener. At a high level, the switching algorithm counts a respective number of times the metric crosses each of the two separate thresholds within a predetermined time period. The switching algorithm calculates / determines fluctuation indicators based on the respective number of crossings and then presents the source or switching decision to use either the broadcast radio signal or the wireless network connection as the audio and metadata source based on the metric's fluctuation indicators. Subjective listening tests of various car driving routes in the field have shown that the switching algorithm produces a switching decision that closely matches human listening preferences.This is because the human ear is sensitive to changes in audio quality, and the switching algorithm essentially counts fluctuations between good and bad audio quality. Advantageously, the switching algorithm: a. It is implemented as a low-cost solution in the hybrid radio receiver. b. It is based on a direct measure of audio quality that a user actually perceives versus Received Signal Strength Indicator (RSSI) values, which are indirect and therefore often inaccurate. c. It automatically adapts to various types of hybrid radio receivers and vehicle installation performance, by ML / 1 / ZUZ J / U4 / SZ J The switching algorithm does not stray too aggressively from high-quality audio recovered from a broadcast signal on high-quality radio receivers that have a high-performance antenna system. d. It provides direct adjustment of IP connection aggressiveness relative to broadcast source selection through simple adjustment of several threshold parameters and time intervals. Therefore, it is a direct extension for a radio station to provide aggressiveness settings for its broadcast station(s) via IP connection. d. The implementation of the switching algorithm in the hybrid radio receiver lends itself to direct testing / evaluation by generating a test RF signal and directly evaluating the switching decision; no location information is required. With reference to Figure 1, a high-level block diagram of an example radio system 100 is shown. Radio system 100 includes a radio transmitting station 102 for transmitting a radio transmit signal (equally referred to as the radio transmit signal), a network system 106 for transmitting a wireless network signal via a wireless network connection, and a mobile / portable hybrid radio receiver (Rx) 110 configured to implement the switching algorithm IVIA / t / ZUZ J / U4 ZUZÓ in accordance with the modalities described herein. In one example, the broadcast signal may include a conventional analog FM radio signal. In another example, the broadcast signal may include an analog amplitude modulated (AM) radio signal. The broadcast signal transmits / carries audio content to the hybrid radio receiver 110. The audio content includes audio and may or may not also include metadata, such as text, time information, and / or images. The audio content may include audio transmitted with metadata embedded in the audio, for example. The network system 106 includes a communication network 112 communicatively coupled to the network transmitter (Tx) 114 to transmit a wireless network signal. The communication network 112 may include one or more wide area networks (WANs), such as the Internet, and one or more local area networks (LANs), content programming producers, cellular networks, Wi-Fi networks, and the like. Examples of network transmitters 114 may include a cellular network associated with cellular networks, a transmitter operating according to the IEEE 802.11 protocol suite (e.g., Wi-Fi®), and so forth. The network transmitter 114 receives network data in the form of data packets from the communication network 112. The network transmitter 214 transmits the wireless network signal (e.g., a cellular or Wi-Fi signal) containing the data packets to the hybrid radio receiver 110, generally via the ML / 1 / ZUZ J / U4 / SZ J wireless network connection (e.g., a wireless IP connection) with the hybrid radio receiver. The wireless network signal can carry / transmit the same or different audio content as that transmitted by the broadcast signal. In addition, network transmitter 114 and broadcast station 102 can transmit their respective OTA signals and audio content simultaneously. The Hybrid Radio Receiver 110 implements the switching algorithm. Based on the metric described above, the Hybrid Radio Receiver 110 applies this switching algorithm to the broadcast signal and the wireless network signal (collectively referred to as the OTA received signals) to select one of the OTA received signals as the audio content source. The switching algorithm will be described in detail below in relation to Figures 3-5. Figure 2 is a functional block diagram of a portion of the hybrid radio receiver 110, according to one modality. The hybrid radio receiver 110 includes a broadcast receiver 202, a wireless network radio 204 (for example, an IP radio), a source selector or switch 206, and a receiver controller (also referred to simply as the controller) 210, all communicatively connected to each other. Portions of the broadcast receiver 202, portions of the wireless network radio 204, and ML t / ZUZ J / U4 / SZ J source selector 206 can be incorporated into the 220 controller. The broadcast receiver 202 includes an antenna 211, an RF tuner 212, a combined analog-to-digital converter (ADC) / frequency downconverter 214, a demodulator 216, and a metric derivative 218. The antenna 211 supplies a broadcast signal received by the antenna to the RF tuner 212. The broadcast signal carries / transmits audio content, which may include audio and metadata or audio only. The RF tuner 212 tunes to a desired RF channel of the broadcast signal, reduces the RF channel frequency to an intermediate frequency (IF) signal, and provides the IF signal to the ADC / frequency downconverter 214. The ADC / frequency downconverter 214 digitizes and reduces the IF signal frequency to a digitized baseband signal and provides the baseband signal to the demodulator 216. Demodulator 216 demodulates the baseband signal to audio content 222 and delivers the audio content to source selector 206. Demodulator 216 can also provide any metadata included in audio content 222 directly to controller 210. Examples of demodulator 216 include an FM demodulator for demodulating an FM broadcast signal and an AM demodulator for demodulating an analog AM broadcast radio signal. In summary, the ML / 1 / ZUZ J / U4 / SZ J broadcast receiver 202 is configured to recover audio content carried / transmitted by the broadcast radio signal, to produce audio content 222. Metric shunt 218 includes circuitry / logic configured to derive the reception metric P from / based on the broadcast signal. Metric shunt 218 can be integrated with tuner 212, ADC / frequency downconverter 214, and / or demodulator 216 to derive the audio quality metric P from RE, 1F, baseband, and / or demodulated audio signals, respectively. For example, when integrated or placed after demodulator 216, metric shunt 218 can derive or measure the metric P directly from audio content 222. The P metric indicates or is correlated with the audio quality in audio content for a listener at any given time. The P metric can represent an unprocessed and unweighted measure of audio quality. Time-varying or time-dependent fluctuations in the P metric (i.e., dynamic) are correspondingly indicative of audio quality fluctuations. When sufficiently large, the number and magnitude of dynamic P metric fluctuations with respect to time are correspondingly indicative of audio quality fluctuations that are likely to be perceptible and annoying to a listener. Therefore, the P metric can represent level fluctuations. ML / 1 / ZUZ J / U4 / SZ J or unwanted amplitudes in the broadcast signal (e.g., an FM broadcast signal) that are not present in the broadcast signal as originally transmitted and result in fluctuations in audio quality. These unwanted fluctuations can result from multipath conditions in the environment, for example. Therefore, the P metric can be referred to as the multipath metric or indicator. In summary, dynamic fluctuations in the P metric can be considered indicative of a degradation in audio quality for a listener. In one example, the metric derivative 218 may include a broadband AM detector that captures rapidly varying level fluctuations of an FM-modulated envelope of the broadcast signal at a granularity of approximately 1 or 2 milliseconds (ms). The broadcast receiver 202 provides the controller 210 with access to the P metric through an interface between the controller and the broadcast receiver. The radio network 204 includes an antenna 230, a wireless network interface (I / F) 232, and a packet processor 234. The wireless I / F network 232 establishes a bidirectional wireless network connection (e.g., an IP or other type of data connection) with a communication network via the antenna 230. The wireless I / F network 232 may include a Wi-Fi interface component and / or a component The ML / 1 / ZUZ J / U4 / UZJ cellular interface is used to transmit and receive wireless RE signals, for example. In the receive direction, the wireless I / E 232 receives data packets, encoded with audio content (e.g., audio and metadata), from the communication network and passes the data packets to the packet processor 234. The packet processor 234 decodes the data packets to recover the audio content (represented in 239). The packet processor provides the audio content 239 to the source selector 206 and can provide any metadata in the audio content directly to the controller 210. In the transmit direction, the network radio 204 wirelessly transmits data packets to the communication network. In one mode, the radio network, 204, monitors / determines the integrity or quality of the wireless network connection and provides an indicator or metric (referred to as the wireless network connection quality indicator) to the controller 210 that indicates whether the wireless network connection quality is good / acceptable (e.g., within a connection quality constraint) or poor / unacceptable (e.g., outside the quality constraint). The radio network, 204, can use any technique known or developed in the future to monitor the wireless network connection quality, including determining whether the data packet loss rate is within a quality constraint, and determining whether ML / 1 / ZUZ J / U4 / SZ J Data packet decoding errors are within a quality constraint, if a wireless network signal RSSI is within a quality constraint, and so on. Source selector 206 receives a switching signal SW(k) from controller 220, which controls the source selector. Controller 210 derives the switching signal SW(k) based on the switching algorithm, as described below. Based on the state of the switching signal SW(k), source selector 206 selects either audio content 222 retrieved from the broadcast signal by broadcast receiver 202 or audio content 239 retrieved from the wireless network connection by radio network 204 as output audio content 250. Source selector 206 can supply audio from output audio content 250 to an audio output interface or device (not shown in Figure 2), such as an audio port C or a speaker, for playback to a listener. Controller 210 controls broadcast receiver 202 and radio network 204 and, in one mode, is primarily responsible for implementing the switching algorithm. Controller 210 connects to and communicates with broadcast receiver 202 and radio network 204 via respective interfaces. Controller 210 includes processor(s) 260 and a ML / 1 / ZUZ J / U4 / SZ J Memory 262. Memory 262 stores control software 264 (referred to as control logic), which, when executed by the processor or processors 260, causes the processor or processors, and more generally, the controller 210, to perform the various operations described herein for the hybrid radio receiver 110. The processor or processors 260 may be a microprocessor or microcontroller (or multiple instances of such components). Memory 262 may include read-only memory (ROM), random-access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical memory devices, optical memory devices, or other physically tangible (i.e., non-transient) memory. The controller 210 may also be discrete logic integrated within an IC device. Therefore, in general, memory 262 may comprise one or more tangible (non-transient) computer-readable storage media (e.g., memory devices) encoded with c-firmware software comprising computer-executable instructions. For example, control software 264 includes logic for implementing switching algorithm operations performed by controller 210 and, more generally, by the hybrid radio receiver 110. Thus, control software 264 implements the various methods / operations described herein. ML t / ZUZ J / U4 / SZ J In addition, memory 262 stores data 266 used and produced by the control software 264. Figure 3 is a flowchart of an example switching algorithm 300 (also referred to simply as the algorithm) that can be implemented by the controller 210. At a high level, the algorithm periodically reads or collects input values or metric P samples from the broadcast receiver 202 at regular intervals, such as every 100 ms. The algorithm can use intervals smaller or larger than 100 ms. The algorithm repeats operations that operate on each current metric P value that is collected to derive a switching decision based on the value to use either the broadcast signal or the wireless network / wireless network connection signal as the audio source corresponding to the current value. Therefore, the operations represent either value-based or interval-based operations that derive the switching decision on a value-based / interval basis. For example, the algorithm (i) collects a first value of metric P and processes the first value in a first step through the operations to derive a first switching decision corresponding to the first value, (ii) collects a second value of metric P and processes the second value in a second step through the operations to derive a second switching decision corresponding to the second ML t / ZUZ J / U4 / SZ J value and so on. In the example above, when the second step through the operations is referred to as the current iteration or step, the first step is referred to as the previous iteration or step. In each current iteration, the algorithm derives a current switching decision based on (i) the current value of metric P, (ii) a number of previous values of the metric, and (iii) a previous switching decision. Relying on the current value, previous values, and previous switching decision to derive the current switching decision introduces hysteresis to the switching decision, which helps avoid overly aggressive switching between the broadcast signal and the wireless network connection as the audio content source, as RF reception conditions vary. The algorithm is now described in detail. In 302, the algorithm initializes the variables used by the algorithm and represented in Figure 3. Several variables and their initialization examples / default values are presented in the IVIA / t / ZUZ J / U4 / SZ J Table 1, below. Table 1 Input Variable Name Description Interval Default Value X Algorithm input value for metric P (e.g., multi-path) 0-100% 0 (No multi-path) k Sample iteration index Integer 0 D (output) Algorithm decision 0, 1 (Boolean) 0 (No listening) Thmüi Minimum input threshold 0-100% 5 Thmax Maximum input threshold 0-100% 18 N Number of input threshold decision averages 1-12000 averages 9 450 averages ThPromí Averaged input decision threshold 0-100% 50% Th(HoldO) Hold time for D=0 to D=1 Tans 0-120 s 40 seconds Th(HoldI) Hold time for D=1 to D=0 Tans 0-120s 15 seconds ML / 1 / ZUZ J / U4 / SZ J In 304, the algorithm receives or collects a new / current value x(k) of metric P from broadcast receiver 202, where k indicates a current iteration of the algorithm that will use the value x(k) to derive a current switching decision D(k) based on previous values x(k1), x(k-2), and so on, and based on a previous switching decision D(k1). In the following description, because the value x(k) represents the metric P, the value x(k) can be referred to as the metric itself or as metric x(k). In one example, the value x(k) might be an 8-bit value converted to a percentage from 0 to 100%. The lower and higher the value, the better or worse the audio quality. In other words, a degradation in audio quality increases with the x(k) value of the P metric. In another example, the lower and higher the value, the worse and better the audio quality. In 306a, the algorithm determines / evaluates whether the metric x(k) is above or below a minimum input threshold Thmin (also referred to as the first threshold), to produce a first decision value Ymin(k). The algorithm records the results of the threshold test 306a as follows: a. Is the metric x(k) > Thmm? Yes -> Ymin(k) = 1. No Ymin(k) = 0. As used herein, the term threshold means comparing a value against a threshold and recording the result; that is, determining whether the value is above or below the threshold and recording the result. The result can be recorded as a decision or binary state, for example. Furthermore, testing whether a value is above or below a threshold is more generally known as testing whether the value crosses the threshold. In parallel with 306a, in 306b, the algorithm determines whether the metric x(k) is above or below a maximum input threshold Thmax (also referred to as the second threshold) that is greater than the first threshold, to produce a second decision value Ymax(k). The algorithm records the results of the threshold test in 306b as follows: a. Is the metric x(k) > Thmax? Yes -> Ymax(k) = 1. No -½ Ymax (k) = 0. In 308a, the algorithm calculates / obtains a first average ML / 1 / ZUZ J / U4 / SZ J mobile sampler N Avg ymin(k) of / on the first current value decision of the current step through 306a and the Nl previous first value decisions of the previous Nl step through 306a, as follows: Avgymin(Ji)= ± Σίΐ'ο1ymin(k - i). ML / 1 / ZUZ J / U4 / SZ J More generally, Avg ymin(k) (that is, Avgyminik) above) represents an average of the number of times N values of metric P cross the first threshold in a given time period (for example, a time interval, N). The average represents a measure of, or quantifies, fluctuations of metric P around the first threshold in the given time period that may be perceptible to a listener. In parallel with 308a, in 308b, the algorithm calculates / obtains a second sample moving average N Avg ymax(k) of / over the second current value decision of the current step through 306b and the Nl previous second value decisions of the Nl previous steps through 306b, as follows: Avgymax(k)= ± Zt^ymaxík - i). More generally, Avg ymax (k) (that is, Avgyma;.:(k) above) represents an average of the number of times N values of metric P cross the second threshold in a given time period (e.g., a time period of interval N). The average quantifies the fluctuations of metric P around the second threshold in the given time period and that may be more noticeable to a listener than the fluctuations of metric P around the first, lower threshold. In 310a, the algorithm determines / evaluates whether the first sample moving average N Avg ymin(k) is above or below a minimum average threshold PhAvg2 (also referred to as the first average threshold or first fluctuation threshold), in order to produce a first moving average decision Minout(k) (also referred to simply as the first average decision and first fluctuation indicator). The algorithm records the results of the threshold test 310a as follows: a. Is the moving average Avg ymin(k) > ThAvg2? Yes -½ Minout(k) = 1. No -> Minout(k) = 0. Minout(k) — 1 is an indication that the number and magnitude of fluctuations in metric P in a given time period are large enough to cause degradation (e.g., a first level of degradation) in audio quality that is both noticeable and annoying to a listener; however, this may not be the worst audio degradation. In 310b, the algorithm determines / evaluates whether the second sample moving average N Avg ymaso (k) is above or below a threshold average PhAvg2 (also called IVIA / t / ZUZ J / U4 / SZ J (as a second average threshold or second fluctuation threshold), to produce a second moving average decision Maxout(k) (also referred to simply as a second average decision and a second fluctuation indicator). In one example, the average, maximum, and minimum thresholds are equal. In another example, they are different. The algorithm records the results of threshold test 310b as follows: a. Is Avg ymax(k) > ThAvg2? Yes -½ Maxout(k) = 1. No -> Maxout(k) = 0. Maxout(k) = 1 indicates that the number and magnitude of fluctuations in the P metric over a given time period are large enough to cause degradation (e.g., a second level of degradation that is higher than the first level of degradation associated with Plinout(k) = 1) in audio quality that is noticeable and perceptible to a listener. This indicates the worst audio degradation (relative Minout(k) — In 314, the algorithm derives a switching decision D(k) based on the first average decision / fluctuation indicator Minout(k), the second average decision / fluctuation indicator Maxout(k), and the previous switching decision D(kl), collectively referred to as the state descriptor. It should be noted that the moving averages Avg ymin(k) and Avg ymax(k) represent intermediate fluctuation indicators, while ML / 1 / ZUZ J / U4 / SZ J that the average decisions Minout(k), Maxout(k) represent final fluctuation indicators for the algorithm. The switching decision D(k) is a decision to use the broadcast signal or the wireless network connection as the audio content source. In an example described herein, the switching decision D(k) includes binary states or values (0,1), where 0 indicates using the wireless network signal / wireless network connection and 1 indicates using the broadcast signal as the audio content source. Operation 314 implements a decision matrix to derive the switching decision D(k). The decision matrix has the following binary inputs and outputs for switching decision D(k). a. Tickets: i. Previous switching decision D(kl) - (0,1) . ii. First average decision / fluctuation indicator Minout(k) - (0,1). iii. Second average decision / fluctuation indicator Maxout(k) - (0,1). b. Output: switching decision D(k) based on state descriptor / inputs (D(k-1) : Minout ( k) : Maxout(k) ) : i. 0:0:1 or 1:0:1 entries Illegal State (reboot process). Maxout(k) must not ML / 1 / ZUZ J / U4 / UZJ be high (indicating a high level of audio degradation / poor audio quality) when Minout(k) is low (indicating a low level of audio degradation). ii. 0:0:0 Inputs (low metrics - indicates low audio degradation, good audio quality) Output D(k) = 1. Switches from wireless network connection to broadcast signal. ΜΛ / 1 / J / U4 / J iii. Inputs 0:1:0 or 0:1:1 Output D(k) = 0 (no state change). The previous switching decision is followed, so it remains on the wireless network connection. iv. 1:0:0 or 1:1:0 Inlets Output D(k) = 1 (no state change). The previous switching decision is followed, so it remains in the broadcast radio signal, because the audio degradation is not that bad. This introduces hysteresis that keeps the switching decision in the broadcast signal, although Minout(k) indicates that audio degradation due to fluctuations has exceeded a first level, at least while Maxout(k) 0; the switching decision will only change to the wireless network connection when the audio degradation due to fluctuations has also exceeded a second level, that is, when Minout(k) = 1 and Maxout(k) = 1 (see (v) below). v. 1:1:1 Inputs (high metrics: indicates high audio degradation) Output D ( k ) = 0. In 316, the algorithm extends the time or delays the switching decision D(k) to produce the switching signal SW(k) (or output SW(k)) that follows the switching decision. In other words, operation 316 outputs SW(k) as a delayed aversion of the switching decision D(k), subject to the conditions described below. The purpose of extending the switching decision time D(k) to SW(k) is to avoid overly aggressive changes between audio sources that could be jarring to the listener. The pulse-extension feature of operation 316 is optional.For the example described below, the output SW(k) includes binary states or values (0,1) similar to the switching decision D(k), where 0 or 1 causes the source selector 206 to select either audio content 239 from the wireless re-i connection or audio content 222 from the broadcast signal as output audio content 250, respectively. Operation 316 derives the output SW(k) based on (i) a continuously running wait timer implemented by controller 210 and presenting a Time Value to the algorithm at any given time and (ii) wait timer logic to reset the timer based on decision logic evaluated on the current switching decision ML t / ZUZ J / U4 / SZ J D(k), -pre-switching decision D(k —1) the Value of 1 Timer and timer threshold values Th(HoldO) and Th(Holdl). In 318, the wait timer logic reads the Timer Value, receives switching decisions D(k) :D(k-1) and implements the following wait time decision matrix / logic which has the inputs and outputs (Output SW(k)) shown below. a. Tickets: i. Previous switching decision D(kl). ii. Current commutation decision D(k). iii. Timer value. b. Output SW(k) based on inputs D(kl):D(k) and the Timer Value: i. 0:0 or 1:1 - There is no change between D(kl) and D(k), because D(k) follows D(kl) SW(k) = D(k), No change, No timer reset (322). ii. 1:0 - Wireless network connection switching decision transition to broadcast signal. Is the Timer value > Th(Holdl)? (324) If SW(K) = 0, Reset Timer (326). No -½ SW(k) = D(k), No change, No Reset Timer (328). iii. 0:1 - Is the Timer Value > Th(HoldO)? (330) If SW(k) 1, Reset Timer (332) . ML t / ZUZ J / U4 / SZ J No SW(k) = D(k), No change, No Reset Timer i 334) . In one mode, the algorithm can rate switching decisions that result in a transition from using the broadcast signal to using the wireless network connection as the audio content source (for example, see the switching decision summarized in paragraph 4.5(b)(v) above). The algorithm can rate such a switching decision based on the wireless network connection quality indicator provided by radio network 204, discussed earlier in relation to Figure 2. For example, whenever the switching decision results in a change from the broadcast signal to the wireless network connection, the algorithm first determines whether the wireless network connection quality indicator shows that the wireless network connection is good or bad. When the wireless network connection is good, the algorithm allows the switching / transition.When the wireless network connection is poor, the algorithm does not allow switching; that is, it cancels the switching decision. In this latter case, the algorithm maintains the connection to the broadcast signal as the audio content source. In short, the algorithm determines whether to cancel a switching decision that would result in the transition from using the broadcast signal as the agreed audio source to using the [unclear]. ML / 1 / ZUZ J / U4 / UZJ wireless network connection as the audio content source based on the wireless network connection quality indicator: poor quality - cancel, good quality - do not cancel. As described above, the values of several parameters / variables of the switching algorithm influence the results of the operations performed by the switching algorithm. The parameters include, for example, a time interval for collecting metric P values, a number (N) of decisions to be averaged, first, second, and third thresholds (Thmin, Thma, and ThAvgl, respectively), and timer thresholds (Th(Holdl) and Th(Hol-dl). The parameter values drive the aggressiveness—that is, how frequently the switching algorithm switches between the broadcast signal and the wireless network connection.For example, lower values versus higher values for Thmin and Thma thresholds tend to increase versus decrease the aggressiveness of switching between sources, that is, how frequently the switching algorithm switches between a decision to use the broadcast signal and a decision to use the wireless radio network. In addition to increasing the aggressiveness of the switching decision, the parameter values can be configured (i.e., set) to favor the broadcast signal over the wireless network connection, based on the previous source decision and jitter indicators. Alternatively, the parameter values can be configured to favor the wireless network connection over the broadcast signal, based on the previous source decision and jitter indicators. In one mode, the parameter / variable values are configurable / programmable. Initial values can be programmed during a pre-configuration / provisioning operation performed on the hybrid radio receiver. Subsequently, the parameter values can be dynamically updated / programmed over time by a radio transmitter to achieve the desired signal strength and switching aggressiveness, and to obtain a desired switching decision bias in favor of the broadcast signal or the wireless network connection. To dynamically update the parameters, a radio transmitter can be configured to transmit a parameter update command / message as a data packet to the hybrid radio receiver via the wireless network connection.The parameter update command may include (i) an IP address for the radio network (i.e., one that matches the one assigned to the radio network), (ii) a Message Type Identifier (MTI) to identify the message as a parameter update message for. ML / 1 / ZUZ J / U4 / UZO the switching algorithm, (iii) identifiers of the switching algorithm parameters to be updated and (ios) update values for the identified parameters. An example parameter update command is shown below in Table 2. Table 2 Radio Network IP Address Message / Command Type = Update Parameter Parameter 1: Update value Parameter 2: Update value Parameter 3: Update value After receiving the data packet containing the parameter update command (recognized by the radio network based on packet analysis to retrieve and identify the IP address and message / command type), the radio network retrieves the update values for the identified parameters from the parameter update command and updates the parameters identified in the switching algorithm with their corresponding update values. In summary, the switching algorithm includes operations that derive jitter indicators based on parameters with programmable values that influence the frequency with which the switching algorithm's decision switches between the broadcast signal and the wireless network connection, as well as a source selection deviation associated with the switching decision. The dynamic update of The parameters may include receiving update values for the parameters via the wireless network connection in a parameter update command and updating the parameters with the update values from the parameter update command to adjust the frequency (i.e., the aggressiveness) of the switching decision that switches between the broadcast signal and the wireless network connection and / or to adjust the switching decision deviation. The aforementioned parameter update technique has the advantage that the same parameter values affect all hybrid radio receivers being sent equally in terms of perceived audio quality, regardless of their antenna system / radio quality.Therefore, the parameter update technique allows a broadcaster to provide a certain level of quality, which over time could favor wireless network connection or broadcast signal as the commercial climate changes (e.g., transmission royalty charges decrease). Figure 4 is a flowchart of an example method 400 for deriving the switching decision based on the metric P; that is, a method implemented by the switching algorithm. Method 400 can be implemented primarily by a controller (e.g., controller 210) on a hybrid radio receiver (e.g., radio receiver ML / 1 / ZUZ J / U4 / UZO hybrid 110) configured to retrieve audio content separately from a broadcast signal and a wireless network connection. In 402, at periodic intervals, the controller collects values (for example, x(k)) of a metric (for example, metric P) that indicates the audio quality of the audio content in the broadcast signal. At each interval (for example, for each k), the controller performs operations 404-410, described below. In 404, the controller calculates a first average (for example, first moving average Avg min(k)) of how many of N metric values (including a current value and N previous values) exceed / cross a first threshold (for example, Thmin) and calculates a second average (for example, Avg max(k)) of how many of the N values exceed a second threshold (for example, Thma) that is greater than the first threshold. In one example, the first average averages first value decisions (for example, Ymin(k)) that result from setting the threshold of values against the first threshold, and the second average averages second value decisions (for example, Ymax(k)) that result from setting the threshold of values against the second threshold. In 406, the controller obtains a first average decision / fluctuation indicator (e.g., Minout(k)) and a second average decision / fluctuation indicator (Maxout(k)) IVIA / t / ZUZ J / U4 / SZ J to indicate whether the first average and second average exceed a third threshold (e.g., ThAvgl), respectively. In 408, the controller derives a source decision (e.g., D(k)) to use either the broadcast signal or the wireless network connection as the audio content source based on a previous source decision (e.g., D(k-1)), the first average decision / jitter indicator (e.g., Minout(k)), and the second average decision / jitter indicator (Maxout(k)). The previous source decision, the first average decision, and the second average decision may include binary decisions, respectively, and collectively represent a state descriptor that is evaluated for each interval. The controller derives the switching decision based on the state descriptor to skew the switching decision in favor of the broadcast signal over the wireless network connection, or in favor of the wireless network connection over the broadcast signal, and to introduce hysteresis to the switching decision. In 410, the controller selects the broadcast signal or the wireless network connection as the audio content source based on the switching decision (e.g., SW(k) follows D(k)). Figure 5 is a flowchart of another method - of ML / 1 / ZUZ J / U4 / SZ J Example 500 to derive the switching decision based on the P metric. Method 500 can be performed primarily by a controller on a hybrid radio receiver configured to retrieve audio content separately from a broadcast signal and a wireless network connection. In 502, the controller receives values (for example, x(k)) from a metric (for example, from the P metric) that indicate the audio quality of the audio content in the broadcast signal at any given time. In 504, the controller calculates / derives, from fluctuations in the metric values over time, fluctuation indicators (i.e., fluctuation indicators) of audio signal fluctuations that are likely to be perceptible to a listener. The 504 controller can calculate the fluctuation indicators (represented by Avg ymin(k), Minout(k), Avg ymax(k), and Maxout(k), for example) using the operations described above in relation to Figures 3 and 4. For example, the controller calculates a first fluctuation indicator (e.g., Avg_ymin(k), Minout(k)) based on / as a function of a first number of times the metric values cross a first threshold (e.g., Thmm) during a period of time and calculates a second fluctuation indicator (e.g., Avg_ymax(k), Maxout(k)) based on / as a function of a second number of times the values of the ML / 1 / ZUZ J / U4 / SZ J metric cross a second threshold (e.g., Téma·! during the time period. Furthermore, the first fluctuation indicator can be based on a first average of the first number of times the values cross the first threshold and the second fluctuation indicator can be based on a second average of the second number of times the values cross the second threshold. In 506, the controller derives a switching decision (e.g., D(lz)) to use either the broadcast signal or the wireless network connection as the audio content source, based on a previous switching decision (e.g., D(kl)) and jitter indicators (e.g., first jitter indicator Minout(k), second jitter indicator Maxout(k)) to introduce hysteresis into the switching decision and favor the broadcast signal (or alternatively, the wireless network connection). The controller refines the switching decision according to the following decision matrix: a. (0:0:0, operation 314 (ii) above) When- the previous switching decision is to use the wireless network connection and the first jitter indicator and the second jitter indicator do not exceed a jitter threshold (e.g., ChAvg2), set the switching decision to use the broadcast signal (e.g., D(k)=l). b. (0:1:0 or 0:1:1, operation 314(iii) above) When the ML / 1 / ZUZ J / U4 / SZ J previous switching decision is to use the wireless network connection and at least the first jitter indicator exceeds the jitter threshold, the switching split follows the previous switching decision. c. (1:0:0 or 1:1:0, operation 314(iv) above) When the previous switching decision is to use the broadcast signal, the first jitter indicator exceeds or does not exceed the jitter threshold and the second jitter indicator does not exceed the jitter threshold, the switching decision follows the previous switching decision. This introduces hysteresis because the switching decision maintains its current configuration even when the first switching decision exceeds the jitter threshold and continues until the second jitter decision also exceeds the jitter threshold; at which time the switching decision returns to the wireless network connection (see (d) below). d. (1:1:1, operation 314(v) above) When the previous switching decision is to use the broadcast signal and the first jitter indicator and the second jitter indicator each exceed the jitter threshold, set the switching decision to use the wireless network connection. In 508, the controller selects the signal from ML t / ZUZ J / U4 / SZ J broadcasting or wireless network connection as the source of the audio content based on the switching decision. In other configurations, the hybrid radio receiver 110 may further include a radio receiver configured to process a digitally modulated radio signal, such as an HD radio signal, to retrieve audio content from the digitally modulated radio signal separately from the radio network 204 and to provide the audio content to the source selector 206. The radio receiver may replace or be added to the broadcast receiver 202. The radio receiver may monitor the quality of the digitally modulated radio signal and provide an indicator or metric (similar to the P metric) that indicates this quality to the controller 210. The controller 210 may implement a switching algorithm similar to the one described above to make a switching decision to use either the digitally modulated radio signal or the wireless network signal as the audio content source. In summary, in one embodiment, a method is provided comprising: in a hybrid radio receiver configured to retrieve audio content separately from a broadcast signal and a wireless network connection: receiving a reception metric that indicates the audio quality of the audio content in the broadcast signal at any given time; deriving, from fluctuations in the reception metric over time, fluctuation indicators ML / 1 / ZUZ J / U4 / SZ J indicating fluctuations in audio quality that are likely to be perceptible to a listener; deriving a switching decision to use the broadcast signal or wireless network connection as the audio content source, based on a previous switching decision and the fluctuation indicators, and selecting the broadcast signal or wireless network connection as the audio content source based on the switching decision. In another embodiment, an apparatus in the form of a hybrid radio receiver is provided comprising: a broadcast receiver for retrieving audio content from a broadcast signal and deriving a metric that indicates the audio quality of the audio content at any given time;a network radio for retrieving audio content from a wireless network connection and a controller to: derive jitter indicators indicative of audio quality likely to be perceptible to a listener by (i) deriving a first jitter indicator based on the number of times the metric crosses a first threshold during a period of time and (ii) deriving a second jitter indicator based on the number of times the metric crosses a second threshold that is greater than the first threshold during the period of time and make a switching decision to use either the broadcast signal or the wireless network connection as the audio content source, based on a switching decision; ML t / ZUZ J / U4 / SZ J previous, the first fluctuation indicator and the second fluctuation indicator to introduce hysteresis in the switching decision. In yet another modality, a non-transient, computer-readable medium is provided. The medium is encoded with instructions that, when executed by a processor in a hybrid radio receiver configured to retrieve audio content separately from a broadcast signal and a wireless network connection, cause the processor to: at periodic intervals, collect values of a metric indicating the audio quality of the audio content in the broadcast signal and, at each interval, calculate a first average of how many N values of the metric exceed a first threshold and calculate a second average of how many of the N values exceed a second threshold that is greater than the first threshold;obtain a first average decision and a second average decision to indicate whether the first average and the second average exceed a third threshold, respectively, and obtain a switching decision to use the broadcast signal or the wireless network connection as the audio content source based on a previous source decision, the first average decision, and the second average decision, and select the audio content source based on the switching decision. ML / 1 / ZUZ J / U4 / SZ J Although the techniques are illustrated and described herein and implemented in one or more specific examples, it is not intended to be limited to the details shown, as various modifications and structural changes can be made within the scope and range of equivalents of the 5 claims. Each claim presented below represents a separate embodiment, and embodiments that combine different claims and / or different embodiments are within the scope of the description and will be evident to those skilled in the art after reviewing this description.
Claims
1. A method, characterized in that it comprises: in a hybrid radio receiver configured to retrieve audio content separately from a broadcast signal and a wireless network connection: receiving a reception metric that indicates the audio quality of the audio content in the broadcast signal at any given time; deriving, from fluctuations in the reception metric over time, jitter indicators that indicate fluctuations in audio quality likely to be perceptible to a listener; deriving a switching decision to use either the broadcast signal or the wireless network connection as the audio content source based on a previous switching decision and the jitter indicators; and selecting either the broadcast signal or the wireless network connection as the audio content source based on the switching decision.
2. The method of claim 1, characterized in that deriving includes deriving the switching decision based on the previous switching decision and the fluctuation indicators to introduce hysteresis to the switching decision. ML / 1 / J / U4 / J 3. The method of claim 1, characterized in that: deriving the fluctuation indicators includes: calculating a first fluctuation indicator based on a first number of times the reception metric crosses a first threshold during a period of time and calculating a second fluctuation indicator based on a second number of times the reception metric crosses a second threshold that is greater than the first threshold during the period of time and deriving the switching decision includes deriving the switching decision based on the first fluctuation indicator, the second fluctuation indicator and the previous switching decision.
4. The method of claim 3, characterized in that deriving the switching decision includes: when the previous switching decision is to use the wireless network connection and the first jitter indicator and the second jitter indicator each do not exceed a jitter threshold, deriving the switching decision to use the broadcast signal.
5. The method of claim 4, characterized in that deriving the switching decision includes: when the previous switching decision is to use the broadcast signal and the first jitter indicator and the second jitter indicator each exceed the jitter threshold, deriving the switching decision to use the ML / 1 / ZUZ J / U4 / UZJ 43 wireless network connection.
6. The method of claim 3, characterized in that deriving the switching decision includes: when the previous switching decision is to use the broadcast signal, the first jitter indicator exceeds or does not exceed a threshold and the second jitter indicator exceeds a jitter threshold, following the previous switching decision. The method of claim 6, characterized in that deriving the switching decision includes: when the previous switching decision is to use the wireless network connection and at least one of the first jitter indicator and the second jitter indicator exceeds the threshold, following the previous switching decision.
8. The method of claim 1, characterized in that the audio content includes audio and metadata.
9. The method of claim 1, characterized in that deriving the switching decision includes deriving the switching decision without using the Received Signal Strength Indicator (RSSI) values for the broadcast signal.
10. The method of claim 1, characterized in that the reception metric is derived from the audio content recovered from the broadcast signal.
11. The method of claim 1, characterized in that the broadcasting signal includes a frequency modulated (FM) broadcasting signal ML / 1 / ZUZ J / U4 / SZ J.
12. The method of claim 1, characterized in that the wireless network connection includes a cellular or Wi-Fi connection.
13. The method of claim 1, characterized in that deriving the fluctuation indicators includes deriving the fluctuation indicators based on parameters having programmable values that influence the frequency with which the switching decision effects the switching between the broadcast signal and the wireless network connection, and the method further comprises: receiving update values for the parameters through the wireless network connection and updating the parameters with the update values to adjust the frequency with which the switching decision effects the switching between the broadcast signal and the wireless network connection.
14. A hybrid radio receiver, characterized in that it comprises: a broadcast receiver for retrieving audio content from a broadcast signal and obtaining a metric that indicates the audio quality of the audio content at any given time;a network radio for retrieving audio content from a wireless network connection and a controller for: deriving jitter indicators indicative of audio quality that is presumably perceptible to a listener by (i) deriving a first jitter indicator based on the number of times the metric crosses a first threshold during a period of time and (ii) deriving a second jitter indicator based on the number of times the metric crosses a second threshold that is greater than the first threshold during the period of time and deriving a switching decision to use the broadcast signal or the wireless network connection as the audio content source, based on a previous switching decision, the first jitter indicator and the second jitter indicator to introduce hysteresis to the switching decision.
15. The hybrid radio receiver of claim 14, characterized in that the controller is further configured to perform: selecting the audio content source based on the switching decision.
16. The hybrid radio receiver of claim 14, characterized in that: the controller is configured to derive the first fluctuation indicator by calculating a first average of the number of times the metric crosses the first threshold and the controller is configured to derive the second fluctuation indicator by calculating a second average of the number of times the metric crosses the second threshold.
17. The hybrid radio receiver of claim 16, characterized in that: the controller is further configured to effect the derivation of the first fluctuation indicator by setting the threshold of the first average against an average threshold, to produce the first fluctuation indicator, and the controller is further configured to effect the derivation of the second fluctuation indicator by setting the threshold of the second average against the average threshold, to produce the second fluctuation indicator.
18. The hybrid radio receiver of claim 14, characterized in that the controller is configured to derive the switching decision without using Received Signal Strength Indicator (RSSI) values for the broadcast signal.
19. A non-transient encoded computer-readable medium) with instructions that, when executed by a processor of a hybrid radio receiver, configured to retrieve audio content separately from a broadcast signal and a wireless network connection, cause the processor to: at periodic intervals, collect values of a metric indicating the audio quality of the audio content in the broadcast signal and, at each interval, perform: calculating a first average of how many N values of the metric exceed a first threshold and calculating a second average of how many of the N values exceed a second threshold that is greater than the first threshold;obtain a first average decision and a second average decision to indicate whether the first average and second average exceed a third threshold, respectively, and derive a switching decision to use either the broadcast signal or the wireless network connection as the audio content source based on a previous source decision, the first average decision, and the second average decision, and select the audio content source based on the switching decision.
20. The non-transient, computer-readable medium of claim 19, characterized in that it further comprises instructions for causing the processor to perform, at each mentioned interval: obtaining a first current value decision indicating whether a current value of the metric exceeds the first threshold, wherein calculating the first average includes calculating the first average as a first moving average of the first current value decision and previous first value decisions, and obtaining a second current value decision indicating whether the current value exceeds the second threshold, wherein calculating the second average includes calculating the second average as a moving average of the second current value decision and previous second value decisions.
21. The non-transient computer-readable medium of claim 19, characterized in that the derivation is diverted in favor of the broadcast signal with respect to the wireless network connection based on the previous source decision, the first average decision, and the second average decision.
22. The non-transient computer-readable medium of claim 19, characterized in that the derivation is diverted in favor of the wireless network connection with respect to the broadcast signal based on the previous source decision, the first average decision, and the second average decision.