A display device and a content display method

By using the application service process in the display device to obtain the filter identifier to obtain media data, the problem of low communication efficiency of the Ginga service is solved, and more efficient data transmission and communication is achieved.

CN119906837BActive Publication Date: 2025-10-21HISENSE VISUAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411885877.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-19
Publication Date
2025-10-21
Estimated Expiration
2044-12-19

AI Technical Summary

Technical Problem

The Ginga service has a cumbersome process of communicating with other services or processes in the display device, resulting in low efficiency in data acquisition for interactive applications.

Method used

When the controller receives the playback operation of a live program, it obtains the interactive application data packet from the broadcast information, and uses the application service process to trigger the data service process to obtain the filter identifier. The target filter is used to obtain media data, reduce data transmission volume, and improve communication efficiency.

Benefits of technology

By reducing the amount of data transmitted, data transmission and communication efficiency is improved, especially for media asset data with large data volumes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119906837B_ABST
    Figure CN119906837B_ABST
Patent Text Reader

Abstract

The application relates to a display device and a content display method. The application comprises the following steps: obtaining an interactive application data packet from broadcast information of a live program, starting an interactive application based on the interactive application data packet; in the process of starting the interactive application, when a first data acquisition instruction is detected and a media asset data type parameter is carried in the first data acquisition instruction, triggering a data service process to acquire a filter identifier through an application service process; when the data service process acquires the filter identifier, triggering the data service process to call a response callback function of the application service process to transmit the filter identifier to the application service process; when the application service process receives the filter identifier, triggering the application service process to acquire media asset data corresponding to the media asset data type parameter from a target filter corresponding to the filter identifier; and controlling a display to display the media asset data corresponding to the media asset data type parameter according to a preset media asset data display mode of the interactive application. The communication efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of display devices, and in particular to a display device and a content display method. Background Art

[0002] In some countries and regions, such as Brazil in South America, some digital televisions support the Ginga service. The Ginga service is based on the ISDB-T digital terrestrial television middleware standard and enhances the interactivity of digital television, allowing users to enjoy various free online services while watching digital television (DTV).

[0003] Currently, the Ginga service can support interactive applications, which may include but are not limited to voting or advertising applications. The Ginga service can also support interactive applications that may need to obtain live broadcast data during operation.

[0004] However, currently, the process of the Ginga service in the display device communicating with other services or processes in the display device is relatively cumbersome, resulting in low efficiency of interactive applications in acquiring data and thus low communication efficiency. Summary of the Invention

[0005] The present application provides a display device and a content display method to solve the problem of low communication efficiency.

[0006] In a first aspect, some embodiments provide a display device, comprising: a display and a controller; the controller is configured to: upon receiving a play operation of a live program, obtain an interactive application data packet from the broadcast information of the live program, and start an interactive application based on the interactive application data packet; during the startup of the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media data type parameter, trigger a data service process through an application service process to obtain a filter identifier, wherein the filter identifier is used to find a target filter, and the target filter is used to obtain media data corresponding to the media data type parameter from the broadcast information; when the data service process obtains the filter identifier, trigger the data service process to call a response callback function of the application service process to transmit the filter identifier to the application service process; when the application service process receives the filter identifier, trigger the application service process to obtain media data corresponding to the media data type parameter from the target filter corresponding to the filter identifier; and control the display to display the media data corresponding to the media data type parameter according to the media data display method preset by the interactive application.

[0007] In this embodiment, since the filter identifier is transmitted first and then the application service process actively obtains the media data, for media data with a large amount of data, the amount of data transmitted is reduced compared to indirectly transmitting the media data to the application service process through the interactive service process, thereby improving data transmission efficiency and communication efficiency.

[0008] In a third aspect, some embodiments further provide a content display method, applied to the display device provided in the first aspect, the display device comprising: a display, a communication device, and a controller, the method comprising: upon receiving a play operation of a live program, obtaining an interactive application data packet from broadcast information of the live program, and launching an interactive application based on the interactive application data packet;

[0009] During the process of starting the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media asset data type parameter, the application service process is triggered to trigger a data service process to obtain a filter identifier, the filter identifier is used to find a target filter, and the target filter is used to obtain media asset data corresponding to the media asset data type parameter from broadcast information;

[0010] When the data service process obtains the filter identifier, triggering the data service process to call a response callback function of the application service process to transmit the filter identifier to the application service process;

[0011] When the application service process receives the filter identifier, triggering the application service process to obtain the media asset data corresponding to the media asset data type parameter from the target filter corresponding to the filter identifier;

[0012] According to the media data display mode preset by the interactive application, the display is controlled to display the media data corresponding to the media data type parameter.

[0013] In this embodiment, since the filter identifier is transmitted first and then the application service process actively obtains the media data, for media data with a large amount of data, the amount of data transmitted is reduced compared to indirectly transmitting the media data to the application service process through the interactive service process, thereby improving data transmission efficiency and communication efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0015] Figure 1 A schematic diagram of an operation scenario between a display device and a control device provided in some embodiments of the present application;

[0016] Figure 2 A schematic diagram of the hardware configuration of a display device provided in some embodiments of the present application;

[0017] Figure 3 A schematic diagram of the hardware configuration of a control device provided in some embodiments of the present application;

[0018] Figure 4 A schematic diagram of software configuration of a display device provided in some embodiments of the present application;

[0019] Figure 5 A system architecture diagram of a display device provided in some embodiments of the present application;

[0020] Figure 6 A standard framework diagram provided for some embodiments of the present application;

[0021] Figure 7 A flowchart of a content display method provided in some embodiments of the present application;

[0022] Figure 8 A timing diagram of transmitting interactive application data packets and filter identifiers provided in some embodiments of the present application;

[0023] Figure 9 A timing diagram from starting an application service process to shutting down an application service process provided in some embodiments of the present application;

[0024] Figure 10 A schematic diagram of an interactive interface and a media playback window provided in some embodiments of the present application;

[0025] Figure 11 Schematic diagram of an interactive interface and media playback window provided in some other embodiments of the present application;

[0026] Figure 12 A timing diagram of the communication between the application service process and the live broadcast application process provided in some other embodiments of the present application;

[0027] Figure 13 Schematic diagram of an interactive application menu interface provided in some other embodiments of the present application;

[0028] Figure 14 A schematic diagram of a WebSocket client list provided in some other embodiments of the present application;

[0029] Figure 15 A timing diagram of communication between an application service process and a live broadcast application process provided in some other embodiments of the present application. DETAILED DESCRIPTION

[0030] The following embodiments are described in detail, with examples illustrated in the accompanying drawings. When the following description refers to the drawings, identical numbers in different figures represent identical or similar elements unless otherwise indicated. The embodiments described in the following embodiments are not intended to represent all possible implementations consistent with the present application. They are merely examples of systems and methods consistent with certain aspects of the present application, as detailed in the claims.

[0031] It should be noted that the brief descriptions of terms in this application are only for the purpose of facilitating the understanding of the embodiments described below, and are not intended to limit the embodiments of this application. Unless otherwise specified, these terms should be understood according to their ordinary and usual meanings.

[0032] In the specification and claims of this application and the accompanying drawings, the terms "first," "second," "third," etc. are used to distinguish similar or similar objects or entities, and are not necessarily intended to limit a particular order or sequence, unless otherwise noted. It should be understood that the terms used in this manner are interchangeable under appropriate circumstances.

[0033] The terms "comprise," "include," and "have," and any variations thereof, are intended to cover but not exclude inclusion; for example, a product or device comprising a list of components is not necessarily limited to all the components expressly listed but may include other components not expressly listed or inherent to such product or device.

[0034] The term "module" refers to any known or later developed hardware, software, firmware, artificial intelligence, fuzzy logic, or combination of hardware and / or software code that is capable of performing the functionality associated with that element.

[0035] In the embodiments of the present application, the display device 200 generally refers to a device capable of displaying images and processing data. For example, the display device 200 includes but is not limited to a smart TV, a mobile terminal, a computer, a monitor, an advertising screen, a wearable device, a virtual reality device, an augmented reality device, etc.

[0036] Figure 1 This is a schematic diagram of an operation scenario between a display device and a control device provided in some embodiments of the present application. Figure 1 As shown in FIG, a user can operate the display device 200 through touch operation, the mobile terminal 300 and the control device 100. For example, the control device 100 can be a remote controller, a stylus pen, a handle, etc.

[0037] The mobile terminal 300 can function as a control device for performing human-computer interaction between a user and the display device 200. The mobile terminal 300 can also function as a communication device for establishing a communication connection with the display device 200 and exchanging data. In some embodiments, the mobile terminal 300 can install software applications with the display device 200, enabling connection and communication via a network communication protocol, enabling one-to-one control operations and data communication. Audio and video content displayed on the mobile terminal 300 can also be transmitted to the display device 200 for synchronized display.

[0038] like Figure 1 As shown in FIG, the display device 200 also communicates data with the server 400 through various communication methods. The display device 200 may be allowed to communicate via a local area network (LAN), a wireless local area network (WLAN), and other networks.

[0039] The display device 200 may provide a broadcast receiving television function, and may also additionally provide an intelligent network television function with a computer support function, including but not limited to network television, smart TV, Internet Protocol television (IPTV), etc.

[0040] Figure 2 Some embodiments of this application provide Figure 1 2 is a block diagram of the hardware configuration of the display device 200.

[0041] In some embodiments, the display device 200 may include at least one of a tuner 210, a communication device 220, a detector 230, a device interface 240, a controller 250, a display 260, an audio output device 270, a memory, a power supply, and a user input interface.

[0042] In some embodiments, detector 230 is used to collect signals from the external environment or external interactions. For example, detector 230 may include a light receiver, such as a sensor for collecting ambient light intensity; or an image collector, such as a camera, for collecting external environmental scenes, user attributes, or user interaction gestures; or a sound collector, such as a microphone, for receiving external sounds.

[0043] In some embodiments, the display 260 includes a display component for displaying images and a driver component for driving image display. The display 260 is configured to receive image signals output from the controller 250 for display. For example, the display 260 can be used to display video content, image content, menu control interface components, and user control UI interfaces.

[0044] In some embodiments, the communication device 220 is a component used to communicate with an external device or server 400 according to various communication protocol types. The display device 200 can be provided with multiple communication devices 220 depending on the supported communication methods. For example, if the display device 200 supports wireless network communication, the display device 200 can be provided with a communication device 220 including WiFi functionality. If the display device 200 supports Bluetooth connection communication, the display device 200 needs to be provided with a communication device 220 including Bluetooth functionality.

[0045] The communication device 220 can establish a communication connection between the display device 200 and an external device or server 400 via a wireless or wired connection. A wired connection can connect the display device 200 to an external device via a data cable, an interface, or other components. A wireless connection can connect the display device 200 to an external device via a wireless signal or wireless network. The display device 200 can establish a connection with an external device directly or indirectly through a gateway, router, or connection device.

[0046] In some embodiments, the controller 250 may include at least one of a central processing unit (CPU), a video processor, an audio processor, a graphics processor, and a power processor, and first to nth interfaces for input / output. The controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in a memory. The controller 250 controls the overall operation of the display device 200.

[0047] In some embodiments, the controller 250 and the tuner 210 may be located in different separate devices, that is, the tuner 210 may also be located in an external device of the main device where the controller 250 is located, such as an external set-top box.

[0048] In some embodiments, the user may input a user command through a graphical user interface (GUI) displayed on the display 260 , and the user input interface receives the user input command through the graphical user interface (GUI).

[0049] In some embodiments, the audio output device 270 may be a local speaker of the display device 200, or an external audio output device connected to the display device 200. For the external audio output device connected to the display device 200, the display device 200 may further be provided with an external audio output terminal, through which the audio output device may be connected to the display device 200 to output the sound of the display device 200.

[0050] In some embodiments, the user input interface 280 may be configured to receive instructions from a user.

[0051] Figure 3 Some embodiments of this application provide Figure 1 The hardware configuration diagram of the control device in the figure is as follows. Figure 3 As shown, the control device 100 may include: a controller 110, a communication interface 130, a user input / output interface, a memory, and a power supply.

[0052] The control device 100 is configured to control the display device 200 , and can receive user input operation instructions, and convert the operation instructions into instructions that the display device 200 can recognize and respond to, playing the role of an interactive intermediary between the user and the display device 200 .

[0053] In some embodiments, the control device 100 may be a smart device. For example, the control device 100 may be installed with various applications for controlling the display device 200 according to user needs.

[0054] In some embodiments, as Figure 1 As shown, the mobile terminal 300 or other intelligent electronic devices can play a similar function as the control device 100 after installing the application for controlling the display device 200 .

[0055] The controller 110 includes a processor 112, RAM 113, ROM 114, a communication interface 130, and a communication bus. The controller 110 is used to control the operation and operation of the control device 100, as well as the communication and cooperation between internal components and external and internal data processing functions.

[0056] Under the control of the controller 110, the communication interface 130 communicates control signals and data signals with the display device 200. The communication interface 130 may include at least one of a WiFi chip 131, a Bluetooth module 132, an NFC module 133, or other near field communication modules.

[0057] The user input / output interface 140 includes at least one of a microphone 141 , a touch panel 142 , a sensor 143 , a button 144 and other input interfaces.

[0058] In some embodiments, the control device 100 includes at least one of a communication interface 130 and an input / output interface 140. The control device 100 is configured with the communication interface 130, such as a WiFi, Bluetooth, or NFC module, to encode user input commands via the WiFi protocol, Bluetooth protocol, or NFC protocol and transmit them to the display device 200.

[0059] The memory 190 is used to store various operating programs, data and applications for driving and controlling the control device 100 under the control of the controller. The memory 190 can store various control signal instructions input by the user.

[0060] The power supply 180 is used to provide operating power support for each component of the control device 100 under the control of the controller.

[0061] To facilitate user interaction, in some embodiments, the display device 200 may run an operating system. The operating system is a computer program used to manage and control the hardware and software resources of the display device 200. The operating system may provide a user interface (to control the display device), allow the user to interact with the display device 200, and support the running of various application programs.

[0062] It should be noted that the operating system may be a native operating system based on a specific operating platform, or a third-party operating system deeply customized based on a specific operating platform, or an independent operating system specially developed for the display device.

[0063] The operating system can be divided into different modules or layers according to the functions implemented.

[0064] For example, Figure 4 As shown, in some embodiments, the system is divided into four layers, from top to bottom: the application layer (abbreviated as "application layer"), the application framework layer (abbreviated as "framework layer"), the system library layer and the kernel layer.

[0065] In some embodiments, the application layer provides services and interfaces for applications, enabling the display device 200 to run applications and interact with the user based on these applications. The application layer can host at least one application, which can include built-in window programs, system settings programs, clock programs, and other applications provided by the operating system, or applications developed by third-party developers. In specific implementations, the application packages in the application layer are not limited to the examples above.

[0066] The framework layer provides applications with an application programming interface (API) and programming framework. The application framework layer includes predefined functions. The application framework layer acts as a processing center, determining the actions taken by applications in the application layer. Through the API, applications can access system resources and services during execution.

[0067] like Figure 4As shown, in the embodiment of the present application, the application framework layer includes a view system, managers, content providers, etc., wherein the view system can design and implement the interface and interaction of the application, and the view system includes lists, grids, text boxes, buttons, etc. The manager includes at least one of the following modules: an activity manager for interacting with all activities running in the system; a location manager for providing system services or applications with access to the system location service; a package manager for retrieving various information related to the application packages currently installed on the device; a notification manager for controlling the display and clearing of notification messages; and a window manager for managing icons, windows, toolbars, wallpapers, and desktop widgets on the user interface.

[0068] In some embodiments, the activity manager is used to manage the lifecycle of each application and common navigation back functions, such as controlling application exit, opening, and back. The window manager is used to manage all window programs, such as obtaining the display screen size, determining whether there is a status bar, locking the screen, taking screenshots, and controlling changes in display windows, such as shrinking, shaking, or distorting the display window.

[0069] In some embodiments, the system runtime layer can provide support for the framework layer. When the framework layer is used, the operating system will run the instruction library contained in the system runtime layer, such as the C / C++ instruction library, to implement the functions to be implemented by the framework layer.

[0070] In some embodiments, the kernel layer is a functional layer between the hardware and software of the display device 200. The kernel layer can implement functions such as hardware abstraction, multitasking, and memory management. Figure 4 As shown, the kernel layer can be configured with hardware drivers, and the drivers included in the kernel layer can be at least one of the following drivers: audio driver, display driver, Bluetooth driver, camera driver, WIFI driver, USB driver, HDMI driver, sensor driver (such as fingerprint sensor, temperature sensor, pressure sensor, etc.), and power driver, etc.

[0071] It should be noted that the above example is only a simple division of the operating system functions and does not constitute a limitation on the specific operating system form of the display device 200 in the embodiment of the present application. Depending on factors such as the function of the display device and the type of operating system, the number of levels and specific level types contained in the operating system may be expressed in other forms.

[0072] In some embodiments, the display device is a digital television (DTV), for example, a digital television based on Ginga middleware. The Ginga middleware standard is a digital television middleware standard jointly developed by multiple countries in South America. It is used to provide multimedia content that can interact with users in digital television broadcasts, thereby improving the user experience of watching digital television. The Ginga middleware standard has gradually evolved to better meet user needs. Currently, the Ginga middleware standard has evolved from the Ginga-A middleware standard, the Ginga-B middleware standard, the Ginga-C middleware standard to the Ginga-D middleware standard. The Ginga middleware supports a variety of functions, including but not limited to program search, program recording, program reservation or interactive services, providing digital television users with a rich and convenient viewing experience. The display device can display the Ginga menu page, and the user can make relevant settings through the Ginga menu page.

[0073] In some embodiments, the display device provided by the present application may be a display device based on the TIAF (TV Interactive Application Framework) architecture, such as Figure 5 The figure shows the overall architecture of a display device based on the TIAF architecture. This overall architecture includes the application layer, which houses live streaming applications, such as LiveTV. Live streaming applications are primarily used to play live TV and can interact with various DTV (Digital Television) protocols to display and stop subtitles, set and switch display types, and more. Closed subtitles can be displayed on the live streaming page provided by the live streaming application. The live streaming application includes multiple modules, such as the Ginga menu module, the Ginga button distribution module, the Ginga lifecycle management module, the interactive application view (TvInteractiveAppView) module, and the Ginga AIDL client module. The interactive application view (TvInteractiveAppView) module provides an interactive application view on the TV. AIDL is a tool in the Android SDK that allows developers to define and implement interfaces between clients and servers, enabling cross-process communication.

[0074] The overall architecture diagram also includes the framework layer, which includes TIF (Resource Management Framework), TIAF (Interactive Application Management Framework), and TIS (TvInputService, TV Input Service). Among them, TIF (Resource Management Framework) and TIAF (Interactive Application Management Framework) are frameworks launched by Google. Figure 6As shown, a standard framework diagram including the TIF framework and the TIAF framework is shown, wherein TV App refers to an application used on large-screen output devices such as smart TVs or TV boxes. The TIAF framework includes components such as TvInteractiveAppView (TIAV), a view component responsible for displaying the application's user interface on the Smart TV screen. It can contain various UI elements such as buttons, text boxes, or images for user interaction; TvInteractiveAppManager (TIAM), a management component responsible for managing and coordinating applications on the Smart TV. This includes functions such as starting, stopping, and switching applications, as well as communication and data sharing between applications. It also monitors application status to ensure proper operation; TvInteractiveAppManagerService, a service component that provides functions such as application installation, uninstallation, and updates, as well as application permission management and security control; and TvInteractiveAppServiceInterface, an interface definition that specifies the communication protocol between Smart TV applications and external systems or services. It defines the methods and events that applications can call, as well as the data formats that external systems or services can receive and process. By implementing this interface, applications can interact with the Smart TV operating system, other applications, or cloud services. TvInteractiveAppServiceImpl is the concrete implementation class of the TvInteractiveAppServiceInterface, responsible for providing services for interacting with Smart TV applications within the Smart TV application framework. The TIF framework includes TvView (a view class used to display TV content. Using TvView, you can browse the channel list, play video content after selecting a channel, and so on), TvInputManager (a system service class that allows TV applications to access TV Input applications for communication to obtain various video input sources), TvInputManagerService (TV app needs to create a session through TvInputManagerService to access each input port. TvInputManagerService maintains the status information of all ports in TV. If the TV App registers TvInputCallback, then the status change of TV Input or the addition and removal of TV Input can be notified), TvInputService Interface (an interface of an Android TV server component used to manage video input sources), etc.TvInputServiceImpl is an implementation class of the TvInputService Interface. By implementing the methods in the TvInputService interface, it provides the ability to interact with TV input sources and enables communication and data sharing with TV applications. Regular Android apps refer to commonly used Android applications, while Interactive Apps (RTEs) refer to real-time interactive applications. TvInputServiceImpl can be understood as a TIS. TIS includes SessionrequestBroadcastInfo, a method used to request broadcast information. It is used to obtain session information about the current TV input service, such as the channel list, program information, and signal status. This method can be called by TV applications to display available channels and programs to the user.

[0075] The overall architecture diagram also includes a middleware layer, comprising AV middleware, system middleware, and live streaming middleware. The AV middleware (Audio Video Middleware) processes audio data attributes, while the system middleware handles platform-related attributes. The live streaming middleware includes the SI (Service Information) module, responsible for processing live streaming service information, the Tuner module (responsible for tuning and receiving live streaming signals), and the Resource module (responsible for managing live streaming resources such as network bandwidth, memory, and CPU). The middleware layer also includes the Android JAVA SDK API, which includes the Tuner Framework (a framework for TV signal tuning), Media Codec (an API for video and audio encoding and decoding), and AudioTrack (an audio playback API that allows applications to directly play audio data in PCM (Pulse Code Modulation) format). The Tuner Framework includes MediaTvTuner (responsible for tuning and managing TV channels) and the Tuner RM (Resource Manager), which manages and allocates TV tuner resources. The middleware calls the tuner framework API through the HUI (isolation layer). The tuner framework API is a set of interfaces for managing TV tuner functions.

[0076] The overall architecture diagram also includes the MopaGinga service, which includes TIAS (TvInteractiveAppService Impl), Integration Aidl service (Aidl service), data processing module, network service module (CC WebServices module), HTML5 application and NCL application.

[0077] The overall architecture diagram also includes HAL (Hardware Abstraction Layer). There are multiple HAL interfaces for different hardware components in the HAL layer, such as TvInputHAL (used to handle TV input-related functions, such as receiving and decoding TV signals and switching TV channels), TunerHAL (HAL interface specifically used to control and manage TV tuner hardware), PQHAL (hardware abstraction layer interface related to image processing and color correction), PQ is the abbreviation of Picture Quality, Codec2 (multimedia-related software framework), HWC (Hardware Composer HAL, responsible for synthesizing and displaying content on the screen), DisplayHAL (HAL interface for controlling and managing display devices), AudioHAL (used to handle audio-related functions, such as audio recording, playback, volume adjustment, etc.), Audio EXT HAL (Extended HardwareAbstraction Layer, hardware abstraction layer for handling audio extension functions), TPCHAL (Touch PanelController HAL, HAL interface for controlling and managing touch screen hardware).

[0078] This overall architecture diagram also includes the kernel layer, which includes the Linux kernel interface and the STI DDdriver (DD stands for "Device Driver"). The STI DD driver includes the tuner driver and the demodulator driver. The tuner driver sends control commands to the tuner, implementing functions such as channel switching, signal amplification, and filtering. These commands may include frequency setting and gain control, ensuring that the tuner accurately receives and converts TV signals. Its main function is to select and lock onto a specific TV signal frequency and then convert it to an intermediate frequency (IF) signal for subsequent processing. The demodulator driver is responsible for processing the IF signal output by the tuner. The demodulator's main task is to restore the IF signal to the original baseband signal, a standard data stream containing TV image and sound information. The demodulator driver ensures accurate data extraction and restoration by executing complex signal processing algorithms such as carrier recovery, clock recovery, and symbol synchronization.

[0079] In some embodiments, the present application provides an interactive content display method, which is applied to a display device based on the TIAF architecture, such as Figure 7 As shown, the interactive content display method includes:

[0080] Step 702: upon receiving a play operation of a live program, obtaining an interactive application data packet from the broadcast information of the live program, and starting an interactive application based on the interactive application data packet.

[0081] Specifically, upon receiving a play command for a live program, the display device can launch an application service process. Once the application service process is launched, it retrieves interactive application data packets from the live program's broadcast information and launches an interactive application based on the interactive application data packets. The play command can be triggered within the live application, or input via voice or a remote control. The live application can include, but is not limited to, LiveTv.

[0082] Among them, the application service process is the process corresponding to the application service, such as the Ginga service. Application services (Ginga services) include but are not limited to GStreamer, GingaCCWS, and IntegrationService (integration service). Among them, GStreamer is an open source multimedia framework for building audio and video processing pipelines. On the smart TV platform, GStreamer can be used to play, record, and edit audio and video content. GingaCCWS refers to the Ginga interactive content service. Ginga is an interactive content platform for smart TVs that provides a rich multimedia experience. Interactive applications are applications for interaction supported by application services, which can be, but are not limited to, voting applications, advertising promotion applications, or applications for controlling the live broadcast interface of live programs. Interactive application data packets refer to data packets of interactive applications, which are used to start interactive applications.

[0083] A live program can be a television program broadcast by a broadcast system, such as a radio station or television station. Broadcast information is information about the live program broadcast by the broadcast system. The broadcast system can be a system that supports any DTV (Digital Television) protocol, such as the system of any broadcasting station. DTV protocols can include, but are not limited to, ATSC1.0, ATSC3.0, DVB, or ISDB. ATSC is the abbreviation for Advanced Television Systems Committee, which means Advanced Television Systems Committee in Chinese. DVB is the abbreviation for Digital Video Broadcasting, which means Digital Video Broadcasting in Chinese. ISDB is the abbreviation for Integrated Service Digital Broadcasting, which means Integrated Service Digital Broadcasting in Chinese.

[0084] Step 704: During the startup of the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media data type parameter, the data service process is triggered by the application service process to obtain a filter identifier. The filter identifier is used to find the target filter, and the target filter is used to obtain media data corresponding to the media data type parameter from the broadcast information.

[0085] The first data acquisition instruction is a command issued by an interactive application to acquire media asset data. The media asset data type parameter indicates that the data to be acquired is media asset data. The media asset data type parameter can be, but is not limited to, PES or TS. PES (Packet Elementary Stream) and TS (Transport Stream) store audio and video data. The data service process can be, for example, a TIS process.

[0086] Step 706: When the data service process obtains the filter identifier, the data service process is triggered to call the response callback function of the application service process to transmit the filter identifier to the application service process.

[0087] Specifically, after obtaining the filter identifier, the data service process can send a first response message to the application management component TIAM, which carries the filter identifier. After receiving the first response message, the application management component TIAM sends a second response message carrying the filter identifier to the interactive service process. After receiving the second response message, the interactive service process calls the response callback function in the application service process to transmit the filter identifier to the application service process.

[0088] Step 708: When the application service process receives the filter identifier, the application service process is triggered to obtain the media asset data corresponding to the media asset data type parameter from the target filter corresponding to the filter identifier.

[0089] The target filter is used to extract PES and / or TS from the broadcast information.

[0090] Step 710: Display the media data corresponding to the media data type parameter according to the media data display method preset by the interactive application.

[0091] The interactive application may be pre-configured with a media data display method, which may include, but is not limited to, the position and size of the media playback window, the format of subtitles, etc. The media playback window is a live video area for playing live content.

[0092] In this embodiment, upon receiving a play command for a live program, an interactive application data packet is obtained from the broadcast information of the live program, and an interactive application is started based on the interactive application data packet. During the interactive application startup process, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media asset data type parameter, the application service process triggers the data service process to obtain a filter identifier. The filter identifier is used to locate a target filter, which is used to obtain media asset data corresponding to the media asset data type parameter from the broadcast information. Upon obtaining the filter identifier, the data service process is triggered to call a response callback function of the application service process to transmit the filter identifier to the application service process. Upon receiving the filter identifier, the application service process is triggered to obtain media asset data corresponding to the media asset data type parameter from the target filter corresponding to the filter identifier. The display is then controlled to display the media asset data corresponding to the media asset data type parameter according to the media asset data display method preset by the interactive application. Since the filter identifier is transmitted first and the media asset data is actively acquired by the application service process, the amount of transmitted media asset data is reduced compared to indirect transmission of the media asset data to the application service process via the interactive service process, thereby improving data transmission efficiency and communication efficiency.

[0093] In some embodiments, the present application provides a display device, comprising: a display and a controller; the controller is configured to: upon receiving a play operation of a live program, obtain an interactive application data packet from the broadcast information of the live program, and start an interactive application based on the interactive application data packet; during the process of starting the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media data type parameter, trigger a data service process through an application service process to obtain a filter identifier, the filter identifier is used to find a target filter, and the target filter is used to obtain media data corresponding to the media data type parameter from the broadcast information; when the data service process obtains the filter identifier, trigger a response callback function of the data service process to transmit the filter identifier to the interactive service process; when the interactive service process receives the filter identifier, trigger the interactive service process to transmit the filter identifier to the application service process; when the application service process receives the filter identifier, trigger the application service process to obtain media data corresponding to the media data type parameter from the target filter corresponding to the filter identifier; and control the display to display the media data corresponding to the media data type parameter according to the media data display method preset by the interactive application.

[0094] In this embodiment, since the filter identifier is transmitted first and then the application service process actively obtains the media data, for media data with a large amount of data, the amount of data transmitted is reduced compared to indirectly transmitting the media data to the application service process through the interactive service process, thereby improving data transmission efficiency and communication efficiency.

[0095] In some embodiments, when the controller receives a playback operation of a live broadcast program and obtains an interactive application data packet from the broadcast information of the live broadcast program, it is configured to: start the application service process when receiving the playback operation of the live broadcast program, and send an application data acquisition request to the data service process through the application service process, wherein the application data acquisition request carries a business data type parameter; when the data service process receives the data acquisition request, trigger the data service process to obtain the business data in the broadcast information of the live broadcast program from the filter corresponding to the business data type parameter, and transmit the business data to the application service process; when the application service process receives the business data, trigger the application service process to obtain the interactive application data packet from the business data.

[0096] The service data in the broadcast information may include multiple tables, including but not limited to: TOT (Time and Date Table, used to provide current time and date information), PAT (Program Association Table, Program Association Table), PMT (Program Map Table, Program Map Table), NIT (Network Information Table, Network Information Table), SDT (Service Description Table, which describes the various services provided to the audience and is divided into different sub-tables, each containing detailed content of the current TS stream and other TS streams. Without SDT, the decoder cannot provide the audience with relevant service information), EIT (Event Information Table, which describes the information of various services at the current and next moments), AIT (Application Information Table, which may include the name or logo of the interactive application, a brief description or function introduction of the interactive application, an icon or picture of the interactive application, information such as whether the interactive application is installed or available, and the version number or developer information of the interactive application. Based on the information in the interactive application service list, it can be used to build a user interface and display available interactive applications in the user interface), DSMCC (Digital Storage Media Command and Control Center), Control, a digital storage media command and control extension protocol, is used to manage MPEG-1 and MPEG-2 data streams, enabling them to run both on a single machine and in a heterogeneous network (i.e., a network constructed with similar equipment but running different protocols). Each table may contain multiple sections. These sections are organized according to a specific syntax and format. Each section contains specific information, such as program information, network information, event information, etc., and has a unique identifier for easy identification. The filter corresponding to the service data type parameter is used to filter out, or extract, service data from the broadcast information.

[0097] Specifically, the application service process can send an application data retrieval request to the interactive service process, which then forwards the application data retrieval request to the data service process. The interactive service process can establish a communication connection with the application service component, forwarding the data retrieval request to the application service component, which then forwards the data retrieval request to the data service process. The application service component is a component within the live broadcast application. Communication between the live broadcast application process and the application service process occurs through the interactive service process and the application service component.

[0098] In some embodiments, after receiving the data acquisition request, the data service process applies for a filter corresponding to the section and obtains the interactive application data packet from the filter corresponding to the section. The data service process can apply for the filter by calling TunerApi through the middleware (TvMw).

[0099] like Figure 8 The figure shows a timing diagram for transmitting interactive application data packets and filter identifiers. TIAM represents the application service component, TIAS represents the interactive service process, Ginga service represents the application service process, and TIS represents the data service process. The timing diagram consists of two parts: the timing for obtaining interactive application data packets and the timing for obtaining filter identifiers. In the interactive application data packet timing, requesting broadcast information refers to sending a data retrieval request. A "filter" is a filter used to filter service data from broadcast information, and registering a filter callback refers to registering a callback function associated with the filter. "Data" includes interactive application data packets. A data callback refers to the middleware transmitting "data" to the TIS. "Notify broadcast information reply" transmits the obtained service data. In the filter identifier timing, requesting broadcast information refers to the first data retrieval instruction, "filter" refers to the filter used to filter media data corresponding to the media asset type parameter from the broadcast information, and a shared filter is the requested filter, also known as the target filter. Obtaining the shared filter identifier is used to obtain the filter identifier of the target filter. The filter identifier uniquely identifies a filter. "Notify broadcast information reply" transmits the obtained filter identifier.

[0100] In this embodiment, since the amount of business data is usually not large, the business data is directly transmitted instead of the filter identifier, which can shorten the communication process of the application service process obtaining business data, thereby improving the efficiency of obtaining interactive application data packets.

[0101] In some embodiments, the business data includes an application information table and an application data table. When the application service process receives the business data, the controller triggers the application service process to obtain an interactive application data packet from the business data. The controller is configured to: when the application service process receives the business data, trigger the application service process to obtain the application information table from the business data, and obtain the interactive application identifier from the application information table; when the application service process obtains the interactive application identifier, trigger the application service process to query the application data table to obtain the interactive application data packet corresponding to the interactive application identifier.

[0102] The application information table is, for example, an AIT table, and the application data table is, for example, a DSMCC table. The interactive application identifier may be an index of an interactive application data packet in the application data table, so that the corresponding interactive application data packet can be queried from the application data table according to the interactive application identifier.

[0103] In this embodiment, the interactive application identifier is obtained from the application information table, and the interactive application data packet corresponding to the interactive application identifier is obtained from the application data table, so that the interactive application data packet can be quickly obtained.

[0104] In some embodiments, when the controller executes the steps of obtaining an interactive application data packet from the broadcast information of a live program and launching an interactive application based on the interactive application data packet, the controller is configured to: when launching a live application process, obtain application description information from the broadcast information of the live program through the live application process; when the application description information indicates that an interactive application exists in the broadcast information of the live program, send a service launch request to the application management component through the live application; respond to the service launch request through the application management component and instruct the interactive service process to launch an application service process; when the application service process is launched, obtain an interactive application data packet from the broadcast information of the live program through the application service process and launch the interactive application based on the interactive application data packet. The live application process is the process corresponding to the live application.

[0105] Among them, the application description information can be an AIT table, i.e., an application information table. When the AIT table can include the application type corresponding to the application data packet in the broadcast information, and when the application type corresponding to the application data packet is an interactive application, i.e., a Ginga type application, it is determined that the application description information represents the presence of an interactive application in the broadcast information of the live program.

[0106] Specifically, when starting the application service process, the interactive service process can send a service readiness notification to the live broadcast application process. When the live broadcast application process receives the service readiness notification, the live broadcast application process sends an interactive application start request to the interactive service process. For example, the live broadcast application process can send the interactive application start request to the interactive service process by calling the application management component. When the interactive service process receives the interactive application start request, the interactive service process calls the application service process to start the interactive application.

[0107] like Figure 9The figure shows a sequence diagram from starting to shutting down an application service process. LiveTv represents the live broadcast application process, Ginga TIAS represents the interactive service process, and Ginga service represents the application service process. LiveTV (i.e., LiveTv) is started using the standard TvInteractiveView method, and the startup process is implemented by calling Ginga TIAS through the TIAF framework (TIAM). LiveTV can control the timing of starting and stopping the Ginga service process. When a source switch or application switch is triggered within the live broadcast application, the live broadcast application process stops the Ginga service process. When a live program is played, the live broadcast application process starts the Ginga service process (i.e., the application service process). For example, when switching to a DTV source, the AIT reporting switch is enabled, and the Ginga service process is started after the interactive service process receives an AIT message from the middleware. The Ginga service process can request and release resources. Users can start or stop the Ginga service process using the switches provided on the Ginga menu page. Exit the Ginga service process when the display device is recording, time-shifting, switching channels, or using an EPG (Electronic Program Guide). Return to Live TV and restart the Ginga service process. In the figure, Surface is an abstract concept used for graphics and video rendering in the Android framework. It represents a screen surface, which can be the entire screen or an independent window in the application UI. Media View is a view used to play multimedia data. Url stands for Uniform Resource Locator.

[0108] In the figure, a TIAS service link is established to establish a communication connection between TIAM and Ginga TIAS. After the communication connection is established, TIAM and Ginga TIAS can communicate and transfer data or messages. Creating a session triggers the interactive service process to create a session, which then launches the application service process within that session. "Notify service status change ready" is a service readiness notification, used to notify the application service process of its readiness. When the interactive service process receives a request to launch an interactive application, it sends a "Start data processing" notification to the application service process, enabling the application service process to retrieve the interactive application data packet from the broadcast information and launch the interactive application. The "Broadcast information request, broadcast information notification reply" process in the figure aligns with the sequence for retrieving the interactive application data packet described earlier. "Download completed" notifies the interactive service process that the application service has retrieved the interactive application data packet from the business data, triggering the interactive service process to send an instruction to the application service process to launch the application. When the display device switches from the scene of playing the live program to other scenes, the live application process sends an instruction to stop the interactive application to the interactive service process. For example, the live application process sends an instruction to stop the interactive application to the interactive service process by calling the TIAM component to trigger the interactive service process to stop the application service process.

[0109] When TIAM starts, it scans all application service implementations (such as TIAS) in the system and registers them in the service list. The service registration information usually includes the service name, version number, provided interface, etc.

[0110] When an application needs a service, it will search for available service implementations through TIAM's service list. The application can filter suitable services by conditions such as the service name and version number. Once a suitable service implementation is found, the application will bind the service through the interface provided by TIAM. The binding process usually includes steps such as establishing a communication channel and negotiating a communication protocol. After the binding is successful, the application can communicate with TIAS through TIAM and call the required service interface. The communication process can be synchronous or asynchronous, depending on how the service is implemented and the needs of the application. When an application no longer needs a service, it will unbind from the service through TIAM. After unbinding, TIAM will remove the service from the application's service list and release related resources. For example, when a user is watching DTV, he can call up the Ginga application at any time to play Ginga resources.

[0111] In this embodiment, the service start request is sent only when the application description information indicates that there is an interactive application in the broadcast information of the live program, thereby avoiding sending the service start request when there is no interactive application, thereby reducing resources in the display device.

[0112] In some embodiments, when the controller executes the media data display method preset by the interactive application and controls the display to display the media data corresponding to the media data type parameters, it is configured to: determine the media data display area according to the media data display method preset by the interactive application; control the display to display the media playback window and the interactive interface of the interactive application in layers, and display the media data corresponding to the media data type parameters in the media playback window; wherein the media data is displayed in the media data display area, and the interactive interface is displayed on the upper layer of the media playback window, and the interactive interface does not block the media playback window.

[0113] Among them, the interactive interface can display interactive content such as voting content. Figure 10 As shown, the display of the display device displays an interactive interface 1002 and a media playback window 1004. There is a window in the interactive interface that is a transparent area. The transparent area is the media data display area. The media playback window is displayed at the position of this window. Therefore, although the interactive interface is displayed on the upper layer of the media playback window, the interactive interface will not block the media playback window.

[0114] In some embodiments, the interactive interface may display interactive controls related to the media asset playback window. Figure 11 As shown, an interactive interface 1102 and a media playback window 1104 are displayed on the display of the display device. The interactive interface is located above the media playback window. Interactive controls related to the media playback window are displayed in the interactive interface. The interactive controls related to the media playback window are, for example, the START control, STOP control, PAUSE control, and RESUME control in the figure. Window adjustment controls are, for example, the UP control, Left control, Right control, Down control, and ENTER (full screen display) control in the figure.

[0115] In some embodiments, when a trigger operation for an interactive control is detected, the application service process can send a corresponding instruction to the live application process through the interactive service process, so that the live application process performs the processing corresponding to the trigger operation of the interactive control. Figure 12As shown, the application service process can send instructions such as TUNE (for tuning to a specified channel), TUNE_NEXT (for tuning to the next channel, TUNE_PREV (for tuning to the previous channel), STOP (for stopping the currently playing content), SET_STREAM_VOLUME (for setting the volume level of the streaming media), SELECT_TRACK (user selects a specific audio track or subtitle track), SET_AUDIO_PROPERTY (for setting audio properties such as audio output device, audio mode or audio effect, etc.) to the live application process.

[0116] In this embodiment, the media resource playback window and the interactive interface can be displayed simultaneously, so that interaction can be triggered on the interactive interface while watching the media resource, thereby improving the flexibility of interaction.

[0117] In some embodiments, the media playback window is provided by a live broadcast application, and the interactive interface includes interactive controls for the media playback window. The controller is also configured to: when a trigger operation for the interactive control is detected, call the target interface function corresponding to the trigger operation in the interactive service process through the application service process; when the interactive service process receives the call for the target interface function, initiate a callback request for the target callback function to the live broadcast application process through the interactive service process, wherein the target callback function is a callback function corresponding to the target interface function; when the live broadcast application process receives the callback request, perform processing corresponding to the trigger operation on the media playback window through the live broadcast application process.

[0118] The live application process refers to the process of the live application. When a trigger operation on an interactive control is detected, the application service process can call the view-related interface to instruct LiveTV to perform corresponding operations on the media playback interface.

[0119] Specifically, for example, if the interactive control is for changing the size or position of the media playback window, the target interface function that the application service process can call might be SetVideoBounds (used to set the boundaries of the video playback area, which refers to the media playback window), and the target callback function might be onSetVideoBounds. When the live application process receives the callback request, it executes the operation to set the boundaries of the video playback area, such as updating the playback window position.

[0120] In some embodiments, the application service process can call interfaces related to the view and eventually call back to LiveTV for implementation. LiveTV obtains relevant information (such as channel information, channel information, volume, live video window size, track) from the standard TvView and the AudioManager in the controller, and then returns it to the Ginga service process, i.e. the application service process. The AudioManager allows the application to control the volume of the device, including media volume, call volume, ringtone volume, etc. For example Figure 12 In the , the application service process can call requestCurrentTvInputId (request the identifier of the input source of the current TV), RequestCurrentChannelUri (called when requesting the URL of the current channel), RequestCurrentChannelLcn (called when requesting the logical channel number of the current channel), RequestCurrentVideoBounds (called when requesting the boundaries of the current video playback area), RequestStreamVolume (called when requesting the volume of the current streaming media), RequestTrackInfoList (called when requesting the currently available volume or subtitle track list to allow the user to select different audio tracks or subtitle tracks), sendPlayBackCommandRequest (called when requesting playback control commands such as play, pause, fast forward or rewind, etc.), and obtain information through corresponding callback functions such as onRequestCurrentChannelUri, onRequestCurrentChannelLcn, onRequestCurrentVideoBounds, onRequestStreamVolume, onRequestTrackInfoList, onPlayBackCommandRequest, etc. Correspondingly, after the live broadcast application process obtains relevant information according to the callback function, it can call the sending interface function to transmit the relevant data to the interactive service process. The interactive service process transmits the relevant information to the application service process by calling the callback function corresponding to the sending interface function.

[0121] Among them, the sending interface function is, for example, Figure 12sendCurrentTvInputId (sends the unique identifier of the current TV input source. In Live TV applications, users may switch between different input sources, such as HDMI input, cable TV, satellite TV, or streaming services. Sending the ID of the current input source ensures that the application knows and displays the correct input source information), sendCurrentChannelUri (sends the URI (Uniform Resource Identifier) ​​of the currently playing channel. The URI can be a link to the channel stream address, which can be a live network stream, IPTV service, or other form of streaming media), sendCurrentChannelLcn (sends the logical channel number of the currently playing channel. The logical channel number usually corresponds to the channel number that the user sees in the TV guide or channel list), sendCurrentVideoBounds (sends the boundary information of the current video playback area), sendStreamVolume (used to send the volume level of the current streaming media playback), and sendTrackInfoList (used to send the audio track and video track information list of the currently playing content). The callback function corresponding to the sending interface function is, for example, Figure 12 onCurrentTvInputId, onCurrentChannelUri, onCurrentChannelLcn, onCurrentVideoBounds, onStreamVolume, and onTrackInfoList.

[0122] In some embodiments, live streaming applications can call TvView-related interfaces to perform TvView-related operations. These TvView-related interfaces include, but are not limited to, getLeft, getTop, getRight, getBottom, layout, getTracks, getSelectedTrack, tune, and selectTrack. getLeft, getTop, getRight, and getBottom are used to obtain the position of the TvView on the screen. layout is used to set the position and size of the TvView and can be used to initialize or resize the TvView. getTracks is used to obtain available tracks in the video stream (such as audio tracks and subtitle tracks). getSelectedTrack is used to obtain the currently selected track. selectTrack is used to select a specific track. In live streaming applications, when the user wishes to change the audio language or enable / disable subtitles, selectTrack is called to do so. tune is used to tune to a specific channel or program to change the currently playing TV program. Live streaming applications can call TvInteractiveAppView-related interfaces to perform TvInteractiveAppView-related operations.

[0123] The application service process can also modify the volume, resize the live video window, and switch audio and video tracks. It also supports stop av (stopping audio and video) (implemented by setting trackid = null), switching channels (for example, switching between the previous and next channels), and freeze and unfreeze (using the stop command plus the freeze parameter to freeze, and using the tune command plus the current channel's parameters to unfreeze). The application service process also supports sound effects adjustment to adjust bass, treble, and sound balance. For example, this can be achieved by adding the SET_AUDIO_PROPERTY type, which carries specific adjustment parameters.

[0124] In this embodiment, communication between the live broadcast application process and the application service process is realized through the target interface function and the target callback function. The live broadcast application process and the application service process are isolated through the interactive service process, which decouples the live broadcast application and the Ginga service to a certain extent, thereby improving the reusability of the Ginga service.

[0125] In some embodiments, when the controller executes triggering the data service process to obtain a filter identifier through the application service process, it is configured to: send a second data acquisition request carrying a media asset data type to the interactive service process through the application service process, and the second data acquisition request carries a media asset data type parameter; when the interactive service process receives the second data acquisition request, trigger the interactive service process to call the data acquisition callback function registered to the interactive service process in the application management component to send a third data acquisition request to the data service process, and the third data acquisition request carries a media asset data type parameter; when the data service process receives the third data acquisition request, trigger the data service process to obtain the filter identifier.

[0126] The application management component is, for example, the TIAM mentioned above. In response to the calling of the data acquisition callback function, the interaction management component causes the data service process to send a third data acquisition request, which carries a media asset data type parameter.

[0127] In this embodiment, the data service process and the application service process are isolated through the interactive service process, which decouples the live broadcast application and the Ginga service to a certain extent, thereby improving the reusability of the Ginga service.

[0128] In some embodiments, the playback operation is triggered through an interface provided by the live broadcast application, and the controller is further configured to: establish a communication connection between the live broadcast application process and the application service process when the live broadcast application process and the application service process have been started; in response to an input interactive application menu display instruction, control the display to display the interactive application menu interface, and display an interactive application list entry in the interactive application menu interface; in response to a trigger operation for the interactive application list entry, control the display to display the interactive application list, wherein the interactive application list is obtained by the live broadcast application process from the application service process through the communication connection.

[0129] The interactive application menu display instruction is used to instruct the display of an interactive application menu interface, such as the Ginga menu interface. The interactive application menu display instruction, for example, is a Ginga menu display instruction. The Ginga menu display instruction can be input via a remote control or mobile device, and can be a voice command or an instruction input via a remote control. The interactive application list can include icons and names of interactive applications. Interactive applications can also be referred to as Ginga applications. The communication connection between the live broadcast application process and the application service process can be an AIDL service link.

[0130] Specifically, the controller responds to a trigger operation on the interactive application list entry, obtains the interactive application list, displays the Ginga application list interface, and displays the interactive application list in the Ginga application list interface. When an interactive application icon is selected, the application details of the interactive application can also be displayed in the Ginga application list interface.

[0131] In some embodiments, the live broadcast application process sends an application list acquisition request to the application service process through the aidl communication connection, and receives an interactive application list returned by the application service process in response to the application list acquisition request, where the interactive application list is returned through the aidl communication connection.

[0132] like Figure 13 As shown, an interactive application menu interface, namely the Ginga menu interface 1300, is provided. The Ginga menu interface includes a Ginga setting item 1302, an automatic run item 1304, an interactive application list entry 1306, and a WebSocket client list entry 1308. The WebSocket client is a technology that allows different applications to communicate and interact over the network. Through the Webservices Registry, users can register, search, and call available WebSocket clients, thereby realizing data exchange and function calls between different applications. In response to a trigger operation on the interactive application list entry 1306, the controller displays the Ginga application list interface, and the Ginga application list interface displays an interactive application list, such as Figure 13 As shown, a Ginga application list interface 1400 is provided. Ginga application list interface 1400 displays icons corresponding to multiple Ginga applications, namely, application 1 through application 7, which correspond to icons 1 through 7, respectively. Application 1 is selected in the figure, and application details of application 1 are displayed. The application details include a description, version, and size, with the size unit being megabytes (MB).

[0133] In this embodiment, a communication connection is established between the live broadcast application process and the application service process. Through the communication connection, the live broadcast application process and the application service process can communicate directly, thereby improving communication efficiency.

[0134] In some embodiments, the interactive application list includes icons corresponding to the interactive application, and the controller is further configured to: in response to an application stop operation triggered by the icon of the interactive application in the interactive application list, trigger the live broadcast application process to send an application stop request for the interactive application to the application service process through a communication connection; when the application service process receives the application stop request, trigger the application service process to stop running the interactive application, and return a status update notification corresponding to the interactive application to the live broadcast application process through the communication connection, the status update notification is used to indicate that the interactive application has stopped running; in response to the status update notification, update the display status of the icon of the interactive application in the interactive application list, wherein, after the update, the display status of the icon indicates that the interactive application has stopped running.

[0135] In some embodiments, the Ginga menu interface further displays a WebSocket client list entry, and the controller is further configured to, in response to a triggering operation on the WebSocket client list entry, control the display to display the WebSocket client list, wherein the WebSocket client list is obtained from the application service process via an AIDL communication connection. For example, a live broadcast application process may send a WebSocket client list request to the application service process, and receive a WebSocket client list returned by the application service process in response to the WebSocket client list request, wherein the WebSocket client list is returned via the AIDL communication connection.

[0136] In some embodiments, the live broadcast application process is further configured to: in response to a setup operation triggered by selecting a target WebSocket client in the WebSocket client list, send a setup request for the target WebSocket client to the application service process via an AIDL communication connection, wherein the setup request matches the setup operation; receive a setup success result returned by the application service process in response to the setup request, wherein the setup success result is returned via the AIDL communication connection; and based on the setup success result, update and display the WebSocket client list. The setup operation includes, but is not limited to, modifying the authorization status or deleting the WebSocket client. The authorization status is divided into authorized and unauthorized. Modifying trust refers to modifying the authorization status. Authorized indicates that the WebSocket client is trusted, and unauthorized indicates that the WebSocket client is not trusted.

[0137] like Figure 14As shown, a WebSocket client list 1500 is displayed, which includes the names of multiple registered WebSocket clients, such as Client name1 to Client name3. The live application process responds to the trigger operation for the name of the WebSocket client and displays the service setting interface corresponding to the WebSocket client, such as Figure 14 As shown, when Client name 1 is clicked, service settings interface 1600 is displayed. Service settings interface 1600 includes an Authorization switch and a Remove Entry item. When the Authorization switch is on, it indicates that the WebSocket client represented by Client name 1 is trusted. In response to the triggering operation on the Remove Entry item, the live broadcast application process displays a removal confirmation window 1700. In response to the triggering operation on the confirmation control in removal confirmation window 1700, the live broadcast application process removes Client name 1 from the WebSocket client list.

[0138] like Figure 15The figure shows a timing diagram of communication between the application service process and the live broadcast application process via an AIDL communication connection. The diagram includes: When the Ginga service is ready, the application service process notifies the live broadcast application process of service status changes via the TIAS and TIAM modules. "Service ready" indicates that the Ginga service has started and is ready to process requests. SERVICE_STATE_READY is a specific state transition that indicates that the Ginga service has transitioned from one state to a ready state. Upon determining that the Ginga service is ready, the live broadcast application process establishes an AIDL communication connection with the application service process. An AIDL communication connection is also called an AIDL service link. A successful link indicates that the AIDL communication connection has been successfully established. The live broadcast application process can use the AIDL communication connection to set application status monitoring and platform property monitoring for the application service process. Setting application status monitoring is used to set a method for monitoring the status of interactive applications in the application service process, so that the application service process can monitor and report the status of interactive applications to the live broadcast application process. Setting platform property monitoring is used to set a property monitoring method for monitoring platform properties in the application service process. Through property monitoring, the application service process can monitor platform properties from the live broadcast application process. Platform attributes refer to display device attributes, which may include, but are not limited to, resolution and codec. The live broadcast application process can obtain an application list, or interactive application list, from the application service process via an AIDL service link. When the application service process completes downloading an interactive application, it can return an application status indicating download completion to the live broadcast application process. At this point, the live broadcast application process can obtain a new application list, or interactive application list, to update the displayed interactive application list. When a user triggers the start / stop operation of an interactive application (interactive application), the live broadcast application process notifies the application service process via the AIDL service link to start / stop the application (interactive application). After starting / stopping the application (interactive application), the application service process can send a STARTED / STOPPED application status update notification to the live broadcast application process via the AIDL service link. The STARTED status indicates that the application has been started and is running, while the STOPPED status indicates that the application has stopped. The live broadcast application process can also obtain a WebSocket client list from the application service process via the AIDL service link. When a user triggers a WebSocket client configuration operation, the live broadcast application process sends a corresponding configuration request to the application service process via the AIDL service link to configure the WebSocket client. In the figure, wscClient refers to the WebSocket Client.

[0139] In this embodiment, the application stop request is directly transmitted through the communication connection between the live broadcast application process and the application service process, thereby improving communication efficiency.

[0140] It should be understood that, although the steps in the flowcharts of the above embodiments are shown in sequence as indicated by the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the flowcharts of the above embodiments may include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily to be performed in sequence, but can be performed in turn or alternately with other steps or at least a portion of steps or stages in other steps.

[0141] Based on the same inventive concept, the present application also provides a content display device for implementing the aforementioned content display method. The solution provided by this device is similar to the solution described in the aforementioned method. For specific limitations, please refer to the limitations of the content display method above and will not be repeated here.

[0142] In some embodiments, the present application further provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the above-mentioned content display method when the computer program is executed by a processor.

[0143] In some embodiments, the present application further provides a computer program product, including a computer program, which implements the steps of the above-mentioned content display method when executed by a processor.

[0144] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. In particular, any reference to memory, database, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the various embodiments provided herein may be, but are not limited to, general-purpose processors, central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), programmable logic devices (PLDs), quantum computing-based data processing logic devices, artificial intelligence (AI) processors, and the like.

[0145] The technical features of the above embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0146] The above-described embodiments merely represent several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present application. It should be noted that a person of ordinary skill in the art may make various modifications and improvements without departing from the spirit of the present application, and these modifications and improvements fall within the scope of protection of the present application. Therefore, the scope of protection of the present application shall be determined by the appended claims.

Claims

1. A display device, characterized in that: include: Display and controller; The controller is configured to: When receiving a play operation of a live program, obtaining an interactive application data packet from the broadcast information of the live program, and starting an interactive application based on the interactive application data packet; During the process of starting the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media asset data type parameter, the application service process is triggered to trigger a data service process to obtain a filter identifier, the filter identifier is used to find a target filter, and the target filter is used to obtain media asset data corresponding to the media asset data type parameter from broadcast information; When the data service process obtains the filter identifier, triggering the data service process to call a response callback function of the application service process to transmit the filter identifier to the application service process; When the application service process receives the filter identifier, triggering the application service process to obtain the media asset data corresponding to the media asset data type parameter from the target filter corresponding to the filter identifier; According to the media data display mode preset by the interactive application, the display is controlled to display the media data corresponding to the media data type parameter.

2. The display device according to claim 1, wherein When the controller executes the playback operation of the live program upon receiving the playback operation of the live program, and acquires the interactive application data packet from the broadcast information of the live program, the controller is configured to: Upon receiving a play operation for a live program, starting an application service process, and sending an application data acquisition request to the data service process through the application service process, wherein the application data acquisition request carries a service data type parameter; When the data service process receives the data acquisition request, triggering the data service process to acquire the service data in the broadcast information of the live program from the filter corresponding to the service data type parameter, and transmitting the service data to the application service process; When the application service process receives the service data, the application service process is triggered to obtain the interactive application data packet from the service data.

3. The display device according to claim 2, wherein The business data includes an application information table and an application data table. When the application service process receives the business data, the controller triggers the application service process to obtain the interactive application data packet from the business data, and is configured to: When the application service process receives the service data, triggering the application service process to obtain an application information table from the service data, and obtaining an interactive application identifier from the application information table; When the application service process obtains the interactive application identifier, the application service process is triggered to query the application data table to obtain the interactive application data packet corresponding to the interactive application identifier.

4. The display device according to claim 1, wherein When the controller executes the step of acquiring the interactive application data packet from the broadcast information of the live program and starting the interactive application based on the interactive application data packet, the controller is configured to: In the case of starting a live broadcast application process, obtaining application description information from the broadcast information of the live broadcast program through the live broadcast application process; When the application description information indicates that an interactive application exists in the broadcast information of the live program, sending a service start request to the application management component through the live application; Responding to the service start request through the application management component and instructing the interactive service process to start the application service process; When the application service process is started, the application service process obtains an interactive application data packet from the broadcast information of the live program, and starts an interactive application based on the interactive application data packet.

5. The display device according to claim 1, wherein When the controller executes the media resource data display mode preset according to the interactive application and controls the display to display the media resource data corresponding to the media resource data type parameter, the controller is configured to: Determining a media resource data display area according to a media resource data display method preset by the interactive application; Controlling the display to display the media resource playback window and the interactive interface of the interactive application in layers, and displaying the media resource data corresponding to the media resource data type parameter in the media resource playback window; The media resource data is displayed in the media resource data display area, and the interactive interface is displayed on an upper layer of the media resource playback window, and the interactive interface does not block the media resource playback window.

6. The display device according to claim 5, wherein: The media resource playback window is provided by a live broadcast application, the interactive interface includes interactive controls for the media resource playback window, and the controller is further configured to: In the case of detecting a trigger operation for the interactive control, calling a target interface function corresponding to the trigger operation in the interactive service process through the application service process; When the interactive service process receives a call to the target interface function, a callback request for a target callback function is initiated to the live broadcast application process through the interactive service process, wherein the target callback function is a callback function corresponding to the target interface function; When the live broadcast application process receives the callback request, the live broadcast application process performs processing corresponding to the triggering operation on the media resource playback window.

7. The display device according to claim 1, wherein When the controller executes the step of triggering the data service process to obtain the filter identifier through the application service process, the controller is configured to: Sending, through the application service process, a second data acquisition request carrying a media asset data type to the interactive service process, where the second data acquisition request carries a media asset data type parameter; When the interactive service process receives the second data acquisition request, the interactive service process is triggered to call the data acquisition callback function registered with the interactive service process in the application management component to send a third data acquisition request to the data service process, where the third data acquisition request carries the media asset data type parameter; When the data service process receives the third data acquisition request, the data service process is triggered to acquire a filter identifier.

8. The display device according to claim 1, wherein The playback operation is triggered through an interface provided by the live broadcast application, and the controller is further configured to: When the live broadcast application process and the application service process have been started, establishing a communication connection between the live broadcast application process and the application service process; In response to an input interactive application menu display instruction, controlling the display to display an interactive application menu interface and displaying an interactive application list entry in the interactive application menu interface; In response to a triggering operation on the interactive application list entry, the display is controlled to display the interactive application list, wherein the interactive application list is obtained by the live application process from the application service process through the communication connection.

9. The display device according to claim 8, wherein The interactive application list includes icons corresponding to interactive applications, and the controller is further configured to: In response to an application stop operation triggered by the icon of the interactive application in the interactive application list, triggering the live application process to send an application stop request for the interactive application to the application service process through the communication connection; When the application service process receives the application stop request, the application service process is triggered to stop running the interactive application, and a status update notification corresponding to the interactive application is returned to the live broadcast application process through the communication connection, where the status update notification is used to indicate that the interactive application has stopped running; In response to the status update notification, the display status of the icon of the interactive application is updated in the interactive application list, wherein after the update, the display status of the icon indicates that the interactive application has stopped running.

10. A content display method, characterized in that: Applied to a display device, the method includes: When receiving a play operation of a live program, obtaining an interactive application data packet from the broadcast information of the live program, and starting an interactive application based on the interactive application data packet; During the process of starting the interactive application, when a first data acquisition instruction is detected and the first data acquisition instruction carries a media asset data type parameter, the application service process is triggered to trigger a data service process to obtain a filter identifier, the filter identifier is used to find a target filter, and the target filter is used to obtain media asset data corresponding to the media asset data type parameter from broadcast information; When the data service process obtains the filter identifier, triggering the data service process to call a response callback function of the application service process to transmit the filter identifier to the application service process; When the application service process receives the filter identifier, triggering the application service process to obtain the media asset data corresponding to the media asset data type parameter from the target filter corresponding to the filter identifier; The media data corresponding to the media data type parameter is displayed according to the media data display method preset by the interactive application.

Citation Information

Patent Citations

  • Digital television playback and record method and device

    CN102801945A

  • Acquiring network configuration data for a television receiver

    US20150215670A1