Long-duration error correction for fast channel changes in ATSC 3.0 real-time broadcast mobile applications

By using reverse channel buffering lost packets and multi-antenna tuning technology in ATSC 3.0 mobile receivers, the image interruption problem caused by signal loss is solved, fast channel switching and error correction are achieved, and stable playback of the mobile receiver is ensured.

CN116097656BActive Publication Date: 2025-08-05SONY GROUP CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202280006158.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-01-04
Filing Date
2022-01-01
Publication Date
2025-08-05
Estimated Expiration
2042-01-01

AI Technical Summary

Technical Problem

ATSC 3.0 signals are susceptible to signal loss or attenuation in mobile receivers, resulting in image loss. The existing error correction mechanism cannot effectively deal with the problem of long-term signal loss.

Method used

Buffering and replacing lost or damaged packets with reverse channels such as cellular telephone systems or Wi-Fi, combined with multi-antenna and multi-tuner technologies to enable fast channel change and buffer management.

Benefits of technology

Fast error correction and channel switching when signal is lost is realized, ensuring continuous video playback of mobile receivers and reducing channel change delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116097656B_ABST
    Figure CN116097656B_ABST
Patent Text Reader

Abstract

Techniques are described for using the Advanced Television Systems Committee (ATSC) 3.0 television protocol to robustly deliver (400) TV programming to mobile receivers while ensuring error correction (408).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to technological advancements necessarily rooted in computer technology and directed to digital television, and more particularly, to Advanced Television Systems Committee (ATSC) 3.0. Background Art

[0002] The Advanced Television Systems Committee (ATSC) 3.0 suite of standards is a set of more than a dozen industry technology standards for delivering next-generation broadcast television, as designated in ATSCA / 300. ATSC 3.0 supports the delivery of a wide range of television services, including, but not limited to, television video, interactive services, non-real-time delivery of data, and customized advertising to a wide range of receiving devices, from ultra-high-definition televisions to wireless phones. ATSC 3.0 also arranges for the coordination of broadcast content (referred to as "over the air") with related broadband-delivered content and services (referred to as "over the top"). ATSC 3.0 is designed to be flexible so that as technology evolves, advancements can be easily incorporated without requiring comprehensive revisions to any of the relevant technical standards. The present principles, as described below, are directed to such advancements. Summary of the Invention

[0003] As understood herein, signal loss or attenuation due to overpasses, tunnels, mountains, and tall buildings can impair reception of ATSC 3.0 signals by mobile receivers. Signal loss can last for up to several minutes. Furthermore, while ATSC 3.0 provides error correction as part of its modulation scheme to overcome many perceived signal impairments, if the signal is lost for more than a second or two, the image may be completely lost.

[0004] As further appreciated herein, memory and processing power are becoming increasingly inexpensive. Therefore, the present principles utilize an infrastructure that allows a receiving device (e.g., mobile TV) to request packets from the broadcaster to replace lost or damaged packets in the receiver's large (10-15 minute) buffer. The replacement packets can be received from a back channel, such as a cellular telephone system (such as 5G or 4G), or, when Wi-Fi is available, the back channel can be Wi-Fi.

[0005] To address channel change delays caused by the use of large buffers, multiple channels in the same multiplex as the currently tuned channel can be buffered so that tuning can be performed immediately in response to a channel change. Alternatively, multiple channels in different multiplexes (received by a second tuner) can be buffered. Multiple antennas can be used to allow tuning to and buffering of multiple different signals (rather than the exact same signal) to perform error-free fast channel change functionality.

[0006] Thus, a digital television (TV) system includes at least one mobile receiver, the at least one mobile receiver including at least one processor programmed with instructions to receive a first digital TV broadcast stream. The instructions are executable to store at least one time segment of the first stream in at least one buffer before presenting the first stream. Furthermore, the instructions are executable to identify at least one packet difference in the first stream and request data from at least one backchannel source to eliminate the packet difference. The instructions are executable to receive the data from the backchannel source, insert the data into the buffer to eliminate the packet difference, and play the first stream from the buffer.

[0007] In an example embodiment, the back-channel source includes at least one wireless telephone network and / or at least one Wi-Fi source.

[0008] In some embodiments, the packet differences include lost packets and / or damaged packets.

[0009] In a non-limiting example, the instructions may be executed to buffer at least a second stream concurrently with buffering the first stream. The second stream may be received in a multiplex containing the first stream, or the first stream may be received at a first tuner of the mobile receiver and the second stream may be received at a second tuner of the mobile receiver.

[0010] In some examples, the instructions may be executed to receive a channel change command to present a new channel. In these examples, the instructions may be executed to, in response to the channel change command, determine whether packets associated with the new channel are in the buffer, and in response to determining that packets associated with the new channel are in the buffer, immediately access the packets associated with the new channel from the buffer and present the new channel. The instructions may be executed to, in response to determining that packets associated with the new channel are not in the buffer, begin buffering packets for the new channel for a second period that is shorter than the first period. The instructions may be executed to present the new channel.

[0011] Furthermore, in these last examples, the instructions may be executed to determine whether to add the new channel to a set of streams to be buffered for the first period of time, and in response to identifying that the new channel should be added to the set of streams to be buffered for the first period of time, the new channel is added to the set.

[0012] In a non-limiting embodiment, the instructions may be executed to identify at least one failure period associated with at least one path. The failure period may be a period during which broadcast digital TV cannot be received. The instructions may be executed to establish the first time period based at least in part on the failure period.

[0013] In a non-limiting embodiment, the instructions may be executed to receive a command to stop presenting digital TV on the mobile receiver. In response to the command to stop presenting, the instructions may be executed to continue buffering at least one digital TV stream in the buffer. In response to the command to start playing digital TV on the mobile receiver, the instructions may be executed to identify whether packets associated with the stream to be played are in the buffer, and in response to determining that packets associated with the stream to be played are not in the buffer, begin buffering packets of the stream to be played for a second period that is shorter than the first period. The instructions may also be executed to play the stream to be played from the buffer, create a duplicate buffer of the stream to be played having a period longer than the second period, and selectively switch to playing packets in the duplicate buffer.

[0014] In another aspect, an assembly includes at least one mobile receiver for digital television; at least one digital television over-the-air (OTA) source of wireless digital TV signals, from which the mobile receiver can receive the wireless digital TV signals; and at least one backchannel source of wireless digital TV alternative content, from which the mobile receiver can receive the wireless digital TV alternative content. The backchannel source includes at least one wireless telephone network or at least one Wi-Fi source, or both.

[0015] In another aspect, a method includes broadcasting a digital TV signal to at least one mobile receiver and sending replacement packets for defective or lost packets in the digital TV signal to the mobile receiver from a cellular telephone network or a Wi-Fi source.

[0016] The details of the present application, both as to its structure and operation, may be best understood with reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which: BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 is a block diagram of the Advanced Television Systems Committee (ATSC) 3.0 system;

[0018] Figure 2 Yes Display Figure 1 A block diagram of the components of the device shown in ;

[0019] Figure 3An example assembly with a mobile receiver, an OTA ATSC 3.0 source, and a corrected packet backchannel source is illustrated;

[0020] Figure 4 and Figure 5 illustrates example logic in an example flow chart format for buffering and error correction performed by a mobile receiver;

[0021] Figure 6 illustrates example logic in an example flow chart format for dynamically establishing a buffer size based on expected failure areas along a path; and

[0022] Figure 7 Example logic in an example flow chart format for a cold start of a mobile receiver is illustrated. DETAILED DESCRIPTION

[0023] The present disclosure relates to technological advances in digital television, such as technological advances in Advanced Television Systems Committee (ATSC) 3.0 television. Example systems herein may include an ATSC 3.0 source component and a client component that are connected via broadcast and / or through a network so that data can be exchanged between the client and the ATSC 3.0 source component. The client component may include one or more computing devices, including portable televisions (e.g., smart TVs, Internet-enabled TVs), portable computers (such as laptop computers and tablet computers), and other mobile devices including smartphones and additional examples discussed below. These client devices may operate with various operating environments. For example, some client computers may utilize, for example, an operating system from Microsoft, a Unix operating system, or an operating system produced by Apple Computer or Google (such as These operating environments can be used to execute one or more browsing programs, such as browsers produced by Microsoft, Google, or Mozilla, or other browser programs capable of accessing websites hosted by Internet servers discussed below.

[0024] ATSC 3.0 source components may include broadcast transmission components and servers and / or gateways, which may include one or more processors that execute instructions that configure the source components to broadcast data and / or transmit data over a network such as the Internet. such as a gaming console, personal computer, etc. to instantiate the client component and / or local ATSC 3.0 source component.

[0025] Information can be exchanged over the network between the client and the server. For this purpose and for security, the server and / or the client may include firewalls, load balancers, temporary storage devices and proxies, and other network infrastructure for reliability and security.

[0026] As used herein, instructions refer to computer-implemented steps for processing information in a system. Instructions can be implemented in software, firmware, or hardware, and include any type of programmed steps performed by components of the system.

[0027] The processor may be a general-purpose single-chip or multi-chip processor capable of executing logic through various lines such as address lines, data lines, and control lines, as well as registers and shift registers.

[0028] The software modules described herein by way of flowcharts and user interfaces may include various subroutines, processes, and the like. Without limiting the present disclosure, the logic described as being performed by a particular module may be reassigned to other software modules and / or combined together in a single module and / or provided in a sharable library. While a flowchart format may be used, it is understood that the software may be implemented as a state machine or other logic method.

[0029] The present principles described herein may be implemented as hardware, software, firmware, or a combination thereof; therefore, illustrative components, blocks, modules, circuits, and steps are described in terms of their functionality.

[0030] In addition to those mentioned above, the logic blocks, modules, and circuits may be implemented or executed using a processor, a digital signal processor (DSP), a field programmable gate array (FPGA), or other programmable logic devices such as an application specific integrated circuit (ASIC), discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A processor may be implemented by a controller or a state machine or a combination of computing devices.

[0031] When implemented in software, the functions and methods described below may be written in a suitable language such as, but not limited to, Hypertext Markup Language (HTML)-5, / Javascript, C# or C++, and the functions and methods can be stored on or transmitted via computer-readable storage media, such as random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), compact disk read-only memory (CD-ROM) or other optical disk storage devices such as digital versatile disks (DVDs), magnetic disk storage devices, or other magnetic storage devices including removable thumb drives. A connection can establish the computer-readable medium. Such a connection can include, for example, hard-wired cables, including fiber optic and coaxial cables and digital subscriber lines (DSL) and twisted pair cables.

[0032] The components included in one embodiment may be used in any appropriate combination in other embodiments. For example, any of the various components described herein and / or depicted in the accompanying drawings may be combined, interchanged, or excluded from other embodiments.

[0033] “A system having at least one of A, B, and C” (similarly, “a system having at least one of A, B, or C” and “a system having at least one of A, B, C”) includes systems having only A, only B, only C, both A and B, both A and C, both B and C, and / or both A, B, and C, etc.

[0034] Go to Figure 1 , an example of an ATSC 3.0 source component is labeled "broadcaster device" 10 and may include an over-the-air (OTA) device 12 for wirelessly broadcasting television data to a plurality of receivers 14, such as ATSC 3.0 televisions, typically in a one-to-many relationship via orthogonal frequency division multiplexing (OFDM). The one or more receivers 14 may communicate with one or more companion devices 16, such as remote controls, tablet computers, mobile phones, etc., via a short-range, typically wireless link 18, which may be controlled by a user. It can be achieved by low-power Bluetooth, other near-field communication (NFC) protocols, infrared (IR), etc.

[0035] In addition, one or more receivers 14 can communicate with an over-the-top (OTT) device 22 of the broadcaster device 10 via a wired and / or wireless network link 20, such as the Internet, typically in a one-to-one relationship. The OTA device 12 can be co-located with the OTT device 22, or the two sides 12, 22 of the broadcaster device 10 can be remote from each other and can communicate with each other by appropriate means. In any case, the receiver 14 can receive ATSC 3.0 television signals via OTA by tuning to an ATSC 3.0 television channel, and can also receive related content, including television, via OTT (broadband). Note that the computerized devices described in all figures herein may include devices for Figure 1 and Figure 2 Some or all of the components described in the various devices.

[0036] Now refer to Figure 2 , you can see Figure 1 Details of examples of components are shown in . Figure 2 The diagram illustrates an example protocol stack that can be implemented by a combination of hardware and software. Figure 2 With the ATSC 3.0 protocol stack shown in and with appropriate modifications on the broadcaster side, the broadcaster can send a hybrid service delivery in which one or more program elements are delivered via a computer network (referred to herein as "broadband" and "over-the-top" (OTT)) and via wireless broadcast (referred to herein as "broadcast" and "over-the-air" (OTA)). Figure 2 Also illustrated is an example stack with hardware that may be implemented by a receiver.

[0037] According to the broadcaster device 10 disclosed Figure 2 One or more processors 200, accessing one or more computer storage media 202, such as any of the memories and storage devices described herein, can be implemented to provide one or more software applications in a top-level application layer 204. The application layer 204 can include one or more software applications written in, for example, HTML5 / Javascript, running in a runtime environment. The applications in the application stack 204 can include, but are not limited to, linear TV applications, interactive service applications, companion screen applications, personalization applications, emergency alert applications, and usage reporting applications. Typically, the applications are implemented in software that represents elements of the viewer experience, including video encoding, audio encoding, and a runtime environment. By way of example, applications can be provided that enable users to control dialogue, use alternate audio tracks, control audio parameters such as normalization and dynamic range, and the like.

[0038] Below the application layer 204 is the presentation layer 206. The presentation layer 206 includes a broadcast audio-video playback device called a media processing unit (MPU) 208 on the broadcast (OTA) side, which, when implemented in a receiver, decodes and plays back the audio and video content of the wireless broadcast on one or more displays and speakers. The MPU 208 is configured to present the International Organization for Standardization (ISO) Base Media File Format (BMFF) data representation 210 and video with high efficiency video coding (HEVC) of audio, such as Dolby Audio Compression (AC)-4 format. ISO BMFF is a common file structure for time-based media files, divided into "segments" and presentation metadata. Each file is essentially a set of nested objects, each with a type and length. To facilitate decryption, the MPU 208 can access the broadcast side Encrypted Media Extensions (EME) / Common Encryption (CENC) module 212.

[0039] Figure 2 It is also illustrated that the presentation layer 206 on the broadcast side may include a signaling module, which includes a Moving Picture Experts Group (MPEG) Media Transfer Protocol (MMTP) signaling module 214 or a Real-time Object Delivery over Unidirectional Transport (ROUTE) signaling module 216 to deliver non-real-time (NRT) content 218 accessible to the application layer 204. NRT content may include, but is not limited to, stored alternative advertisements. The ROUTE session contains an audio video (AV) stream. A layered coding transport (LCT) channel is set within the ROUTE session. Each LCT channel carries video, audio, subtitles, or other data.

[0040] On the broadband (OTT or computer network) side, when implemented by a receiver, the presentation layer 206 may include one or more Dynamic Adaptive Streaming over Hypertext Transfer Protocol (HTTP) (DASH) players / decoders 220 for decoding and playing audio-video content from the Internet. To this end, the DASH player 220 may access a broadband-side EME / CENC module 222. The DASH content may be provided as DASH segments 224 in the ISO / BMFF format.

[0041] As with the broadcast side, the broadband side of the presentation layer 206 may include NRT content in files 226 and may also include signaling objects 228 for providing playback signaling.

[0042] Below the presentation layer 206 in the protocol stack is the session layer 230. The session layer 230 includes the MMTP protocol 232 or the ROUTE protocol 234 on the broadcast side.

[0043] On the broadband side, the session layer 230 includes an HTTP protocol 236 that can be implemented as secure HTTP (HTTP(S)). The broadcast side of the session layer 230 can also employ an HTTP proxy module 238 and a service list (SLT) 240. The SLT 240 includes tables of signaling information for establishing a basic service list and providing bootstrap discovery of broadcast content. The media presentation description (MPD) is included in the "ROUTE signaling" table delivered by the ROUTE transport protocol over the User Datagram Protocol (UDP).

[0044] The transport layer 242 is below the session layer 230 in the protocol stack to establish a low-latency and loss-tolerant connection. On the broadcast side, the transport layer 242 uses the User Datagram Protocol (UDP) 244, while on the broadband side, the transport layer 242 uses the Transmission Control Protocol (TCP) 246.

[0045] Figure 2 The example non-limiting protocol stack shown in also includes a network layer 248 below the transport layer 242. The network layer 248 uses the Internet Protocol (IP) on both sides for IP packet communication, with multicast delivery being typical on the broadcast side and unicast being typical on the broadband side.

[0046] Below the network layer 248 is the physical layer 250, which includes a broadcast transmit / receive device 252 and a computer network interface 254 to communicate on the respective physical media associated with the two sides. The physical layer 250 converts Internet Protocol (IP) packets into a format suitable for transmission over the relevant media and may add forward error correction functionality to allow error correction at the receiver, as well as a modulation and demodulation module to combine modulation and demodulation functions. This converts bits into symbols for long-distance transmission and improved bandwidth efficiency. On the OTA side, the physical layer 250 typically includes a wireless broadcast transmitter to broadcast data wirelessly using orthogonal frequency division multiplexing (OFDM), while on the OTT side, the physical layer 250 includes computer transmission components to send data over the Internet.

[0047] On the broadband side, DASH Industry Forum (DASH-IF) profile formatted data can be used, which is sent over various protocols in the protocol stack (HTTP / TCP / IP). Media files in DASH-IF profile formatted data based on ISO BMFF can be used as the delivery, media encapsulation, and synchronization format for both broadcast and broadband delivery.

[0048] Each receiver 14 typically includes a protocol stack that is complementary to the protocol stack of the broadcaster device.

[0049] like Figure 2 As shown in Figure 1The receiver 14 in the example may include an Internet-enabled TV with an ATSC 3.0 TV tuner (equivalently, a set-top box that controls the TV) 256. The receiver 14 may be based on Alternatively, the receiver 14 may be implemented by a computerized Internet-enabled ("smart") phone, tablet computer, notebook computer, wearable computerized device, etc. Regardless, it is understood that the receiver 14 and / or other computers described herein are configured to implement the present principles (e.g., communicate with other devices to implement the present principles, execute the logic described herein, and perform any other functions and / or operations described herein).

[0050] Therefore, in order to implement such a principle, Figure 1 14. The receiver 14 may be built using some or all of the components shown in . For example, the receiver 14 may include one or more displays 258, which may be implemented as a flat screen of high definition or ultra high definition "4K" or higher, and the one or more displays 258 may or may not be touch-enabled to receive user input signals via touching the display. The receiver 14 may also include one or more speakers 260 for outputting audio in accordance with the present principles and at least one additional input device 262 (such as, for example, an audio receiver / microphone) for inputting audible commands to the receiver 14 to control the receiver 14. The example receiver 14 may also include one or more network interfaces 264 to communicate over at least one network such as the Internet, a WAN, a LAN, a PAN, etc. under the control of one or more processors 266. Thus, the interface 264 may be, but is not limited to, a Wi-Fi transceiver, which is an example of a wireless computer network interface, such as, but not limited to, a mesh network transceiver. The interface 264 may be, but is not limited to transceiver, 14. The processor 266 may be a wireless transceiver, an infrared data association (IrDA) transceiver, a wireless USB transceiver, a wired USB, a wired LAN, a powerline or Multimedia over Coax Alliance (MoCA). It is understood that the processor 266 controls the receiver 14 to implement the present principles, including the other elements of the receiver 14 described herein, such as, for example, controlling the display 258 to present images thereon and receive input from the other elements. Furthermore, it is noted that the network interface 264 may be, for example, a wired or wireless modem or router or other suitable interface, such as, for example, a wireless telephone transceiver or a Wi-Fi transceiver as described above.

[0051] In addition to the foregoing, the receiver 14 may also include one or more input ports 268, such as a high-definition multimedia interface (HDMI) port or a USB port for physically connecting (using a wired connection) to another CE device and / or a headphone port for connecting headphones to the receiver 14 to present audio from the receiver 14 to the user via the headphones. For example, the input port 268 can be connected to a cable or satellite source of audio and video content via a wire or wirelessly. Thus, the source can be a separate or integrated set-top box or satellite receiver. Alternatively, the source can be a game console or disc player.

[0052] The receiver 14 may also include one or more computer memories 270, such as disk-based storage or solid-state storage that is not a transient signal, and in some cases, implemented as a standalone device within the receiver's chassis, or as a video disk player or personal video recorder (PVR) for playback of audio and video (AV) programs, internal or external to the receiver's chassis, or as removable storage media. Furthermore, in some embodiments, the receiver 14 may include a positioning or location receiver 272, such as, but not limited to, a cellular telephone receiver, a global positioning satellite (GPS) receiver, and / or an altimeter, for example, configured to receive geolocation information from at least one satellite or cellular telephone tower and provide the information to the processor 266 and / or determine the altitude at which the receiver 14 is located in conjunction with the processor 266. However, it is understood that another suitable positioning receiver other than a cellular telephone receiver, a GPS receiver, and / or an altimeter may be used in accordance with present principles to determine the location of the receiver 14, for example, in all three dimensions.

[0053] Continuing with the receiver 14, in some embodiments, the receiver 14 may include one or more cameras 274, which may include one or more of the following cameras: a thermal imaging camera, a digital camera such as a web camera, and / or a camera integrated into the receiver 14 and controllable by the processor 266 to capture pictures / images and / or videos according to the present principles. The receiver 14 may also include transceiver 276 or other near field communication (NFC) components to use and / or NFC technology to communicate with other devices. An example NFC element may be a radio frequency identification (RFID) element.

[0054] In addition, the receiver 14 may include one or more auxiliary sensors 278 (e.g., motion sensors such as accelerometers, gyroscopes, gyroscopes, or magnetic sensors, and combinations thereof) that provide input to the processor 266, infrared (IR) sensors for receiving IR commands from a remote control, optical sensors, speed and / or cadence sensors, gesture sensors (for sensing gesture commands), etc. An IR sensor 280 may be provided to receive commands from a wireless remote control. A battery (not shown) may be provided to power the receiver 14.

[0055] The companion device 16 may include some or all of the elements shown in connection with the receiver 14 described above.

[0056] Figure 3 The illustrated mobile ATSC 3.0 receiver 300 can include any of the receiver components described herein, and in the specific example shown, includes one or more antennas 302 (two are shown in the example) that receive signals and provide the signals to one or more tuners 304 (two are shown in the example), which can process the signals to buffer packets carried in the signals in one or more content buffers 306. The signals can be received wirelessly from an ATSC 3.0 over-the-air (OTA) source 308. The buffer 306 can be part of a digital video recorder (DVR) 310 of the mobile receiver 300, or can be part of a vehicle in which the mobile receiver 300 is located. The buffered signals can be presented on a display 312 of the mobile receiver 300 under the control of one or more processors 314.

[0057] Additionally, the mobile receiver 300 may include one or more out-of-band transceivers 316 to wirelessly communicate with one or more back-channel sources 318 of ATSC 3.0 packets. For example, the back-channel sources 318 may include one or more wireless telephone networks, such as, but not limited to, one or more Global System for Mobile Communications (GSM) networks or Code Division Multiple Access (CDMA) networks. For example, the back-channel sources 318 may include one or more Wi-Fi servers.

[0058] Figure 4 The diagram shows that Figure 3 4. Beginning at block 400, tuner 304 demodulates the tuned digital TV and, at block 402, packets of the stream are stored in buffer 306. Buffer 306 is relatively large, for example, it may hold several minutes (e.g., by way of non-limiting example, five minutes, ten minutes, or twenty minutes of one or more streams).

[0059] Additionally, at block 404, the receiver 300 also demodulates one or more additional digital TV streams, packets of which are buffered in a buffer at block 406. These streams may be received in the same multiplex from the same tuner 304 from which the tuned stream was received, or may be received from another tuner 304 (which may receive a wireless signal from a different antenna 302 than the antenna 302 from which the tuned stream was received).

[0060] To address error correction in mobile digital TV applications and to create a high quality service, at block 408, the mobile receiver 300 uses Figure 3 The transceiver 316 shown in FIG. 4 recognizes that ATSC 3.0 uses IP packets and requests any lost or erroneous packets from the backchannel source 318. At block 410, the replacement packets received from the backchannel source 318 are inserted into the buffer corresponding to the lost or damaged packets. These steps can be performed for all streams in the buffer 306.

[0061] Figure 5 The diagram illustrates that in order to address the channel change delay caused by the use of a large buffer 306, at block 500, a channel change command is received to present a new channel in place of the currently tuned channel. Moving to decision diamond 502, a determination is made as to whether new stream packets corresponding to the new channel are already stored in the buffer. If so, the packets of the new stream are immediately accessed from the buffer, decoded, and presented on the display 312 with minimal perceptible delay. It may also be assumed that according to Figure 4 Perform error correction on the contents of this new stream buffer.

[0062] On the other hand, at decision diamond 502, if it is determined that the new stream selected at block 500 is not the one expected by the pre-storage in the buffer, then the logic flows from diamond 502 to block 506 to buffer an initial small amount of the new stream (e.g., two seconds) sufficient to begin playback, and then, after this short buffering period, to begin playback of the new stream at block 508. At block 510, based on Figure 4 logic to perform error correction on the new stream.

[0063] Moving to decision diamond 512, a determination is made as to whether the new stream is to be added to the set of streams buffered for a long period in the future (e.g., several minutes). For example, if the new stream has been tuned a threshold number of times or for a threshold period of time, then at block 514 it may be added to the set of buffered streams or may replace another stream in the set of buffered streams.

[0064] Figure 6It is recognized that some transmission paths may have known obstructions, such as tunnels that typically take fifteen minutes to traverse, or other natural or man-made obstructions to digital TV broadcast signals. Therefore, at block 600, a planned, current, or repeating path may be identified. This may be accomplished, for example, by establishing a wireless connection between the mobile receiver 300 and the user's cell phone navigation application, or by identifying a common path, a planned path, or a current path from the application through other means. Moving to block 602, locations along the path, such as tunnels, where digital TV broadcasts may not be received are identified. This may be accomplished by accessing an electronic path that contains the path and indicates tunnels, etc.

[0065] Proceeding to block 604, the time to pass the location identified at block 602 is identified. This can be done, for example, by using the current speed as indicated by a global positioning satellite (GPS), or by accessing an electronic map indicating a path through the location at a typical speed, or by other means. Block 606 indicates that the length of the stream buffered in buffer 306 can be set based on the elapsed time, for example, the buffer length can be set to be approximately equal to the longest elapsed time identified at block 604.

[0066] Thus, the mobile receiver 300 can access mapping software (e.g., executing in the vehicle and communicating with the mobile receiver via Bluetooth) that knows the destination and route and can calculate the longest fault, such as a specific tunnel of a specific length, and knows the average travel rate (or real-time updates on traffic speeds) plus some margin. The length of the buffer 306 can be dynamically established to be exactly that size. Thus, the specific route influences the buffer size selected at the beginning of the trip, minimizing the buffer to just the required size and also minimizing the need to pre-cache the buffer when the receiver / player is "off." In this scenario, the user may have to wait several minutes for the buffer to fill before the content is rendered.

[0067] Figure 7 It is illustrated that at block 700, when the mobile receiver 300 is turned off (in the sense that it is no longer in a presentation mode for presenting digital TV content), it can continue to receive the content of the selected channel in the buffer 306 at block 702. At block 704, when the receiver resumes presenting digital TV, the buffer 306 is full, and playback can occur immediately at block 706. Alternatively, after a "cold start" of the mobile receiver 300 to begin playing digital TV, a small buffer (e.g., of a few seconds) can be created at block 704 to begin playing the initial stream relatively quickly, while simultaneously and in parallel, at block 708, a larger buffer of the stream can be created, to which a switch can be made at block 710 in the event of a signal failure.

[0068] The methods described herein may be implemented as software instructions executed by a processor, a suitably configured application specific integrated circuit (ASIC) or field programmable gate array (FPGA) module, or any other convenient manner as will be appreciated by those skilled in the art. Where software instructions are employed, the software instructions may be implemented in a non-transitory device such as a CD ROM or flash drive. Alternatively, the software code instructions may be implemented in a temporary arrangement such as a radio or optical signal or via downloading over the Internet.

[0069] It will be understood that while the present principles have been described with reference to certain example embodiments, these embodiments are not intended to be limiting and that various alternative arrangements may be used to implement the subject matter claimed herein.

Claims

1. A digital television (TV) system comprising: At least one mobile receiver, the at least one mobile receiver comprising: at least one processor programmed with instructions to: receiving a first digital TV broadcast stream; storing at least one period of the first stream in at least one buffer prior to presenting the first stream; identifying at least one packet difference in the first stream; requesting data from at least one backchannel source to eliminate the packet discrepancies; receiving said data from said backchannel source; inserting the data into the buffer to eliminate the grouping differences; playing the first stream from the buffer; receiving a command to stop presenting digital TV on the mobile receiver; In response to a command to stop presentation, continuing to buffer at least one digital TV stream in the buffer; receiving a command to start playing digital TV on the mobile receiver; In response to a command to start playback, identifying whether packets associated with a stream to be played are in the buffer; In response to determining that packets associated with the stream to be played are not in the buffer, beginning buffering packets of the stream to be played for a second period that is shorter than the first period; Playing the stream to be played from the buffer; creating a copy buffer of the stream to be played having a period longer than the second period; and Selectively switching to playing packets in the copy buffer.

2. The digital TV system of claim 1, wherein the backchannel source comprises at least one wireless telephone network.

3. The digital TV system of claim 1, wherein the backchannel source comprises at least one Wi-Fi source.

4. The digital TV system of claim 1, wherein the packet differences include lost packets.

5. The digital TV system of claim 1, wherein the packet differences include damaged packets.

6. The digital TV system of claim 1 , wherein the instructions are executable to: At least a second stream is buffered concurrently with buffering the first stream.

7. The digital TV system of claim 6, wherein the second stream is received in a multiplex containing the first stream.

8. The digital TV system of claim 6, wherein the first stream is received at a first tuner of the mobile receiver and the second stream is received at a second tuner of the mobile receiver.

9. The digital TV system of claim 1 , wherein the instructions are executable to: receiving a channel change command to present a new channel; In response to the channel change command, determining whether packets associated with the new channel are in the buffer; In response to determining that packets associated with the new channel are in the buffer, immediately accessing the packets associated with the new channel from the buffer and presenting the new channel; In response to determining that packets associated with the new channel are not in the buffer, begin buffering packets for the new channel for a second period that is shorter than the first period; and The new channel is presented.

10. The digital TV system of claim 9, wherein the instructions are executable to: determining whether to add the new channel to the set of streams to be buffered for the first period of time; and In response to identifying that the new channel should be added to the set of streams to be buffered for the first period of time, the new channel is added to the set.

11. The digital TV system of claim 1 , wherein the instructions are executable to: identifying at least one failure period associated with at least one path, the failure period being a period during which broadcast digital TV cannot be received; and A first time period is established based at least in part on the fault time period.

12. The digital television system of claim 1, wherein the digital television system comprises at least one Advanced Television Systems Committee (ATSC) 3.0 system.

13. An assembly, comprising: at least one mobile receiver for digital television; at least one digital television over-the-air (OTA) source of wireless digital TV signals, the mobile receiver being capable of receiving the wireless digital TV signals from the OTA source; and at least one back-channel source of wireless digital TV alternative content, the mobile receiver being capable of receiving the wireless digital TV alternative content from the back-channel source, the back-channel source comprising at least one wireless telephone network or at least one Wi-Fi source or both, the at least one mobile receiver comprising at least one processor programmed with instructions to: receiving a first digital TV broadcast stream; storing at least one period of the first stream in at least one buffer prior to presenting the first stream; identifying at least one packet difference in the first stream; requesting data from at least one backchannel source to eliminate the packet discrepancies; receiving said data from said backchannel source; inserting the data into the buffer to eliminate the grouping differences; playing the first stream from the buffer; receiving a command to stop presenting digital TV on the mobile receiver; In response to a command to stop presentation, continuing to buffer at least one digital TV stream in the buffer; receiving a command to start playing digital TV on the mobile receiver; In response to a command to start playback, identifying whether packets associated with a stream to be played are in the buffer; In response to determining that packets associated with the stream to be played are not in the buffer, beginning buffering packets of the stream to be played for a second period that is shorter than the first period; Playing the stream to be played from the buffer; creating a copy buffer of the stream to be played having a period longer than the second period; and Selectively switching to playing packets in the copy buffer.

14. The assembly of claim 13, wherein the backchannel source comprises at least one wireless telephone network.

15. The assembly of claim 13, wherein the backchannel source comprises at least one Wi-Fi source.

16. A method of operating at least one mobile receiver to receive a digital TV broadcast stream, the method comprising: receiving a first digital TV broadcast stream; storing at least one period of the first stream in at least one buffer prior to presenting the first stream; identifying at least one packet difference in the first stream; requesting data from at least one backchannel source to eliminate the packet discrepancies; receiving said data from said backchannel source; inserting the data into the buffer to eliminate the grouping differences; playing the first stream from the buffer; receiving a command to stop presenting digital TV on the mobile receiver; In response to a command to stop presentation, continuing to buffer at least one digital TV stream in the buffer; receiving a command to start playing digital TV on the mobile receiver; In response to a command to start playback, identifying whether packets associated with a stream to be played are in the buffer; In response to determining that packets associated with the stream to be played are not in the buffer, beginning buffering packets of the stream to be played for a second period that is shorter than the first period; Playing the stream to be played from the buffer; creating a copy buffer of the stream to be played having a period longer than the second period; and Selectively switching to playing packets in the copy buffer.

Citation Information

Patent Citations

  • Wireless communication device and wireless communication method

    TWI707564B

  • Broadcast seeding for peer-to-peer networks

    US20090288127A1

  • Remediation of television signals using a network back-channel

    US20100104024A1

  • Apparatus, systems and methods for buffering of media content

    US20170111690A1