CN112822532B - Editing and generating method of broadcast protocol code stream file and display device - Google Patents

Editing and generating method of broadcast protocol code stream file and display device Download PDF

Info

Publication number
CN112822532B
CN112822532B CN202110054338.5A CN202110054338A CN112822532B CN 112822532 B CN112822532 B CN 112822532B CN 202110054338 A CN202110054338 A CN 202110054338A CN 112822532 B CN112822532 B CN 112822532B
Authority
CN
China
Prior art keywords
packet
channel
dictionary
signaling
local link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110054338.5A
Other languages
Chinese (zh)
Other versions
CN112822532A (en
Inventor
刘剑
赵忠民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hisense Electronic Technology Shenzhen Co ltd
Original Assignee
Hisense Electronic Technology Shenzhen Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hisense Electronic Technology Shenzhen Co ltd filed Critical Hisense Electronic Technology Shenzhen Co ltd
Priority to CN202110054338.5A priority Critical patent/CN112822532B/en
Publication of CN112822532A publication Critical patent/CN112822532A/en
Application granted granted Critical
Publication of CN112822532B publication Critical patent/CN112822532B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/422Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
    • H04N21/42204User interfaces specially adapted for controlling a client device through a remote control device; Remote control devices therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

The application discloses a method for editing and generating a broadcast protocol code stream file and a display device, wherein if an acquired IP packet is of an LLS type, an LLS initial IP packet dictionary is generated; if the IP packet is of the channel signaling type, generating a channel signaling initial IP packet dictionary; generating an LLS IP packet dictionary to be replaced based on the LLS modified dictionary and the LLS initial IP packet dictionary; and generating a channel signaling to-be-replaced IP packet dictionary based on the channel signaling modified dictionary and the channel signaling initial IP packet dictionary. And writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to the broadcast protocol. Therefore, the method and the display equipment can realize the editing and the regeneration of the code stream file, obtain the code stream file which accords with the ATSC3.0 broadcast protocol, realize the comprehensive and effective verification of the developed ATSC3.0 service and improve the development quality of the ATSC3.0 service.

Description

Editing and generating method of broadcast protocol code stream file and display device
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method for editing and generating a broadcast protocol code stream file and a display device.
Background
Along with the rapid development of display equipment, the functions of the display equipment are more and more abundant, and the performance is also more and more powerful, and at present, the display equipment comprises an intelligent television, an intelligent set top box, an intelligent box, a product with an intelligent display screen and the like. When the digital tv function is implemented using the display device, ATSC3.0 broadcasting protocol, which is the latest digital tv standard, may be configured in the display device.
In the development process of the ATSC3.0 protocol and service, the verification of the code stream files is often required, and the code stream files are generally generated through a specific tool. Because the information stored in the code stream file is more, a single code stream file can only verify the specific function point of the ATSC3.0 service, so that in actual development, a plurality of code stream files are often needed. However, as ATSC3.0 is a newly proposed broadcast protocol, the number of available code stream files is very limited and the quality is uneven, so that the developed ATSC3.0 service cannot be verified comprehensively and effectively, and the development quality of the ATSC3.0 service is low.
Disclosure of Invention
The application provides an editing and generating method and display equipment of a broadcast protocol code stream file, which aim to solve the problem of low development quality of an ATSC3.0 service due to the fact that the existing code stream file cannot comprehensively and effectively verify the ATSC3.0 service.
In a first aspect, the present application provides a display device comprising:
a display configured to present a user interface;
a controller connected to the display, the controller configured to:
acquiring an IP packet comprising an IP destination address and a port number in a code stream file;
when the IP destination address and the port number are monitored, if the data type of the IP packet is an LLS type, generating an LLS initial IP packet dictionary based on the IP packet and a target LLS type corresponding to the IP packet, wherein the LLS type comprises different LLS types;
if the data type of the IP packet is a channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet;
editing the LLS information corresponding to the target LLS type, and generating an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and the LLS initial IP packet dictionary;
and editing channel signaling information corresponding to the target channel ID, generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, wherein the LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for generating a new code stream file.
In some embodiments of the present application, the controller is further configured to:
monitoring an IP destination address and a port number corresponding to the LLS type in real time;
and if the real-time monitored IP destination address and port number are matched with the obtained IP destination address and port number in the IP packet, determining that the IP destination address and port number in the IP packet are monitored.
In some embodiments of the present application, the controller, in executing the generating of the LLS initial IP packet dictionary based on the IP packet and the target LLS type corresponding to the IP packet, is further configured to:
when the data type of the IP packet is the LLS type, analyzing the IP packet to obtain a UDP packet comprising a payload file;
if the payload file belongs to the content in the service list, analyzing the service list to obtain the IP destination address and the port number of each channel and monitoring, and analyzing the payload file to obtain the LLS information of the target LLS type corresponding to the LLS type;
converting the LLS information of the target LLS type from a binary byte stream form to a character string form, and displaying the LLS information of the target LLS type in the character string form in a user interface;
and creating a key value pair based on the target LLS type and the corresponding IP packet, and generating an LLS initial IP packet dictionary.
In some embodiments of the present application, the controller, in executing the generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet, is further configured to:
when the data type of the IP packet is a channel signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file;
judging whether the payload file is a complete channel signaling object or not;
if so, analyzing the payload file corresponding to the complete channel signaling object to obtain a target channel ID corresponding to the IP packet;
and creating a key value pair based on the target channel ID and a corresponding IP packet list, and generating a channel signaling initial IP packet dictionary, wherein the IP packet list comprises IP packets of all channel signaling types corresponding to the target channel ID.
In some embodiments of the present application, the controller is further configured to:
if the payload file is not a complete channel signaling object, storing the currently read IP packet;
acquiring an IP packet of which the next data type in the code stream file is a channel signaling type, and analyzing the IP packet to obtain a UDP packet comprising a payload file;
recombining the payload file in the IP packet with the payload file in the stored IP packet to obtain a recombined payload file;
and if the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain a target channel ID corresponding to the IP packet.
In some embodiments of the present application, the controller is further configured to:
acquiring channel signaling information corresponding to the target channel ID;
and converting the channel signaling information from a binary byte stream form into a character string form, and displaying the channel signaling information in the character string form in a user interface.
In some embodiments of the present application, the controller, after performing the editing on the LLS information corresponding to the target LLS type, generates an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and the LLS initial IP packet dictionary, and is further configured to:
editing the LLS information corresponding to the target LLS type displayed in a user interface;
converting the edited LLS information corresponding to the target LLS type from a character string form to a binary byte stream form, creating a key-value pair based on the edited LLS information of the target LLS type and the corresponding binary byte stream form, and generating an LLS modified dictionary;
and when the key value of the LLS initial IP packet dictionary is the same as the key value of the LLS modified dictionary, replacing the payload file of the UDP packet in the LLS initial IP packet dictionary with the value of the binary byte stream in the LLS modified dictionary to obtain the LLS to-be-replaced IP packet dictionary.
In some embodiments of the present application, the controller, after executing the editing of the channel signaling information corresponding to the target channel ID, generates a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, and is further configured to:
editing channel signaling information corresponding to the target channel ID displayed in a user interface;
converting the edited channel signaling information corresponding to the target channel ID from a character string form to a binary byte stream form, creating a key value pair based on the target channel ID and the edited channel signaling information corresponding to the binary byte stream form, and generating a channel signaling modified dictionary;
and when the key value of the channel signaling initial IP packet dictionary is the same as the key value of the channel signaling modified dictionary, replacing the binary byte stream value in the channel signaling modified dictionary with the payload file of the UDP packet in the channel signaling initial IP packet dictionary to obtain a channel signaling to-be-replaced IP packet dictionary.
In some embodiments of the present application, the controller is further configured to:
acquiring an IP packet in a code stream file;
if the data type of the IP packet is the LLS type, searching IP packets to be replaced corresponding to different LLS types in the LLS IP packet dictionary to be replaced;
if the data type of the IP packet is a channel signaling type, searching an IP packet list to be replaced corresponding to different channel IDs in an IP packet dictionary to be replaced by the channel signaling;
and writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to a broadcasting protocol.
In a second aspect, the present application also provides a display device, including:
a display configured to present a user interface;
a controller connected to the display, the controller configured to:
acquiring an LLS to-be-replaced IP packet dictionary, a channel signaling to-be-replaced IP packet dictionary and an IP packet comprising an IP destination address and a port number in a code stream file;
judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type;
if the data type of the IP packet is the LLS type, searching IP packets to be replaced corresponding to different LLS types in the LLS IP packet dictionary to be replaced;
if the data type of the IP packet is the channel signaling type, searching a to-be-replaced IP packet list corresponding to different channel IDs in a to-be-replaced IP packet dictionary of the channel signaling;
and writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to a broadcast protocol.
In some embodiments of the present application, if the data type of the IP packet is the LLS type, the controller searches the LLS-to-be-replaced IP packet dictionary for an IP packet to be replaced corresponding to a different LLS type, and is further configured to:
when the data type of the IP packet is the LLS type, analyzing a payload file of a UDP packet in the IP packet to obtain a specified LLS type corresponding to the IP packet;
and searching the IP packet to be replaced corresponding to the specified LLS type in the LLS IP packet dictionary to be replaced based on the specified LLS type.
In some embodiments of the present application, if the data type of the IP packet is a channel signaling type, the controller searches a to-be-replaced IP packet list corresponding to different channel IDs in the to-be-replaced IP packet dictionary for the channel signaling, and is further configured to:
when the data type of the IP packet is a channel signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file;
judging whether the payload file is a complete channel signaling object or not;
if yes, analyzing a payload file corresponding to the complete channel signaling object to obtain an assigned channel ID corresponding to the IP packet;
and searching the to-be-replaced IP packet list corresponding to the specified channel ID in the to-be-replaced IP packet dictionary of the channel signaling based on the specified channel ID.
In some embodiments of the present application, the controller is further configured to:
if the payload file is not a complete channel signaling object, storing the currently read IP packet;
acquiring an IP packet of which the next data type in the code stream file is a channel signaling type, and analyzing the IP packet to obtain a UDP packet comprising a payload file;
recombining the payload file in the IP packet with the payload file in the stored IP packet to obtain a recombined payload file;
and if the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain the appointed channel ID corresponding to the IP packet.
In some embodiments of the present application, the controller is further configured to:
and if the acquired data type of the IP packet is other data types, writing the IP packet into a new code stream file to generate a new code stream file conforming to a broadcast protocol, wherein the other data types are data types except an LLS type and a channel signaling type.
In a third aspect, the present application further provides a method for editing a broadcast protocol code stream file, where the method includes:
acquiring an IP packet comprising an IP destination address and a port number in a code stream file;
when the IP destination address and the port number are monitored, if the data type of the IP packet is an LLS type, generating an LLS initial IP packet dictionary based on the IP packet and a target LLS type corresponding to the IP packet, wherein the LLS types comprise different LLS types;
if the data type of the IP packet is a channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet;
editing the LLS information corresponding to the target LLS type, and generating an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and the LLS initial IP packet dictionary;
editing the channel signaling information corresponding to the target channel ID, generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, wherein the LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for generating a new code stream file.
In a fourth aspect, the present application further provides a method for generating a broadcast protocol code stream file, where the method includes:
acquiring an LLS to-be-replaced IP packet dictionary, a channel signaling to-be-replaced IP packet dictionary and an IP packet comprising an IP destination address and a port number in a code stream file;
judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type;
if the data type of the IP packet is the LLS type, searching IP packets to be replaced corresponding to different LLS types in the LLS IP packet dictionary to be replaced;
if the data type of the IP packet is a channel signaling type, searching an IP packet list to be replaced corresponding to different channel IDs in an IP packet dictionary to be replaced by the channel signaling;
and writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to a broadcast protocol.
In a fifth aspect, the present application further provides a storage medium, where the computer storage medium may store a program, and when the program is executed, part or all of the steps in the embodiments of the method for editing and generating a broadcast protocol code stream file provided in the present application may be implemented.
According to the technical scheme, the editing and generating method and the display device of the broadcast protocol code stream file provided by the embodiment of the invention have the advantages that the IP packets in the code stream file are sequentially acquired during editing, and if the IP packets are LLS types, an LLS initial IP packet dictionary is generated based on the IP packets and the corresponding target LLS types; if the IP packet is of the channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet; respectively editing the LLS information and the channel signaling information, and generating an LLS to-be-replaced IP packet dictionary based on the LLS modified dictionary and the LLS initial IP packet dictionary; and generating a channel signaling to-be-replaced IP packet dictionary based on the channel signaling modified dictionary and the channel signaling initial IP packet dictionary. And when the code stream file is generated, writing the IP packet to be replaced in the LLS IP packet dictionary to be replaced and the IP packet list to be replaced in the channel signaling IP packet dictionary to be replaced into a new code stream file to generate a new code stream file conforming to the broadcasting protocol. Therefore, the method and the display device provided by the embodiment of the invention can be used for editing and regenerating the code stream file to obtain the code stream file conforming to the ATSC3.0 broadcast protocol, comprehensively and effectively verifying the developed ATSC3.0 service and improving the development quality of the ATSC3.0 service.
Drawings
In order to more clearly explain the technical solution of the present application, the drawings needed to be used in the embodiments will be briefly described below, and it is obvious to those skilled in the art that other drawings can be obtained according to the drawings without any creative effort.
FIG. 1 illustrates a usage scenario of a display device according to some embodiments;
fig. 2 illustrates a block diagram of a hardware configuration of the control apparatus 100 according to some embodiments;
fig. 3 illustrates a hardware configuration block diagram of the display apparatus 200 according to some embodiments;
FIG. 4 illustrates a software configuration diagram in a display device according to some embodiments;
FIG. 5 illustrates a general flow diagram of an editing method, a generation method of a broadcast protocol codestream file according to some embodiments;
FIG. 6 illustrates a flow diagram of a method of editing a broadcast protocol codestream file according to some embodiments;
fig. 7 illustrates a total data flow diagram of a method of editing a broadcast protocol codestream file according to some embodiments;
FIG. 8 illustrates an overall data flow diagram for editing codestream information for different data types, according to some embodiments;
FIG. 9 illustrates a schematic diagram of generating an LLS to-be-replaced IP packet dictionary, in accordance with some embodiments;
fig. 10 illustrates a schematic diagram of generating a channel signaling to-be-replaced IP packet dictionary, in accordance with some embodiments;
FIG. 11 illustrates a flow diagram of a method of generating a broadcast protocol codestream file according to some embodiments;
fig. 12 illustrates an overall data flow diagram of a method of generating a broadcast protocol codestream file according to some embodiments.
Detailed Description
To make the purpose and embodiments of the present application clearer, the following will clearly and completely describe the exemplary embodiments of the present application with reference to the attached drawings in the exemplary embodiments of the present application, and it is obvious that the described exemplary embodiments are only a part of the embodiments of the present application, and not all the embodiments.
It should be noted that the brief descriptions of the terms in the present application are only for the convenience of understanding the embodiments described below, and are not intended to limit the embodiments of the present application. These terms should be understood in their ordinary and customary meaning unless otherwise indicated.
The terms "first," "second," "third," and the like in the description and claims of this application and in the above-described drawings are used for distinguishing between similar or analogous objects or entities and not necessarily for describing a particular sequential or chronological order, unless otherwise indicated. It is to be understood that the terms so used are interchangeable under appropriate circumstances.
The terms "comprises" and "comprising," as well as any variations thereof, are intended to cover a non-exclusive inclusion, such that a product or device that comprises a list of elements is not necessarily limited to all of the elements explicitly listed, but may include other elements not expressly listed or inherent to such product or device.
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.
FIG. 1 illustrates a usage scenario of a display device according to some embodiments. As shown in fig. 1, the display apparatus 200 is also in data communication with a server 400, and a user can operate the display apparatus 200 through the smart device 300 or the control device 100.
In some embodiments, the control apparatus 100 may be a remote controller, and the communication between the remote controller and the display device includes at least one of an infrared protocol communication or a bluetooth protocol communication, and other short-distance communication methods, and the display device 200 is controlled by a wireless or wired method. The user may control the display apparatus 200 by inputting a user instruction through at least one of a key on a remote controller, a voice input, a control panel input, and the like.
In some embodiments, the smart device 300 may include any of a mobile terminal, a tablet, a computer, a laptop, an AR/VR device, and the like.
In some embodiments, the smart device 300 may also be used to control the display device 200. For example, the display device 200 is controlled using an application program running on the smart device.
In some embodiments, the smart device 300 and the display device may also be used for communication of data.
In some embodiments, the display device 200 may also be controlled in a manner other than the control apparatus 100 and the smart device 300, for example, the voice command control of the user may be directly received through a module configured inside the display device 200 to obtain the voice command, or may be received through a voice control apparatus provided outside the display device 200.
In some embodiments, the display device 200 is also in data communication with a server 400. The display device 200 may be allowed to be communicatively connected through a Local Area Network (LAN), a Wireless Local Area Network (WLAN), and other networks. The server 400 may provide various contents and interactions to the display apparatus 200. The server 400 may be a cluster or a plurality of clusters, and may include one or more types of servers.
In some embodiments, software steps executed by one step execution agent may be migrated on demand to another step execution agent in data communication therewith for execution. Illustratively, software steps performed by the server may be migrated on demand to be performed on the display device in data communication therewith, and vice versa.
Fig. 2 illustrates a block diagram of a hardware configuration of the control apparatus 100 according to some embodiments. As shown in fig. 2, the control device 100 includes a controller 110, a communication interface 130, a user input/output interface 140, a memory, and a power supply. The control apparatus 100 may receive an input operation instruction from a user and convert the operation instruction into an instruction recognizable and responsive by the display device 200, serving as an interaction intermediary between the user and the display device 200.
In some embodiments, the communication interface 130 is used for external communication, and includes at least one of a WIFI chip, a bluetooth module, NFC, or an alternative module.
In some embodiments, the user input/output interface 140 includes at least one of a microphone, a touchpad, a sensor, a key, or an alternative module.
Fig. 3 illustrates a hardware configuration block diagram of the display apparatus 200 according to some embodiments. Referring to fig. 3, in some embodiments, the display apparatus 200 includes at least one of a tuner demodulator 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a display 260, an audio output interface 270, a memory, a power supply, and a user interface.
In some embodiments the controller comprises a central processor, a video processor, an audio processor, a graphics processor, a RAM, a ROM, a first interface to an nth interface for input/output.
In some embodiments, the display 260 includes a display screen component for displaying pictures, and a driving component for driving image display, a component for receiving image signals from the controller output, displaying video content, image content, and menu manipulation interface, and a user manipulation UI interface, etc.
In some embodiments, the display 260 may be at least one of a liquid crystal display, an OLED display, and a projection display, and may also be a projection device and a projection screen.
In some embodiments, the tuner demodulator 210 receives broadcast television signals via wired or wireless reception, and demodulates audio/video signals, such as EPG data signals, from a plurality of wireless or wired broadcast television signals.
In some embodiments, communicator 220 is a component for communicating with external devices or servers according to various communication protocol types. For example: the communicator may include at least one of a Wifi module, a bluetooth module, a wired ethernet module, and other network communication protocol chips or near field communication protocol chips, and an infrared receiver. The display apparatus 200 may establish transmission and reception of control signals and data signals with the control device 100 or the server 400 through the communicator 220.
In some embodiments, the detector 230 is used to collect signals of the external environment or interaction with the outside. For example, detector 230 includes a light receiver, a sensor for collecting ambient light intensity; alternatively, the detector 230 includes an image collector, such as a camera, which may be used to collect external environment scenes, attributes of the user, or user interaction gestures, or the detector 230 includes a sound collector, such as a microphone, which is used to receive external sounds.
In some embodiments, the external device interface 240 may include, but is not limited to, the following: high Definition Multimedia Interface (HDMI), analog or data high definition component input interface (component), composite video input interface (CVBS), USB input interface (USB), RGB port, and the like. The interface may be a composite input/output interface formed by the plurality of interfaces.
In some embodiments, the controller 250 and the modem 210 may be located in different separate devices, that is, the modem 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.
In some embodiments, the controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in memory. The controller 250 controls the overall operation of the display apparatus 200. For example: in response to receiving a user command for selecting a UI object to be displayed on the display 260, the controller 250 may perform an operation related to the object selected by the user command.
In some embodiments, the object may be any one of selectable objects, such as a hyperlink, an icon, or other actionable control. The operations related to the selected object are: displaying an operation connected to a hyperlink page, document, image, or the like, or performing an operation of a program corresponding to the icon.
In some embodiments, the controller includes at least one of a Central Processing Unit (CPU), a video processor, an audio processor, a Graphic Processing Unit (GPU), a RAM Random Access Memory (RAM), a ROM (Read-Only Memory), a first interface to an nth interface for input/output, a communication Bus (Bus), and the like.
And the CPU is used for executing the operating system and the application program instructions stored in the memory and executing various application programs, data and contents according to various interaction instructions for receiving external input so as to finally display and play various audio and video contents. The CPU processor may include a plurality of processors. E.g., comprising a main processor and one or more sub-processors.
In some embodiments, a graphics processor for generating various graphics objects, such as: at least one of an icon, an operation menu, and a user input instruction display figure. The graphic processor comprises an arithmetic unit which carries out operation by receiving various interactive instructions input by a user and displays various objects according to display attributes; the system also comprises a renderer for rendering various objects obtained based on the arithmetic unit, wherein the rendered objects are used for being displayed on a display.
In some embodiments, the video processor is configured to receive an external video signal, and perform at least one of video processing such as decompression, decoding, scaling, noise reduction, frame rate conversion, resolution conversion, and image synthesis according to a standard codec protocol of the input signal, so as to obtain a signal displayed or played on the direct display device 200.
In some embodiments, the video processor includes at least one of a demultiplexing module, a video decoding module, an image compositing module, a frame rate conversion module, a display formatting module, and the like. The demultiplexing module is used for demultiplexing the input audio and video data stream. And the video decoding module is used for processing the video signal after demultiplexing, including decoding, scaling and the like. And the image synthesis module, such as an image synthesizer, is used for performing superposition mixing processing on the GUI signal input by the user or generated by the user and the video image after the zooming processing by the graphics generator so as to generate an image signal for display. And the frame rate conversion module is used for converting the frame rate of the input video. And the display formatting module is used for converting the received video output signal after the frame rate conversion, and changing the signal to be in accordance with the signal of the display format, such as outputting an RGB data signal.
In some embodiments, the audio processor is configured to receive an external audio signal, perform at least one of decompression and decoding, and denoising, digital-to-analog conversion, and amplification processing according to a standard codec protocol of the input signal, and obtain a sound signal that can be played in the speaker.
In some embodiments, the user may input a user command on 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). Alternatively, the user may input the user command by inputting a specific sound or gesture, and the user input interface receives the user input command by recognizing the sound or gesture through the sensor.
In some embodiments, a "user interface" is a media interface for interaction and information exchange between an application or operating system and a user that enables conversion between an internal form of information and a form that is acceptable to the user. A common presentation form of a User Interface is a Graphical User Interface (GUI), which refers to a User Interface related to computer operations and displayed in a graphical manner. It may be an interface element such as an icon, a window, a control, etc. displayed in the display screen of the electronic device, where the control may include at least one of an icon, a button, a menu, a tab, a text box, a dialog box, a status bar, a navigation bar, a Widget, etc. visual interface elements.
In some embodiments, user interface 280 is an interface that may be used to receive control inputs (e.g., physical buttons on the body of the display device, or the like).
In some embodiments, the system of the display device may include a Kernel (Kernel), a command parser (shell), a file system, and an application. The kernel, shell, and file system together make up the basic operating system structure that allows users to manage files, run programs, and use the system. After power-on, the kernel starts, activates kernel space, abstracts hardware, initializes hardware parameters, etc., runs and maintains virtual memory, scheduler, signals and inter-process communication (IPC). And after the kernel is started, loading the Shell and the user application program. The application program is compiled into machine code after being started, and a process is formed.
FIG. 4 illustrates a software configuration diagram in a display device according to some embodiments. As shown in fig. 4, the system of the display device is divided into three layers, i.e., an application layer, a middleware layer and a hardware layer from top to bottom.
The Application layer mainly includes common applications on the television and an Application Framework (Application Framework), wherein the common applications are mainly applications developed based on the Browser, such as: HTML5 APPs; and Native APPs (Native APPs);
an Application Framework (Application Framework) is a complete program model, and has all basic functions required by standard Application software, such as: file access, data exchange, and interfaces to use these functions (toolbar, status bar, menu, dialog).
Native APPs (Native APPs) may support online or offline, message push, or local resource access.
The middleware layer comprises various television protocols, multimedia protocols, system components and other middleware. The middleware can use basic service (function) provided by system software to connect each part of an application system or different applications on a network, and can achieve the purposes of resource sharing and function sharing.
The hardware layer mainly comprises an HAL interface, hardware and a driver, wherein the HAL interface is a unified interface for butting all the television chips, and specific logic is realized by each chip. The driving mainly comprises: audio drive, display driver, bluetooth drive, camera drive, WIFI drive, USB drive, HDMI drive, sensor drive (like fingerprint sensor, temperature sensor, pressure sensor etc.) and power drive etc..
In some embodiments, when implementing digital television functionality with a display device, the display device may be configured with an ATSC3.0 broadcast protocol, ATSC3.0 being a latest digital television standard. In the development process of the ATSC3.0 protocol and service adapted to the display device, the code stream files are often required to be verified, and the code stream files are generally generated by recording through a specific tool. Because the information in the code stream file is more, a single code stream file can only verify the specific function point of the ATSC3.0 service. Therefore, in actual development, many codestream files are often required to verify other different functional points of the ATSC3.0 service.
However, since the ATSC3.0 standard is still in the deployment stage, the number of currently available codestream files is very limited and the quality is not uniform. Therefore, when the code stream file is used for verifying the ATSC3.0 service, the code stream file is often analyzed in advance on the PC to screen out an available code stream, and various information in the code stream is also analyzed in advance to judge whether the analysis is correct at the television end, which is tedious and results in low verification efficiency.
Specifically, in order to obtain effective code stream information verification ATSC3.0 service, at present, a code stream processing method mainly uses wirereshark (network packet analysis software) to parse a code stream file into an IP (Internet Protocol ) packet, and then refers to an ATSC3.0 Protocol to obtain effective information in a code stream, which is very complicated in steps and low in efficiency. Moreover, the code stream cannot be edited, the existing code stream cannot be fully multiplexed, the developed ATSC3.0 service cannot be comprehensively and effectively verified, and the development quality of the ATSC3.0 service is low.
In order to edit and regenerate a code stream file including information required by a functional point which a user wants to verify, the embodiment of the invention provides a display device. The three modules are used for editing and regenerating the code stream file so as to obtain the code stream file which accords with an ATSC3.0 broadcast protocol, and further comprehensively and effectively verifying the developed ATSC3.0 service according to the newly generated code stream file, so that the development quality of the ATSC3.0 service is improved.
Fig. 5 illustrates a general flow diagram of an editing method, a generation method of a broadcast protocol codestream file according to some embodiments. Referring to fig. 5, when the ATSC3.0 code stream editing and generating function is implemented, each IP packet in the code stream file is first analyzed by the code stream analysis module, so as to obtain an LLS initial IP packet dictionary corresponding to an LLS type and a channel signaling initial IP packet dictionary corresponding to a channel signaling type. And respectively editing the LLS information and the channel signaling information by a code stream editing module, and respectively editing the code stream information required by the functional point which a user wants to verify into an LLS initial IP packet dictionary and a channel signaling initial IP packet dictionary to obtain an LLS to-be-replaced IP packet dictionary and a channel signaling to-be-replaced IP packet dictionary. And rewriting the edited LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary into a new code stream file by the code stream generation module to obtain a code stream file conforming to the ATSC3.0 broadcast protocol so as to verify other different functional points of the ATSC3.0 service.
Therefore, the display device provided by the embodiment of the invention can analyze the existing code stream file, modify the existing code stream information according to the function point which the user wants to verify while analyzing, efficiently generate a new code stream file after editing the code stream information in the code stream file, realize multiplexing of the code stream information, and the generated new code stream file can more fully verify the ATSC3.0 service and improve the development quality of the ATSC3.0 service.
When the function of editing and regenerating the code stream file is realized, the display device is configured to respectively execute the method for editing the broadcast protocol code stream file and the method for generating the broadcast protocol code stream file, so as to obtain the code stream file which can realize the comprehensive verification of different function points of the ATSC3.0 service and conforms to the ATSC3.0 broadcast protocol.
FIG. 6 illustrates a flow diagram of a method for editing a broadcast protocol codestream file according to some embodiments; fig. 7 illustrates an overall data flow diagram of a method of editing a broadcast protocol codestream file according to some embodiments. An embodiment of the present invention provides a display device, including: a display configured to present a user interface; a controller connected to the display, the controller being configured to perform the following steps when executing the editing method of the broadcast protocol codestream file as shown in fig. 6 and 7:
s11, obtaining an IP packet comprising an IP destination address and a port number in the code stream file.
In the code stream file (. Pcap suffix), the code stream information is encapsulated in an IP (Internet Protocol) packet, and the IP packet including the code stream information is sequentially written in the code stream file. Therefore, when the code stream information in the code stream file is analyzed, the IP packets of the code stream file can be sequentially read according to the writing sequence.
Since the IP destination address and the port number corresponding to the LLS (Low Level Signal) in the system of the display device are fixed and are 224.0.23.60 and 4937, before the IP packet is obtained from the code stream file, the code stream analysis module in the controller needs to globally monitor the IP destination address and the port number corresponding to the LLS, so as to determine the data type of the IP packet including the code stream information to be edited subsequently. And adopting different code stream information editing strategies based on different data types.
The IP destination address is used for representing the IP address of the destination equipment to which the data needs to be sent, and is similar to the IP address of the addressee; the port number is the serial number of an outlet for communication between the device and the outside.
S12, when the IP destination address and the port number are monitored, if the data type of the IP packet is the LLS type, generating an LLS initial IP packet dictionary based on the IP packet and a target LLS type corresponding to the IP packet, wherein the LLS type comprises different LLS types.
After the IP packet in the code stream file is obtained, a code stream analysis module in the controller needs to first determine whether the IP destination address and the port number of the IP packet are monitored, so as to determine whether the obtained IP packet is an LLS-type IP packet.
In some embodiments, in determining whether the IP destination address and port number of the IP packet are snooped, the controller is further configured to perform the steps of:
and step 1211, monitoring the IP destination address and the port number corresponding to the LLS type in real time.
Step 1212, if the real-time monitored IP destination address and port number are consistent with the matching of the acquired IP destination address and port number in the IP packet, determining that the IP destination address and port number in the IP packet are monitored.
Referring to fig. 7 (a), when the code stream file editing policy starts to be executed, the IP destination address and the port number corresponding to the LLS type in the system are monitored globally, so that whether the monitoring is performed can be determined according to the IP destination address and the port number monitored in advance and the matching degree of the IP destination address and the port number of the IP packet read currently.
If the IP destination address and the port number which are monitored in advance are matched with the IP destination address and the port number of the IP packet which is read currently, the IP destination address and the port number in the IP packet can be determined to be monitored; if the matches are not consistent, it may be determined that the IP destination address and port number in the IP packet are not snooped.
When the IP destination address and the port number of the IP packet read currently are monitored, judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type. Different data types have different zone bits, and if the zone bit of the currently read IP packet is detected to be an LLS (link loss detection) mark, the data type of the IP packet can be determined to be an LLS type; if the flag bit of the currently read IP packet is detected to be a channel signaling flag, the data type of the IP packet can be determined to be the channel signaling type.
In some embodiments, when the IP packets in the code stream file are sequentially read in sequence, the data type of each IP packet is determined according to the above method, and then the IP packets belonging to the same LLS type are stored in a unified manner. And because the LLS type includes different data types, the IP packets belonging to the same LLS type are uniformly stored again according to the same data type, that is, the target LLS type and all the corresponding IP packets are stored as an LLS initial IP packet dictionary in a key-value (key-value) manner, so that subsequent uniform editing can be performed on the code stream information of the target LLS type. In the LLS initial IP packet dictionary, the key value is the LLS type, and the value is all IP packets corresponding to the LLS type.
When the data type of the IP packet currently read from the code stream file is the LLS type, code stream information can be obtained from the IP, and the code stream information is displayed in a display, so that a user can modify the code stream information according to a function point to be verified. Therefore, to obtain the code stream information, the IP packet needs to be parsed.
Specifically, the controller, in executing the steps of generating an LLS initial IP packet dictionary based on the IP packet and the target LLS type corresponding to the IP packet, is further configured to execute the steps of:
step 1221, when the data type of the IP packet is the LLS type, parsing the IP packet to obtain a UDP packet including the payload file.
Step 1222, if the payload file belongs to the content in the service list, parsing the service list to obtain the IP destination address and port number of each channel and performing monitoring, and parsing the payload file to obtain the LLS information of the target LLS type corresponding to the LLS type.
And 1223, converting the LLS information of the target LLS type from a binary byte stream form to a character string form, and displaying the LLS information of the target LLS type in the character string form in a user interface.
Step 1224, create key-value pairs based on the target LLS type and corresponding IP packets, and generate an LLS initial IP packet dictionary.
Referring to fig. 7 (b), when the data type of the IP packet is an LLS type, since the LLS type includes code stream information of different LLS types, in order to obtain the code stream information in the IP packet of different LLS types, the IP packet of the LLS type needs to be analyzed first to obtain a UDP packet. A UDP (User Datagram Protocol) packet is a connectionless transport layer Protocol in an OSI (Open System Interconnection) reference model, and is mainly used in transmission that does not require packet sequence arrival, inspection and sequencing of the packet transmission sequence are completed by an application layer, and a transaction-oriented simple unreliable information transfer service is provided, and the UDP packet includes a payload file (payload), that is, a transmitted User data part, specifically, LLS information.
When the display device realizes the digital television function, the code stream information in the IP packet that needs to be acquired is used to output channel information in the form of a low-level signal, and the content of each channel is presented in the display device, so it is determined whether the information in the payload file parsed from the IP packet matches the channel information. The channel information required by the display device to implement the digital tv function is stored in a Service List (SLT), and therefore, it is necessary to determine whether the payload file belongs to the content in the Service List.
The service list stores a channel information list required by the display device to realize the digital television function, and if the payload file analyzed from the currently read IP is matched with certain channel information in the service list, the payload file in the IP packet can be indicated to belong to the content in the service list. At this time, the service list is analyzed, so that channel information, that is, the IP destination address and the port number of each channel can be obtained, and meanwhile, the IP destination address and the port number of each channel are monitored.
In order to determine the code stream information of the required target LLS type, the subsequent editing is facilitated, and then the payload file is analyzed, so that the LLS information of the target LLS type corresponding to the LLS type is obtained. The LLS type includes LLS information of different LLS types including types conforming to ATSC3.0, such as SLT, AAT, etc. And acquiring the LLS information of the target LLS type according to the payload file analyzed in the currently read IP packet. The obtained LLS information of the target LLS type is the code stream information in the current IP packet, so that a user can edit the code stream information conveniently, and the code stream information can be displayed in a user interface displayed in a display.
The code stream information is usually in a binary byte stream form, and in order to facilitate output to a display for display, the binary byte stream is converted into a character string, that is, the LLS information of the target LLS type in the binary byte stream form is converted into a character string form, and the LLS information of the target LLS type in the character string form is displayed in a user interface.
In some embodiments, if the payload file parsed from the currently read IP packet does not belong to the content in the service list, the payload file is directly parsed to obtain the LLS information of the target LLS type corresponding to the LLS type, and the LLS information is displayed in the user interface. For the related implementation process, reference may be made to the foregoing description, and details are not repeated here.
And after determining the target LLS type of the currently read IP packet, creating a key value pair based on the target LLS type and the corresponding IP packet, and generating an LLS initial IP packet dictionary.
In some embodiments, when different IP packets are read from the code stream file in sequence, different payload files can be analyzed, then LLS information of different LLS types to which the LLS type belongs is obtained, finally the LLS information of the different LLS types to which the LLS type belongs is converted into a character string form from a binary word stream form, and the different types of LLS information in the character string form are displayed in a user interface for a user to edit different code stream information.
At this time, when the initial LLS IP packet dictionary is generated, the same LLS type and all the corresponding IP packets thereof are stored in a key value pair form based on the analyzed different LLS types, so that the subsequent uniform editing of the code stream information of the same LLS type is facilitated. In the LLS initial IP packet dictionary, the key value is the LLS type, and the value is all the IP packets corresponding to the LLS type.
And S13, if the data type of the IP packet is the channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and the target channel ID corresponding to the IP packet.
If the flag bit of the currently read IP packet is detected to be a channel signaling flag, which indicates that the control information (channel signaling information) for implementing channel information transmission of the specified channel is stored in the IP packet, the data type of the IP packet can be determined to be the channel signaling type. Therefore, when the data type of the IP packet is the channel signaling type, the corresponding destination channel ID is parsed from the IP packet, and the channel ID is used to identify the channel number corresponding to the channel information stored in the IP packet. And storing the IP packet and the corresponding target channel ID as a channel signaling initial IP packet dictionary in a key-value (key-value) mode, so that the subsequent code stream information aiming at the channel signaling type can be conveniently and uniformly edited. In the channel signaling initial IP packet dictionary, the key value is the channel ID, and the value is all IP packets corresponding to the channel signaling indicated by the channel ID.
In some embodiments, to facilitate generating the channel signaling initial IP packet dictionary based on the information stored in the IP packet, the controller is further configured to perform the following steps in generating the channel signaling initial IP packet dictionary based on the IP packet and the target channel ID corresponding to the IP packet:
step 131, when the data type of the IP packet is the channel signaling type, the IP packet is analyzed to obtain a UDP packet including the payload file.
Step 132, determine whether the payload file is a complete channel signaling object.
And step 133, if yes, parsing the payload file corresponding to the complete channel signaling object to obtain the target channel ID corresponding to the IP packet.
Step 134, creating a key value pair based on the target channel ID and the corresponding IP packet list, and generating a channel signaling initial IP packet dictionary, where the IP packet list includes IP packets of all channel signaling types corresponding to the target channel ID.
Referring to (c) in fig. 7, when the data type of the IP packet is a channel signaling type, the code stream information stored in the IP packet is control information for implementing channel information transmission of the specified channel, and therefore, the IP packet needs to be analyzed first to obtain a UDP (User data Protocol) packet, where the UDP packet includes a payload file (payload), that is, a User data part to be transmitted, and specifically, control information for implementing channel information transmission of the specified channel.
And judging whether the payload file is a complete channel signaling object or not based on the file size of the payload file. For example, if the file size of the complete channel signaling object is B and the file size of the payload file is a, if a = B, it indicates that the payload file in the IP packet is the complete channel signaling object.
The complete channel signaling object is used to implement the control information for transmitting all channel information of the specified channel, and therefore, in order to ensure that the channel information of the specified channel can be completely displayed on the display, the control information for transmitting all channel information of the channel needs to be stored in the payload file corresponding to the channel. If the payload file stored in a certain IP packet does not store the control information (a < B) for transmitting all channel information of the channel, the payload file is not a complete channel signaling object, and the payload files of a plurality of channel signaling types need to be combined together for transmission.
Therefore, when the payload file obtained by analyzing the currently read IP packet is a complete channel signaling object, the payload file corresponding to the complete channel signaling object is analyzed to obtain a target channel ID corresponding to the IP packet, that is, a target channel ID corresponding to the channel information stored in the payload file, and at this time, the channel information stored in the payload file, the control information for realizing channel information transmission, and the target channel ID are code stream information in the IP packet of the channel signaling type.
When the complete channel signaling object corresponds to a payload file, storing a target channel ID corresponding to the channel signaling object and an IP packet to which the corresponding payload file belongs as a channel signaling initial IP packet dictionary in a key value pair mode. If the complete channel signaling object corresponds to a plurality of payload files, namely a file formed by combining the payload files in the IP packets of a plurality of channel signaling types meets the requirement of the complete channel signaling object, generating an IP packet list of the IP packets of the plurality of channel signaling types, creating a key value pair of the target channel ID and the corresponding IP packet list, and generating a channel signaling initial IP packet dictionary, wherein the IP packet list comprises the IP packets of all the channel signaling types corresponding to the channel ID.
In some embodiments, if the payload file obtained by parsing the currently read IP packet is not a complete channel signaling object, the complete channel signaling object needs to be obtained in a recombined form, and at this time, the controller is further configured to perform the following steps:
step 1351, if the payload file is not a complete channel signaling object, storing the currently read IP packet.
Step 1352, acquiring an IP packet of which the next data type in the code stream file is a channel signaling type, and analyzing the IP packet to obtain a UDP packet comprising a payload file.
And step 1353, recombining the payload file in the IP packet with the payload file in the stored IP packet to obtain a recombined payload file.
Step 1354, if the recombined payload file is a complete channel signaling object, the recombined payload file corresponding to the complete channel signaling object is analyzed to obtain the target channel ID corresponding to the IP packet.
If the payload file a1 in the currently read IP packet is not a complete channel signaling object, that is, a1 is less than B, then a plurality of payload files need to be recombined, at this time, the currently read IP packet is stored, the IP packet of the next channel signaling type in the code stream file is obtained, and the newly read IP packet is analyzed again to obtain the payload file a2.
And recombining the payload file a1 and the payload file a2, calculating the size a = a1+ a2 of the recombined payload file, matching the recombined payload file with the complete channel signaling object again, and if a is less than B, indicating that the sum of the payload files corresponding to the current two IP packets does not accord with the requirement of the complete channel signaling object yet, and reading the IP packet of the third channel signaling type again.
And analyzes the newly read IP packet again to obtain the payload file a3. And recombining the payload files a1, a2 and a3, calculating the size a = a1+ a2+ a3 of the recombined payload files, matching the recombined payload files with the complete channel signaling object again, and if a is less than B, indicating that the sum of the payload files corresponding to the current three IP packets still does not meet the requirement of the complete channel signaling object and reading the IP packet of the fourth channel signaling type. And so on until the file size of the recombined payload file meets the requirement of the complete channel signaling object (a = B).
And if the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain a target channel ID corresponding to the IP packet. At this time, an IP packet list is established according to the IP packets required by the recombination, and a key value pair is established by the target channel ID and the corresponding IP packet list to generate a channel signaling initial IP packet dictionary. For a specific implementation process, reference may be made to the contents of the foregoing embodiments, which are not described herein again.
In some embodiments, in order to facilitate a user to edit the code stream information of the channel signaling type, the code stream information of the channel signaling type needs to be output to a display for displaying. Specifically, the controller is further configured to perform the following:
step 1361, obtaining channel signaling information corresponding to the target channel ID.
Step 1362, converting the channel signaling information from the binary byte stream form to a character string form, and displaying the channel signaling information in the character string form in the user interface.
The editable information in the code stream information of the channel signaling type is channel signaling information, that is, control information for realizing channel information transmission. After the payload file (or the recombined payload file) corresponding to the complete channel signaling object is analyzed, the channel signaling information corresponding to the target channel ID can be obtained.
The code stream information is usually in a binary byte stream form, and in order to be output to a display for display, the binary byte stream is converted into a character string, that is, the channel signaling information is converted into a character string form from the binary byte stream form, and the channel signaling information in the character string form is displayed in a user interface, so that a user can edit the channel signaling information conveniently.
After all the IP packets in the code stream file are read and analyzed, the code stream analysis module in the controller can end the analysis process (steps S11 to S13 and related steps). Each IP packet in the code stream file is provided with a serial number mark, when the tail serial number mark is read, all the IP packets in the code stream file can be read and analyzed, and the analysis process is immediately finished.
Therefore, each IP packet read from the code stream file is analyzed based on the method, namely different initial IP packet dictionaries (an LLS initial IP packet dictionary and a channel signaling initial IP packet dictionary) are generated according to different data types (an LLS type and a channel signaling type) so as to store all code stream information corresponding to different data types, so that a user can conveniently replace the code stream information stored in the initial IP packet dictionary in a unified manner after editing the corresponding code stream information according to a functional point to be verified, and a new code stream file conforming to the ATSC3.0 broadcast protocol is generated.
And S14, editing the LLS information corresponding to the target LLS type, and generating an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and the LLS initial IP packet dictionary.
When the data type of the IP packet is the LLS type, analyzing a payload file in the currently read IP packet to obtain the LLS information of the corresponding target LLS type, displaying the LLS information of different LLS types in a user interface, and editing by a user based on the LLS information of various types displayed in the user interface to obtain a dictionary after LLS modification. And then replacing the code stream information in the LLS modified dictionary with the code stream information in the LLS initial IP packet dictionary to obtain an LLS to-be-replaced IP packet dictionary, so as to be convenient for subsequently generating a new code stream file. The editing process is executed by a code stream editing module in the controller.
Fig. 8 illustrates a total dataflow diagram that edits codestream information of different data types, according to some embodiments. Referring to fig. 8 (a), in some embodiments, when the controller performs editing of LLS information corresponding to a target LLS type, and generates an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and LLS initial IP packet dictionary, the controller is further configured to perform the following steps:
and step 141, editing the LLS information of the target LLS type displayed in the user interface.
And 142, converting the edited LLS information corresponding to the target LLS type from a character string form to a binary byte stream form, creating a key value pair based on the edited LLS information in the target LLS type and the corresponding binary byte stream form, and generating an LLS modified dictionary.
And 143, acquiring the LLS initial IP packet dictionary, and replacing the payload file of the UDP packet in the LLS initial IP packet dictionary with the value of the binary byte stream in the LLS modified dictionary when the key value of the LLS initial IP packet dictionary is the same as the key value of the LLS modified dictionary to obtain the LLS to-be-replaced IP packet dictionary.
The user interface displays the LLS information of different LLS types corresponding to the LLS types, and the user can edit the LLS information based on the LLS information of different LLS types to obtain the edited LLS information. For example, after the user edits the LLS information based on one of the target LLS types, the edited LLS information is obtained. Since the display shows information in the form of strings, in order to store the modified LLS information into an IP packet, the strings need to be converted into a binary byte stream.
After the edited LLS information corresponding to the target LLS type in the character string form is converted into a binary byte stream form, key value pairs are created for the target LLS type and the edited LLS information in the corresponding binary byte stream form, and an LLS modified dictionary is generated. In the LLS modified dictionary, key is the LLS type, and value is LLS information edited in the form of binary byte streams corresponding to the LLS type.
And then reading the LLS initial IP packet dictionary generated by the code stream analysis module, wherein the LLS initial IP packet dictionary and the LLS modified dictionary both adopt key value pair form to store information, so that the two dictionaries are matched through key values. And if the key values of the two dictionaries are the same, namely the keys are all of the LLS types, the two dictionaries are matched and consistent.
And under the condition that the key values of the two dictionaries are the same, replacing the payload file of the UDP packet in the LLS initial IP packet dictionary with the value of the binary byte stream in the LLS modified dictionary to obtain the LLS to-be-replaced IP packet dictionary. The value of the binary byte stream in the dictionary after the LLS is modified is the modified LLS information, and the modified LLS information is the binary byte stream.
Fig. 9 illustrates a schematic diagram of generating an LLS to replace IP packet dictionary in accordance with some embodiments. Referring to fig. 9, the LLS-modified dictionary includes LLS type (key) and binary byte stream (value), the LLS-initial IP packet dictionary includes LLS type (key) and corresponding IP packet (value), and the content of the IP packet is UDP packet containing payload file (payload).
And replacing payload in the LLS initial IP packet dictionary by the binary byte stream to generate the LLS to-be-replaced IP packet dictionary. At this time, the LLS-to-be-replaced IP packet dictionary includes the LLS type (key) and the corresponding IP packet (value), and the content of the IP packet is a UDP packet containing the replaced payload.
S15, editing channel signaling information corresponding to the target channel ID, generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, wherein the LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for generating a new code stream file.
When the data type of the IP packet is the channel signaling type, analyzing a payload file in the currently read IP packet to obtain the channel signaling information of the corresponding target channel ID, displaying the channel signaling information of different channel IDs in a user interface, and editing by a user based on the channel signaling information of each channel displayed in the user interface to obtain a dictionary after the channel signaling is modified. And then, the code stream information in the dictionary after the channel signaling is modified replaces the code stream information in the channel signaling initial IP packet dictionary to obtain the IP packet dictionary to be replaced by the channel signaling, so that a new code stream file can be conveniently generated subsequently. The editing process is executed by a code stream editing module in the controller.
Referring to fig. 8 (b), in some embodiments, when the controller edits the channel signaling information corresponding to the target channel ID, and generates the channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, the controller is further configured to perform the following steps:
and 151, editing the channel signaling information corresponding to the target channel ID displayed in the user interface.
Step 152, the edited channel signaling information corresponding to the target channel ID is converted from a string form to a binary byte stream form, and based on the target channel ID and the edited channel signaling information in the binary byte stream form, a key-value pair is created to generate a dictionary after channel signaling modification.
And 153, acquiring a channel signaling initial IP packet dictionary, and replacing the binary byte stream value in the channel signaling modified dictionary with the payload file of the UDP packet in the channel signaling initial IP packet dictionary when the key value of the channel signaling initial IP packet dictionary is the same as the key value of the channel signaling modified dictionary to obtain the channel signaling to-be-replaced IP packet dictionary.
And displaying the channel signaling information of different channels corresponding to the channel signaling type in the user interface, and editing the channel signaling information based on the channel signaling information of different channels by a user to obtain the edited channel signaling information. For example, after the user edits based on the channel signaling information of one of the target channel IDs, the edited channel signaling information is obtained. Since the display displays the information in the form of strings, in order to store the modified channel signaling information into the IP packet, the strings need to be converted into binary byte streams.
After the edited channel signaling information corresponding to the target channel ID in the character string form is converted into the binary byte stream form, the target channel ID and the edited channel signaling information in the binary byte stream form are used for creating key value pairs and generating a dictionary after channel signaling modification. In the dictionary after the channel signaling modification, key is a channel ID, and value is edited channel signaling information in a binary byte stream form corresponding to the channel ID.
And then reading the channel signaling initial IP packet dictionary generated by the code stream analysis module, wherein the channel signaling initial IP packet dictionary and the dictionary after channel signaling modification both adopt key value pair form to store information, so that the two dictionaries are matched through key values. And if the key values of the two dictionaries are the same, namely the channel IDs corresponding to the keys are consistent, the two dictionaries are matched and consistent.
And under the condition that the key values of the two dictionaries are the same, replacing the payload file of the UDP packet in the channel signaling initial IP packet dictionary with the value of the binary byte stream in the dictionary after the channel signaling is modified to obtain the IP packet dictionary to be replaced by the channel signaling. The value of the binary byte stream in the dictionary after the channel signaling modification is the modified channel signaling information, and the modified channel signaling information is the binary byte stream.
Fig. 10 illustrates a schematic diagram of generating a channel signaling to-be-replaced IP packet dictionary, in accordance with some embodiments. Referring to fig. 10, the channel signaling modified dictionary includes a channel ID (key) and a binary byte stream (value), the channel signaling initial IP packet dictionary includes a channel ID (key) and a corresponding IP packet (value), and the content of the IP packet is a UDP packet containing a payload file (payload).
And replacing payload in the channel signaling initial IP packet dictionary by the binary byte stream to generate the channel signaling to-be-replaced IP packet dictionary. At this time, the channel signaling to-be-replaced IP packet dictionary includes a channel ID (key) and a corresponding IP packet (value), and the content of the IP packet is a UDP packet containing the replaced payload.
After code stream information in each IP packet in the code stream file is edited by a code stream editing module in the controller according to different data types, an IP packet dictionary to be replaced (an LLS IP packet dictionary to be replaced and a channel signaling IP packet dictionary to be replaced) corresponding to the corresponding data types can be obtained. The IP packet dictionary to be replaced comprises code stream information required by the functional point which the user wants to verify, so that the IP packet dictionary to be replaced is written into a new code stream file, and the code stream file conforming to the ATSC3.0 broadcast protocol can be generated, so that the verification of other different functional points of the ATSC3.0 service is realized, and the development quality of the ATSC3.0 service is improved.
In some embodiments, after obtaining the to-be-replaced IP packet dictionary (LLS-to-be-replaced IP packet dictionary and channel signaling-to-be-replaced IP packet dictionary) through editing by the code stream editing module, a new code stream file may be generated, in which process the controller is further configured to perform the following steps:
and 161, acquiring the IP packet in the code stream file.
And step 162, if the data type of the IP packet is the LLS type, looking up the to-be-replaced IP packets corresponding to different LLS types in the LLS-to-be-replaced IP packet dictionary.
Step 163, if the data type of the IP packet is the channel signaling type, look up the to-be-replaced IP packet list corresponding to different channel IDs in the channel signaling to-be-replaced IP packet dictionary.
And 164, writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to the broadcast protocol.
After each IP in the code stream file in the system is analyzed and edited, a new code stream file can be produced according to the edited result. And when the IP packets are generated, sequentially reading the IP packets from the code stream file according to the sequence, and acquiring corresponding to-be-replaced IP packet dictionaries (the LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary) according to the data types of the IP packets.
And when the data type of the currently read IP packet is the LLS type, acquiring an LLS to-be-replaced IP packet dictionary generated by the code stream editing module before. The LLS to-be-replaced IP packet dictionary stores IP packets corresponding to different LLS types, so that the to-be-replaced IP packets corresponding to different LLS types can be searched in the LLS to-be-replaced IP packet dictionary. The IP packet to be replaced is edited LLS information obtained by the code stream editing module after editing.
And when the data type of the currently read IP packet is the channel signaling type, acquiring a channel signaling to-be-replaced IP packet dictionary generated by the code stream editing module before. The channel signaling to-be-replaced IP packet dictionary stores IP packets corresponding to different channel IDs, so that the to-be-replaced IP packets or the to-be-replaced IP packet list corresponding to different channel IDs can be searched in the channel signaling to-be-replaced IP packet dictionary. The to-be-replaced IP packet is edited channel signaling information obtained by the code stream editing module after editing.
And finally, writing the IP packet to be replaced corresponding to the LLS type and the IP packet to be replaced or the IP packet list to be replaced corresponding to the channel signaling type into a new code stream file, wherein the new code stream file is an empty code stream file, and then generating a new code stream file. The new code stream file is a code stream file conforming to an ATSC3.0 broadcast protocol, can realize the verification of other different functional points of the ATSC3.0 service, and improves the development quality of the ATSC3.0 service.
Therefore, when the method for editing the broadcast protocol code stream file is executed, the display device provided by the embodiment of the invention can analyze the existing code stream file, modify the existing code stream information according to the function point which the user wants to verify while analyzing, and efficiently generate a new code stream file after editing the code stream information in the code stream file, thereby realizing multiplexing of the code stream information, and the generated new code stream file can more fully verify the ATSC3.0 service and improve the development quality of the ATSC3.0 service.
FIG. 11 illustrates a flow diagram of a method of generation of a broadcast protocol codestream file according to some embodiments; fig. 12 illustrates an overall data flow diagram of a method of generating a broadcast protocol codestream file according to some embodiments. An embodiment of the present invention provides a display device, including: a display configured to present a user interface; a controller connected to the display, wherein when executing the method for generating a broadcast protocol code stream file as shown in fig. 11 and 12, the code stream generating module in the controller is configured to execute the following steps:
s21, acquiring an LLS to-be-replaced IP packet dictionary, a channel signaling to-be-replaced IP packet dictionary and an IP packet comprising an IP destination address and a port number in a code stream file.
And when a new code stream file is generated based on the edited code stream information, sequentially acquiring all IP packets in the code stream file, and sequentially judging the data type of each IP packet, wherein the IP packets comprise IP destination addresses and port numbers. The edited code stream information includes an LLS to-be-replaced IP packet dictionary and a channel signaling to-be-replaced IP packet dictionary, which are obtained according to the editing method of the broadcast protocol code stream file provided in the foregoing embodiment, and the related generation process may refer to the contents of the foregoing embodiment, which is not described here again.
And S22, judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type.
And judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type. Different data types have different zone bits, and if the zone bit of the currently read IP packet is detected to be an LLS (link layer discovery) mark, the data type of the IP packet can be determined to be an LLS type; if the flag bit of the currently read IP packet is detected to be a channel signaling flag, the data type of the IP packet can be determined to be the channel signaling type.
And S23, if the data type of the IP packet is the LLS type, searching the to-be-replaced IP packet corresponding to different LLS types in the LLS to-be-replaced IP packet dictionary.
When the data type of the IP packet is the LLS type, the to-be-replaced IP packet corresponding to different LLS types is searched in the LLS-to-be-replaced IP packet dictionary generated by the code stream editing module, the specific LLS types can be obtained by analyzing the payload files in the currently read IP packet, the to-be-replaced IP packet is an IP packet including code stream information obtained by editing the original code stream information, that is, an IP packet including a replaced payload (payload file), and the replaced payload file is the edited LLS information.
Specifically, when searching for an IP packet to be replaced, the controller searches for an IP packet to be replaced corresponding to a different LLS type in the LLS IP packet to be replaced dictionary if the data type of the IP packet is the LLS type, and is further configured to:
and 231, when the data type of the IP packet is the LLS type, analyzing the payload file of the UDP packet in the IP packet to obtain the appointed LLS type corresponding to the IP packet.
And step 232, searching the to-be-replaced IP packet corresponding to the specified LLS type in the LLS to-be-replaced IP packet dictionary based on the specified LLS type.
If the flag bit of the currently read IP packet is detected to be an LLS flag, the data type of the IP packet is indicated to be an LLS type, and at this time, in order to determine the LLS type of the code stream information belonging to the IP packet, the IP packet is analyzed to obtain a UDP (User Datagram Protocol) packet. The UDP packet includes a payload file (payload), i.e., a user data part of the transmission, specifically, LLS information.
In order to clarify the specified LLS type of the IP packet, the payload file is analyzed, and the specified LLS type corresponding to the code stream information (LLS information) contained in the IP packet can be obtained.
And the LLS to-be-replaced IP packet dictionary stores information in a key value pair mode, namely the key value is an LLS type, the value is all IP packets corresponding to the LLS type, and the IP packets are edited IP packets. Therefore, after the specified LLS type is determined, the specified LLS type is used as a key, and the to-be-replaced IP packet corresponding to the specified LLS type can be searched in the LLS to-be-replaced IP packet dictionary.
And S24, if the data type of the IP packet is the channel signaling type, searching an IP packet list to be replaced corresponding to different channel IDs in the IP packet dictionary to be replaced by the channel signaling.
If the flag bit of the currently read IP packet is detected to be a channel signaling flag, which indicates that the control information (channel signaling information) for implementing channel information transmission of the specified channel is stored in the IP packet, the data type of the IP packet can be determined to be the channel signaling type.
When the data type of the IP packet is the channel signaling type, looking up an IP packet to be replaced or an IP packet list to be replaced corresponding to different channel IDs in a channel signaling IP packet to be replaced dictionary generated by the code stream editing module, where a specific channel ID may be obtained by parsing a payload file in a currently read IP packet, the IP packet to be replaced is an IP packet including code stream information obtained by editing original code stream information, that is, an IP packet including a payload file after replacement, and the payload file after replacement is edited channel signaling information.
Specifically, when searching the to-be-replaced IP packet list, the controller searches a to-be-replaced IP packet list corresponding to different channel IDs in a channel signaling to-be-replaced IP packet dictionary if the data type of the IP packet is a channel signaling type, and is further configured to perform the following steps:
and 241, when the data type of the IP packet is the channel signaling type, analyzing the IP packet to obtain a UDP packet comprising the payload file.
Step 242, determine whether the payload file is a complete channel signaling object.
And step 243, if yes, analyzing the payload file corresponding to the complete channel signaling object to obtain the assigned channel ID corresponding to the IP packet.
And step 244, based on the specified channel ID, looking up the list of the IP packets to be replaced corresponding to the specified channel ID in the channel signaling IP packet dictionary to be replaced.
When the data type of the IP packet is a channel signaling type, analyzing the IP packet to determine a channel ID corresponding to the code stream information in the IP packet, so as to obtain a UDP (User Datagram Protocol) packet. The UDP packet includes a payload file (payload), i.e., a user data part of the transmission, specifically, channel signaling information (control information for implementing transmission of channel information of a specific channel).
And judging whether the payload file is a complete channel signaling object or not based on the file size of the payload file. If the file size of the payload file is equal to the file size of the complete channel signaling object, it indicates that the payload file in the IP packet is the complete channel signaling object. The specific determination process may refer to the content of the foregoing embodiment when the editing method is executed, and details are not described here.
When the payload file obtained by analyzing the currently read IP packet is a complete channel signaling object, the payload file corresponding to the complete channel signaling object is analyzed to obtain the assigned channel ID corresponding to the IP packet, namely the assigned channel ID corresponding to the channel information stored in the payload file.
And the channel signaling to-be-replaced IP packet dictionary stores information in a key value pair mode, namely, the key value is a channel ID, the value is all IP packets corresponding to the channel ID, and the IP packets are edited IP packets. Therefore, after the specified channel ID is determined, the specified channel ID is used as a key, and the to-be-replaced IP packet corresponding to the specified channel ID can be searched in the channel signaling to-be-replaced IP packet dictionary.
In some embodiments, if the file size of the payload file is not equal to the file size of the complete channel signaling object, then the payload file in the IP packet is not a complete channel signaling object. At this time, the complete channel signaling object corresponds to a plurality of payload files, that is, a file formed by combining payload files in IP packets of a plurality of channel signaling types can meet the requirement of the complete channel signaling object, and the accurate specified channel ID can be obtained only by analyzing based on the recombined payload files.
Specifically, if the payload file obtained by parsing the currently read IP packet is not a complete channel signaling object, the complete channel signaling object needs to be obtained in a form of reassembly, and at this time, the controller is further configured to:
step 2451, if the payload file is not a complete channel signaling object, storing the currently read IP packet.
Step 2452, acquiring an IP packet with the next data type in the code stream file being the channel signaling type, and analyzing the IP packet to obtain a UDP packet including the payload file.
And 2453, recombining the payload file in the IP packet with the stored payload file in the IP packet to obtain a recombined payload file.
Step 2454, if the recombined payload file is a complete channel signaling object, then the recombined payload file corresponding to the complete channel signaling object is parsed to obtain the assigned channel ID corresponding to the IP packet.
If the payload file in the currently read IP packet is not a complete channel signaling object, the plurality of payload files need to be recombined, at this time, the currently read IP packet is stored, the IP packet of the next channel signaling type in the code stream file is obtained, and the newly read IP packet is analyzed again to obtain the payload file.
And recombining the plurality of payload files to obtain recombined payload files, wherein the number of the payload files in the recombined payload files is the number corresponding to the recombined files with the same size as the file of the complete channel signaling object. And when the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain the assigned channel ID corresponding to the IP packet. For the specific recombination process, reference may be made to the content of the foregoing embodiment when the editing method is executed, and details are not described here.
Because the current assigned channel ID is obtained after payload files of a plurality of IP packets are recombined, when the IP packet to be replaced is searched in the IP packet dictionary to be replaced based on the assigned channel ID, the searched content is in the form of the list of the IP packets to be replaced. At this time, the channel signaling to-be-replaced IP packet dictionary stores information in a key value pair form, that is, the key value is the channel ID, the value is all IP packet lists corresponding to the channel ID, and the IP packet list is an edited IP packet list. Therefore, after the specified channel ID is determined, the specified channel ID is used as a key, and the list of the IP packets to be replaced corresponding to the specified channel ID can be searched in the dictionary of the IP packets to be replaced of the channel signaling.
And S25, writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file, and generating a new code stream file conforming to the broadcast protocol.
The information in the IP packet to be replaced corresponding to the LLS type and the information in the IP packet list to be replaced corresponding to the channel signaling type are the edited code stream information corresponding to the LLS type and the code stream information corresponding to the channel signaling type, that is, the code stream information required by the functional point that the user wants to verify.
And writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file which accords with the ATSC3.0 broadcast protocol, so as to verify other different functional points of the ATSC3.0 service and improve the development quality of the ATSC3.0 service.
In some embodiments, if the data type of the IP packet currently read in the code stream file is neither an LLS type nor a channel signaling type, at this time, the IP packet does not need to be processed, and the IP packet is directly written into a new code stream file. In particular, in this process, the controller is further configured to: and if the data type of the obtained IP packet is other data types, writing the IP packet into a new code stream file to generate a new code stream file conforming to the broadcasting protocol, wherein the other data types are data types except the LLS type and the channel signaling type.
It can be seen that, when the method for generating a broadcast protocol code stream file is executed, the display device provided in the embodiment of the present invention can efficiently generate a new code stream file based on code stream information obtained by parsing and editing an existing code stream file, thereby implementing multiplexing of the code stream information, and the generated new code stream file can more fully verify the ATSC3.0 service, that is, can verify other different function points of the ATSC3.0 service, and improve the development quality of the ATSC3.0 service.
Fig. 6 illustrates a flow diagram of a method of editing a broadcast protocol codestream file according to some embodiments. Referring to fig. 6, a method for editing a broadcast protocol code stream file according to an embodiment of the present invention is executed by a controller in a display device according to the foregoing embodiment, where the method includes:
s11, acquiring an IP packet comprising an IP destination address and a port number in the code stream file;
s12, when the IP destination address and the port number are monitored, if the data type of the IP packet is an LLS type, generating an LLS initial IP packet dictionary based on the IP packet and a target LLS type corresponding to the IP packet, wherein the LLS type comprises different LLS types;
s13, if the data type of the IP packet is a channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet;
s14, editing the LLS information corresponding to the target LLS type, and generating an LLS to-be-replaced IP packet dictionary based on the obtained LLS modified dictionary and the LLS initial IP packet dictionary;
s15, editing channel signaling information corresponding to the target channel ID, and generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, wherein the LLS to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for generating a new code stream file.
FIG. 11 illustrates a flow diagram of a method of generating a broadcast protocol codestream file according to some embodiments. Referring to fig. 11, a method for generating a broadcast protocol code stream file according to an embodiment of the present invention is executed by a controller in a display device according to the foregoing embodiment, where the method includes:
s21, acquiring an LLS to-be-replaced IP packet dictionary, a channel signaling to-be-replaced IP packet dictionary and an IP packet comprising an IP destination address and a port number in a code stream file;
s22, judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises an LLS type and a channel signaling type;
s23, if the data type of the IP packet is the LLS type, searching for the IP packets to be replaced corresponding to different LLS types in the LLS IP packet dictionary to be replaced;
s24, if the data type of the IP packet is the channel signaling type, searching a to-be-replaced IP packet list corresponding to different channel IDs in a to-be-replaced IP packet dictionary of the channel signaling;
and S25, writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to a broadcast protocol.
It can be known from the above technical solutions that, according to the method for editing and generating a broadcast protocol code stream file and the display device provided by the embodiments of the present invention, during editing, IP packets in the code stream file are sequentially obtained, and if the IP packets are of an LLS type, an LLS initial IP packet dictionary is generated based on the IP packets and corresponding target LLS types; if the IP packet is of the channel signaling type, generating a channel signaling initial IP packet dictionary based on the IP packet and a target channel ID corresponding to the IP packet; respectively editing the LLS information and the channel signaling information, and generating an LLS to-be-replaced IP packet dictionary based on the LLS modified dictionary and the LLS initial IP packet dictionary; and generating a channel signaling to-be-replaced IP packet dictionary based on the channel signaling modified dictionary and the channel signaling initial IP packet dictionary. When the new code stream file is generated, the IP packet to be replaced in the LLS IP packet dictionary to be replaced and the IP packet list to be replaced in the channel signaling IP packet dictionary to be replaced are written into the new code stream file, and the new code stream file conforming to the broadcasting protocol is generated. Therefore, the method and the display device provided by the embodiment of the invention can be used for editing and regenerating the code stream file to obtain the code stream file conforming to the ATSC3.0 broadcast protocol, comprehensively and effectively verifying the developed ATSC3.0 service and improving the development quality of the ATSC3.0 service.
In a specific implementation, the present invention further provides a computer storage medium, where the computer storage medium may store a program, and when the program is executed, the program may include some or all of the steps in each embodiment of the method for editing and generating a broadcast protocol code stream file provided by the present invention. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM) or a Random Access Memory (RAM).
Those skilled in the art will readily appreciate that the techniques of the embodiments of the present invention may be implemented as software plus a required general purpose hardware platform. Based on such understanding, the technical solutions in the embodiments of the present invention may be essentially or partially implemented in the form of a software product, which may be stored in a storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and includes several instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the method according to the embodiments or some parts of the embodiments.
The same and similar parts in the various embodiments in this specification may be referred to each other. Especially, for the embodiment of the method for editing and generating the broadcast protocol code stream file, the description is relatively simple because the method is basically similar to the embodiment of the display device, and relevant points can be referred to the description in the embodiment of the display device.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present application.
The foregoing description, for purposes of explanation, has been presented in conjunction with specific embodiments. However, the illustrative discussions above are not intended to be exhaustive or to limit the embodiments to the precise forms disclosed above. Many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles and the practical application, to thereby enable others skilled in the art to best utilize the embodiments and various embodiments with various modifications as are suited to the particular use contemplated.

Claims (14)

1. A display device, comprising:
a display configured to present a user interface;
a controller connected with the display, the controller configured to:
acquiring an IP packet comprising an IP destination address and a port number in a code stream file;
when the IP destination address and the port number are monitored, if the data type of the IP packet is a local link signaling type, generating a local link signaling initial IP packet dictionary based on the IP packet and a target local link signaling type corresponding to the IP packet, wherein the local link signaling type comprises different local link signaling types;
when the data type of the IP packet is a local link signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file; if the payload file belongs to the content in the service list, analyzing the service list to obtain the IP destination address and the port number of each channel and monitoring, and analyzing the payload file to obtain local link signaling information of a target local link signaling type corresponding to the local link signaling type; converting the local link signaling information of the target local link signaling type from a binary byte stream form to a character string form, and displaying the local link signaling information of the target local link signaling type in the character string form in a user interface; creating a key value pair based on the target local link signaling type and the corresponding IP packet, and generating a local link signaling initial IP packet dictionary;
editing local link signaling information corresponding to the target local link signaling type, and generating a local link signaling to-be-replaced IP packet dictionary based on the obtained local link signaling modified dictionary and the local link signaling initial IP packet dictionary;
and editing the channel signaling information corresponding to the target channel ID, and generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the local link signaling initial IP packet dictionary, wherein the local link signaling to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for editing the code stream information in each IP packet in the code stream file according to different data types, and then generating a to-be-replaced IP packet dictionary corresponding to the corresponding data type.
2. The display device of claim 1, wherein the controller is further configured to:
monitoring an IP destination address and a port number corresponding to the local link signaling type in real time;
and if the real-time monitored IP destination address and port number are matched with the obtained IP destination address and port number in the IP packet, determining that the IP destination address and port number in the IP packet are monitored.
3. The display device according to claim 1, wherein the controller, in performing the generating of the channel signaling initial IP packet dictionary based on the IP packet and the target channel ID corresponding to the IP packet, is further configured to:
when the data type of the IP packet is a channel signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file;
judging whether the payload file is a complete channel signaling object or not;
if yes, analyzing a payload file corresponding to the complete channel signaling object to obtain a target channel ID corresponding to the IP packet;
and creating a key value pair based on the target channel ID and a corresponding IP packet list, and generating a channel signaling initial IP packet dictionary, wherein the IP packet list comprises IP packets of all channel signaling types corresponding to the target channel ID.
4. The display device of claim 3, wherein the controller is further configured to:
if the payload file is not a complete channel signaling object, storing the currently read IP packet;
acquiring an IP packet of which the next data type in the code stream file is a channel signaling type, and analyzing the IP packet to obtain a UDP packet comprising a payload file;
recombining the payload file in the IP packet with the payload file in the stored IP packet to obtain a recombined payload file;
and if the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain a target channel ID corresponding to the IP packet.
5. The display device of claim 4, wherein the controller is further configured to:
acquiring channel signaling information corresponding to the target channel ID;
and converting the channel signaling information from a binary byte stream form into a character string form, and displaying the channel signaling information in the character string form in a user interface.
6. The display device according to claim 1, wherein the controller, after performing the editing of the local link signaling information corresponding to the target local link signaling type, generates a local link signaling to-be-replaced IP packet dictionary based on the obtained local link signaling modified dictionary and the local link signaling initial IP packet dictionary, and is further configured to:
editing local link signaling information corresponding to the target local link signaling type displayed in a user interface;
converting the edited local link signaling information corresponding to the target local link signaling type from a character string form to a binary byte stream form, creating a key value pair based on the edited local link signaling information in the target local link signaling type and the corresponding binary byte stream form, and generating a local link signaling modified dictionary;
and when the key value of the local link signaling initial IP packet dictionary is the same as the key value of the local link signaling modified dictionary, replacing the binary byte stream value in the local link signaling modified dictionary with the payload file of the UDP packet in the local link signaling initial IP packet dictionary to obtain the local link signaling to-be-replaced IP packet dictionary.
7. The display device according to claim 1, wherein the controller, in performing the editing of the channel signaling information corresponding to the target channel ID, generates a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, and is further configured to:
editing channel signaling information corresponding to the target channel ID displayed in a user interface;
converting the edited channel signaling information corresponding to the target channel ID from a character string form to a binary byte stream form, creating a key value pair based on the target channel ID and the edited channel signaling information corresponding to the binary byte stream form, and generating a channel signaling modified dictionary;
and when the key value of the channel signaling initial IP packet dictionary is the same as the key value of the channel signaling modified dictionary, replacing the payload file of the UDP packet in the channel signaling initial IP packet dictionary with the value of the binary byte stream in the channel signaling modified dictionary to obtain the channel signaling to-be-replaced IP packet dictionary.
8. The display device of claim 1, wherein the controller is further configured to:
acquiring an IP packet in a code stream file;
if the data type of the IP packet is a local link signaling type, searching for an IP packet to be replaced corresponding to different local link signaling types in the local link signaling IP packet dictionary to be replaced;
if the data type of the IP packet is a channel signaling type, searching an IP packet list to be replaced corresponding to different channel IDs in an IP packet dictionary to be replaced by the channel signaling;
and writing the IP packet to be replaced and the IP packet list to be replaced into a new code stream file to generate a new code stream file conforming to a broadcast protocol.
9. A display device, comprising:
a display configured to present a user interface;
a controller connected with the display, the controller configured to:
acquiring an IP packet dictionary to be replaced by local link signaling, an IP packet dictionary to be replaced by channel signaling, and an IP packet comprising an IP destination address and a port number in a code stream file;
judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises a local link signaling type and a channel signaling type;
when the data type of the IP packet is a local link signaling type, analyzing a payload file of a UDP packet in the IP packet to obtain a designated local link signaling type corresponding to the IP packet; based on the appointed local link signaling type, searching an IP packet to be replaced corresponding to the appointed local link signaling type in the local link signaling IP packet dictionary to be replaced;
if the data type of the IP packet is the channel signaling type, searching a to-be-replaced IP packet list corresponding to different channel IDs in a to-be-replaced IP packet dictionary of the channel signaling;
and writing the IP packets to be replaced and the IP packet list to be replaced into a new code stream file, editing code stream information in each IP packet in the code stream file according to different data types, and generating an IP packet dictionary to be replaced corresponding to the corresponding data type.
10. The apparatus as claimed in claim 9, wherein the controller, in performing the step of looking up a to-be-replaced IP packet list corresponding to different channel IDs in the channel signaling to-be-replaced IP packet dictionary if the data type of the IP packet is a channel signaling type, is further configured to:
when the data type of the IP packet is a channel signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file;
judging whether the payload file is a complete channel signaling object or not;
if yes, analyzing a payload file corresponding to the complete channel signaling object to obtain an assigned channel ID corresponding to the IP packet;
and searching the to-be-replaced IP packet list corresponding to the specified channel ID in the to-be-replaced IP packet dictionary of the channel signaling based on the specified channel ID.
11. The display device of claim 10, wherein the controller is further configured to:
if the payload file is not a complete channel signaling object, storing the currently read IP packet;
acquiring an IP packet of which the next data type in the code stream file is a channel signaling type, and analyzing the IP packet to obtain a UDP packet comprising a payload file;
recombining the payload file in the IP packet with the payload file in the stored IP packet to obtain a recombined payload file;
and if the recombined payload file is a complete channel signaling object, analyzing the recombined payload file corresponding to the complete channel signaling object to obtain the assigned channel ID corresponding to the IP packet.
12. The display device of claim 9, wherein the controller is further configured to:
and if the acquired data type of the IP packet is other data types, writing the IP packet into a new code stream file to generate a new code stream file conforming to a broadcast protocol, wherein the other data types are data types except a local link signaling type and a channel signaling type.
13. A method for editing a broadcast protocol code stream file is characterized by comprising the following steps:
acquiring an IP packet comprising an IP destination address and a port number in a code stream file;
when the IP destination address and the port number are monitored, if the data type of the IP packet is a local link signaling type, generating a local link signaling initial IP packet dictionary based on the IP packet and a target local link signaling type corresponding to the IP packet, wherein the local link signaling type comprises different local link signaling types;
when the data type of the IP packet is a local link signaling type, analyzing the IP packet to obtain a UDP packet comprising a payload file; if the payload file belongs to the content in the service list, analyzing the service list to obtain the IP destination address and the port number of each channel and monitoring, and analyzing the payload file to obtain local link signaling information of a target local link signaling type corresponding to the local link signaling type; converting the local link signaling information of the target local link signaling type from a binary byte stream form to a character string form, and displaying the local link signaling information of the target local link signaling type in the character string form in a user interface; creating a key value pair based on the target local link signaling type and the corresponding IP packet, and generating a local link signaling initial IP packet dictionary;
editing local link signaling information corresponding to the target local link signaling type, and generating a local link signaling to-be-replaced IP packet dictionary based on the obtained local link signaling modified dictionary and the local link signaling initial IP packet dictionary;
and editing the channel signaling information corresponding to the target channel ID, and generating a channel signaling to-be-replaced IP packet dictionary based on the obtained channel signaling modified dictionary and the channel signaling initial IP packet dictionary, wherein the local link signaling to-be-replaced IP packet dictionary and the channel signaling to-be-replaced IP packet dictionary are used for editing the code stream information in each IP packet in the code stream file according to different data types, and then generating the to-be-replaced IP packet dictionary corresponding to the corresponding data type.
14. A method for generating a broadcast protocol code stream file is characterized by comprising the following steps:
acquiring a local link signaling to-be-replaced IP packet dictionary, a channel signaling to-be-replaced IP packet dictionary and an IP packet comprising an IP destination address and a port number in a code stream file;
judging the data type of the IP packet according to the IP destination address and the port number, wherein the data type comprises a local link signaling type and a channel signaling type;
if the data type of the IP packet is a local link signaling type, searching for an IP packet to be replaced corresponding to different local link signaling types in the local link signaling IP packet dictionary to be replaced;
if the data type of the IP packet is a channel signaling type, searching an IP packet list to be replaced corresponding to different channel IDs in an IP packet dictionary to be replaced by the channel signaling;
and writing the IP packets to be replaced and the IP packet list to be replaced into a new code stream file, editing code stream information in each IP packet in the code stream file according to different data types, and generating an IP packet dictionary to be replaced corresponding to the corresponding data type.
CN202110054338.5A 2021-01-15 2021-01-15 Editing and generating method of broadcast protocol code stream file and display device Active CN112822532B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110054338.5A CN112822532B (en) 2021-01-15 2021-01-15 Editing and generating method of broadcast protocol code stream file and display device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110054338.5A CN112822532B (en) 2021-01-15 2021-01-15 Editing and generating method of broadcast protocol code stream file and display device

Publications (2)

Publication Number Publication Date
CN112822532A CN112822532A (en) 2021-05-18
CN112822532B true CN112822532B (en) 2023-04-14

Family

ID=75869421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110054338.5A Active CN112822532B (en) 2021-01-15 2021-01-15 Editing and generating method of broadcast protocol code stream file and display device

Country Status (1)

Country Link
CN (1) CN112822532B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170109296A (en) * 2016-03-21 2017-09-29 한국전자통신연구원 Apparatus and method for service validating in atsc 3.0 based broadcasting system
WO2017204546A1 (en) * 2016-05-25 2017-11-30 엘지전자(주) Broadcast signal transmission/reception device and method
CN111695093A (en) * 2020-05-29 2020-09-22 平安科技(深圳)有限公司 iOS application-based reinforcement method, electronic device and storage medium
WO2020197177A1 (en) * 2019-03-26 2020-10-01 삼성전자 주식회사 Apparatus for receiving broadcasting and method for operating same

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102116732B1 (en) * 2019-05-17 2020-05-29 주식회사 로와시스 ATSC 3.0 standard conformity assessment test equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170109296A (en) * 2016-03-21 2017-09-29 한국전자통신연구원 Apparatus and method for service validating in atsc 3.0 based broadcasting system
WO2017204546A1 (en) * 2016-05-25 2017-11-30 엘지전자(주) Broadcast signal transmission/reception device and method
WO2020197177A1 (en) * 2019-03-26 2020-10-01 삼성전자 주식회사 Apparatus for receiving broadcasting and method for operating same
CN111695093A (en) * 2020-05-29 2020-09-22 平安科技(深圳)有限公司 iOS application-based reinforcement method, electronic device and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ATSC3.0关键技术介绍;何大治等;《电视技术》;20150817(第16期);111-120、134 *

Also Published As

Publication number Publication date
CN112822532A (en) 2021-05-18

Similar Documents

Publication Publication Date Title
CN114302190B (en) Display equipment and image quality adjusting method
US20090037801A1 (en) Method and apparatus for automatic user manual generation
WO2023151618A1 (en) Video processing method and apparatus thereof
JP5414792B2 (en) Method and apparatus for providing rich media service
CN113727179A (en) Display device and method for display device to be compatible with external device
CN101442627A (en) Control method for peer-to-peer calculation set-top box player
CN112822532B (en) Editing and generating method of broadcast protocol code stream file and display device
CN113111214A (en) Display method and display equipment for playing records
CN113573149B (en) Channel searching method and display device
CN113138745B (en) Display device and audio data writing method
EP3519964B1 (en) Electronic apparatus for recording debugging information and control method thereof
CN112487322A (en) Third-party application Loading page Loading method and display equipment
CN113035194B (en) Voice control method, display device and server
CN113138744B (en) Display device and sound channel switching method
US20230111113A1 (en) Page loading method and display apparatus
CN112052376A (en) Resource recommendation method, device, server, equipment and medium
CN113207042B (en) Media asset playing method and display equipment
CN113490041B (en) Voice function switching method and display device
CN113542706B (en) Screen throwing method, device and equipment of running machine and storage medium
CN113490013B (en) Server and data request method
CN109495793B (en) Bullet screen writing method, device, equipment and medium
CN112527330A (en) Management method and display device
CN113282773A (en) Video searching method, display device and server
CN116455588A (en) Display equipment and prompt information display method
CN116170628A (en) Display equipment and file display method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant