Data processing method, device, storage medium and computer device
Patent Information
- Application Number
- JP2024541895
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-02-08
- Publication Date
- 2025-02-04
- Estimated Expiration
- 2042-02-08
AI Technical Summary
【0020】 本願の実施例は、サーバと端末との間にデータ伝送を行うデータストリームチャネルにおいて、サーバから送信されたデータストリームにおけるオーディオ·ビデオデータパッケージテーブルを監視し、オーディオ·ビデオデータパッケージテーブルを解析して、データストリームにおけるオーディオ·ビデオデータのタイムスタンプ情報を得、キャッシュを行い、データストリームから端末の再生待ち目標データストリームを取得し、且つ目標データストリームから目標オーディオ·ビデオデータを抽出し、キャッシングされたタイムスタンプ情報から目標オーディオ·ビデオデータに対応する目標タイムスタンプ情報を検索し、目標タイムスタンプ情報に基づいて、目標オーディオ·ビデオデータに対し再生を行う。このように、データストリームにおけるオーディオ·ビデオデータパッケージテーブルを事前にモニターし、解析を行なって、オーディオ·ビデオデータのタイムスタンプ情報を得、キャッシュをタイムリーに行い、目標オーディオ·ビデオデータを抽出して得た後、事前にキャッシングされたタイムスタンプ情報から目標オーディオ·ビデオデータに対応する目標タイムスタンプ情報を検索し、ひいては目標タイムスタンプ情報に基づいて、目標オーディオ·ビデオデータに対し再生をタイムリーに行うことによって、オーディオ·ビデオデータの再生起動の速度を上げ、ひいては番組の再生效率を向上させる。
Smart Images

Figure 2025503687000001_ABST
Abstract
Description
[Technical field]
[0001] The present application relates to the field of communications technology, and in particular to a data processing method, device, storage medium and computer equipment. [Background technology]
[0002] Integrated Services Digital Broadcasting (ISDB) S3 is a more common and widespread modulation format for satellite digital television.
[0003] However, in the playback flow of the ISDB S3 standard digital television broadcasting system, when a user switches programs, the playback start speed of audio and video data in the TLV (Type Length Value, abbreviated as TLV) program stream is relatively slow, which reduces the program playback efficiency. Summary of the Invention [Problem to be solved by the invention]
[0004] The embodiments of the present application provide a data processing method, device, storage medium and computer device, which can increase the speed of starting playback of audio / video data, and thus improve the playback efficiency of programs. [Means for solving the problem]
[0005] An embodiment of the present application provides a data processing method, the data processing method comprising: monitoring an audio-video data package table in a data stream transmitted from a server in a data stream channel for data transmission between the server and a terminal; analyzing the audio-video data package table to obtain and cache time stamp information of the audio-video data in the data stream; obtaining a target data stream waiting to be played at the terminal from the data stream, and extracting target audio-video data from the target data stream; retrieving target time stamp information corresponding to the target audio-video data from the cached time stamp information; and performing playback on the target audio-video data based on the target timestamp information.
[0006] Accordingly, an embodiment of the present application provides a data processing apparatus, the data processing apparatus comprising: A monitoring unit for monitoring an audio-video data package table in a data stream transmitted from a server in a data stream channel for data transmission between the server and a terminal; a parsing unit for parsing the audio-video data package table to obtain and cache time stamp information of the audio-video data in the data stream; an extraction unit for obtaining a target data stream waiting to be played at the terminal from the data stream, and extracting target audio-video data from the target data stream; a search unit for searching the cached time stamp information for target time stamp information corresponding to the target audio-video data; and a playback unit for performing playback of the target audio-video data based on the target timestamp information.
[0007] In one embodiment, the monitoring unit comprises: a first monitoring subunit for monitoring data in the target data stream based on a message type and a table identifier; and a judging subunit for judging, when monitoring for and obtaining target data whose message type is a target message type and whose table identifier is a target identifier, that the target data is an audio-video data package table.
[0008] In one embodiment, the analysis unit comprises: a parsing subunit for performing parsing on the audio-video data package table to obtain time stamp information of the audio-video data in the data stream; and a classifying and caching subunit for obtaining a serial number of a media processing unit for the audio-video data, and classifying and caching time stamp information corresponding to the audio-video data based on the serial number of the media processing unit.
[0009] In one embodiment, the search unit comprises: an acquiring subunit for acquiring a serial number of a target media processing unit for the target audio-video data; a search subunit for searching the cached time stamp information for target time stamp information corresponding to the serial number of the target media processing unit based on the serial number of the target media processing unit.
[0010] In one embodiment, the regeneration unit comprises: a calculation subunit for calculating a playback timestamp of the target audio-video data based on the target timestamp information; a transmitting subunit for transmitting the target audio-video data and corresponding playback timestamps to a decoder; and a playback subunit for performing playback of the target audio-video data by the decoder based on the playback timestamp.
[0011] In one embodiment, the playback timestamps include a decode timestamp and a display timestamp, and the playback subunit: performing decoding on the target audio-video data by the decoder based on the decoding timestamp; If the decoded target audio-video data satisfies an audio-video synchronization condition, playback is performed on the decoded target audio-video data based on the display timestamp.
[0012] In one embodiment, the extraction unit comprises: a target information acquiring subunit for acquiring a target Internet Protocol address and a corresponding target audio-video packet identifier; and a filtering subunit for filtering the target data stream based on the target Internet Protocol address and the corresponding target audio-video packet identifier to obtain target audio-video data.
[0013] In one embodiment, the data processing device comprises: a reacquiring unit for acquiring a first audio-video data package table corresponding to the target data stream; a re-analysis unit for analyzing the first audio-video data package table to obtain a first Internet Protocol address and a corresponding first audio-video packet identifier; a re-filtering unit for filtering the target data stream based on the first Internet Protocol address and the corresponding first audio-video packet identifier to obtain first audio-video data when at least one of the first Internet Protocol address and the target Internet Protocol address and the first audio-video packet identifier and the target audio-video packet identifier are different; a re-searching unit for searching for first time stamp information corresponding to the first audio-video data from the cached time stamp information; The apparatus further includes a replay unit for performing playback on the first audio-video data based on the first time stamp information.
[0014] In one embodiment, the recapture unit comprises: a first re-receiving subunit for receiving an address mapping table in the target data stream, the address mapping table including an Internet Protocol address of the audio-video data; a second re-receiving subunit for receiving an audio-video packet identifier list in the target data stream, the audio-video packet identifier list including audio-video packet identifiers of the audio-video data; a re-filtering subunit for filtering out a first audio-video data package table from the target data stream based on the address mapping table and the audio-video packet identifier list.
[0015] In one embodiment, the data processing device comprises: The apparatus further includes a third re-receiving unit, which re-acquires the first audio-video data package table from the target data stream when detecting a failure in acquiring the first audio-video data package table.
[0016] In one embodiment, the filtering unit comprises: a setting subunit for setting an audio filter and a video filter according to the target Internet Protocol address and the corresponding target audio-video packet identifier; an audio filtering subunit for filtering the target data stream with the audio filter to obtain at least one frame of target audio data; a video filtering subunit for filtering the target data stream with the video filter to obtain at least one frame of target video data; an integrated subunit for integrating the target audio data and the target video data into target audio-video data;
[0017] Further, an embodiment of the present application provides a storage medium having a plurality of instructions stored therein, the instructions being capable of being loaded by a processor to perform steps in any one of the data processing methods provided by the embodiment of the present application.
[0018] Further, an embodiment of the present application provides a computer device, the computer device including a processor and a memory, the memory storing a computer program, the processor being used to execute the computer program stored in the memory to implement a data processing method provided by an embodiment of the present application.
[0019] Further, embodiments of the present application provide a computer program product or a computer program, the computer program product or the computer program comprising computer instructions, the computer instructions being stored in a storage medium, a processor of a computing device reading the computer instructions from the storage medium and executing the computer instructions to cause the computing device to perform steps in a data processing method provided by embodiments of the present application. Effect of the Invention
[0020] In the embodiment of the present application, in a data stream channel for transmitting data between a server and a terminal, an audio-video data package table in a data stream transmitted from a server is monitored, the audio-video data package table is analyzed to obtain and cache time stamp information of the audio-video data in the data stream, a target data stream waiting to be played back in the terminal is obtained from the data stream, the target audio-video data is extracted from the target data stream, target time stamp information corresponding to the target audio-video data is searched from the cached time stamp information, and the target audio-video data is played back based on the target time stamp information. In this way, the audio-video data package table in the data stream is monitored in advance, analyzed to obtain time stamp information of the audio-video data, cached in a timely manner, and the target audio-video data is extracted and obtained, and then target time stamp information corresponding to the target audio-video data is searched from the time stamp information cached in advance, and the target audio-video data is played back based on the target time stamp information in a timely manner, thereby increasing the speed of starting to play back audio-video data and improving the efficiency of playing programs. [Brief description of the drawings]
[0021] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, specific embodiments of the present invention will be described in detail with reference to the accompanying drawings, so that the technical solutions and advantages of the present invention will become more apparent. [Figure 1] FIG. 2 is a schematic diagram illustrating an implementation scenario of a data processing method provided by an embodiment of the present application; [Diagram 2] FIG. 2 is a schematic diagram showing the flow of a data processing method provided by an embodiment of the present application; [Diagram 3] FIG. 2 is a schematic diagram showing a specific flow of a data processing method provided by an embodiment of the present application; [Figure 4] 1 is a schematic diagram showing the configuration of a data processing device provided by an embodiment of the present application; [Diagram 5] FIG. 2 is a schematic diagram illustrating the configuration of a computer device provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0022] Hereinafter, the technical solutions in the embodiments of the present application will be described clearly and explicitly with reference to the drawings in the embodiments of the present application, but it is clear that the described embodiments are only some of the embodiments of the present application, and are not all of the embodiments. All other embodiments that a person skilled in the art can obtain without inventive efforts based on the embodiments of the present application belong to the protection scope of the present application.
[0023] The embodiments of the present application provide a data processing method, an apparatus, a storage medium and a computer device, where the data processing apparatus can be integrated into a computer device, which can be a server or a device such as a terminal.
[0024] To better describe the embodiments of the present application, reference will be made to the following terms.
[0025] The triple encoding format (abbreviated as TLV, Type Length Value) is a variable encoding format that can include fields such as Type, Length, and Value. Here, the Type field can be information about the label and encoding format, the Length field can define the length of the value, and the Value field can indicate the actual value of the data included in the TLV.
[0026] Group of Pictures (GOP) is a group of images in the audio-video data sequence, and a GOP is a group of consecutive images. When encoding audio-video data, images (i.e., frames) are divided into three types: I, P, and B, where I is an intra-encoded frame, P is a forward-predicted frame, and B is a bidirectionally interpolated frame. The first image of a GOP is an I frame, which ensures that a GOP can be decoded independently without referring to other images.
[0027] A time stamp is data generated using digital signature technology, and includes information such as the initial file information, signature parameters, and signature time. A time stamp system is used to generate and manage time stamps, and a digital signature is applied to the signature object to generate a time stamp, proving that the initial file already existed before the signature time.
[0028] A frequency point is the absolute value of a frequency, and different frequencies are also called frequency points, and are usually the center frequency of a modulated signal. A frequency point is a number related to a specific frequency. At present, there are more and more television programs, and the number of channels received by ordinary televisions is also increasing. However, since televisions only have one line, the method of frequency division multiplexing can be used to allow one signal channel to carry multiple channels of data.
[0029] A program search is to obtain information on program channels that can be played back in the current Digital Video Broadcast (abbreviated as DVB) system.
[0030] In the playback flow of the ISDB S3 standard digital television broadcasting system, the presentation time stamp (abbreviated as PTS) of the audio-video data of each frame of a television program is usually obtained, and the audio-video data of each frame is played and displayed based on the presentation time stamp. When it is detected that there is no presentation time stamp corresponding to the audio-video data of a certain frame, the audio-video data of this frame is discarded. If the discarded audio-video data is a key frame, that is, if the discarded audio-video data is an I-frame, the audio-video data cannot be decoded, and it is necessary to wait for the arrival of a key frame that acquires the next group of pictures (abbreviated as GOP), and playback can only start when the audio-video synchronization conditions are met. Therefore, the program playback start speed is relatively slow, which reduces the program playback efficiency.
[0031] In order to solve the above problems, the embodiment of the present application provides a data processing method, which caches timestamp information of audio / video data in a timely manner, thereby avoiding the situation in the prior art where the target audio / video data is lost due to the lack of search for target timestamp information corresponding to the target audio / video data, thereby increasing the speed of starting playback of audio / video data of a program, and ultimately improving the playback efficiency of the program. The specific implementation process of this method will be described in detail below.
[0032] 1 is a schematic diagram illustrating an implementation scenario of a data processing method provided by an embodiment of the present application, the scenario includes a server A and a terminal B.
[0033] Here, Server A may be an independent physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides fundamental cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, Content Delivery Networks (CDNs), and big data and artificial intelligence platforms.
[0034] Terminal B may be, but is not limited to, various computer devices capable of displaying images, such as a smart TV, a smartphone, a tablet PC, a notebook PC, a desktop PC, etc. Terminal B and server A may be directly or indirectly connected by wired or wireless communication, and terminal B may receive data provided by server A and perform corresponding data processing operations, but the present application is not limited thereto.
[0035] Here, terminal B monitors the audio-video data package table in the data stream sent from the server in a data stream channel that transmits data between the server and the terminal, analyzes the audio-video data package table to obtain and cache timestamp information of the audio-video data in the data stream, obtains a target data stream waiting to be played back by the terminal from the data stream, extracts the target audio-video data from the target data stream, searches for target timestamp information corresponding to the target audio-video data from the cached timestamp information, and plays back the target audio-video data based on the target timestamp information.
[0036] It should be noted that the schematic diagram of the implementation environment scenario of the data processing method shown in Figure 1 is only an example, and the implementation environment scenario of the data processing method described in the embodiments of the present application is intended to more clearly explain the technical solution of the embodiments of the present application, and is not intended to limit the technical solution provided by the embodiments of the present application. Those skilled in the art should understand that with the evolution of data processing and the emergence of new service scenarios, the technical solution provided by the present application can be similarly applied to similar technical problems.
[0037] Each of the embodiments will be described in detail below. Note that the order in which the embodiments are described is not intended to limit the preferred order of the embodiments.
[0038] This embodiment will be described from the perspective of a data processing device, which may be specifically integrated into a computer device, and which may be a terminal, and the present application is not limited thereto.
[0039] Referring to Figure 2, Figure 2 is a schematic diagram showing the flow of a data processing method provided by an embodiment of the present application. The data processing method may include:
[0040] In step 101, an audio / video data package table in a data stream transmitted from a server is monitored in a data stream channel for data transmission between the server and a terminal.
[0041] Here, the data stream channel may be a channel for transmitting a data stream between the server and the terminal. The data stream may be a data stream configured in a specific order by data for playing a program on the terminal. The data stream may be a data stream in TLV format (abbreviated as TLV stream). The data for playing a program may include audio-video data corresponding to the program and data for enabling the audio-video data to be played on the terminal. Wherein, the audio-video data is audio-video data of a plurality of programs at the current frequency point encoded in an elementary stream (abbreviated as ES) format, and exists in the data stream transmitted from the server in a packetized form called data packets, and the audio-video data may include audio data and video data, or may include only audio data or video data, but is not limited thereto. The data for enabling the audio-video data to be played on the terminal may include an audio-video data package table corresponding to each program at the current frequency point, an address mapping table corresponding to the current frequency point, and an audio-video packet identifier list, etc.
[0042] Here, the audio-video data package table (abbreviated as MMT Package Table, MPT) is a data table used to describe detailed information on audio-video data corresponding to a program at a current frequency point, and may include information such as the format, byte, bit, sampling rate, or resolution of the audio-video data, and may further include time stamp information used to calculate related time information such as the decoding time and display time of the audio-video data. The terminal can calculate related time information such as the decoding time and display time, and realize playback of the audio-video data based on the time information. Note that the data stream may include audio-video data of all programs at the current frequency point and audio-video data package tables corresponding to each program, or audio-video data of some programs at the current frequency point and audio-video data package tables corresponding to each program. The specific details can be determined according to the actual situation, and will not be described here.
[0043] The address mapping table (AMT) may include Internet Protocol addresses (IP addresses) corresponding to all programs at the current frequency point, and each program corresponds to one Internet Protocol address. The audio-video packet identifier list (PLT) may include packet identifiers (Packetids) corresponding to data packets corresponding to audio-video data of each program at the current frequency point. Since one data packet corresponding to audio-video data of each channel corresponds to one packet identifier, audio-video data of one channel in one program can be uniquely determined based on the Internet Protocol address and the packet identifier, and filtering is performed on the data stream to filter and obtain the audio-video data that needs to be played back based on the Internet Protocol address and the packet identifier.
[0044] For example, the terminal may be a television terminal. Refer to FIG. 3, which is a schematic diagram showing a specific flow of a data processing method provided by an embodiment of the present application. When a user performs a program search or program switching operation through a television terminal, at this time, the television terminal is at a frequency point according to the program search or program switching operation, which triggers the television terminal to send a request to the server to obtain a data stream corresponding to the frequency point, and the television terminal can turn on the data stream channel. The data stream channel can obtain the data stream corresponding to the frequency point sent from the server, and monitor the audio-video data package table in the data stream sent from the server. Here, there can be multiple programs at one frequency point. Because the bandwidth of the data stream channel is relatively large, the data stream channel can load multiple programs. The television terminal can obtain a data stream having audio-video data of multiple programs at the current frequency point.
[0045] Optionally, if the terminal is a television terminal, specifically, when a user performs an operation that requires playing a program through the television terminal, such as program search or program switching, and the television terminal triggers a request to the server to obtain a data stream corresponding to this frequency point, the television terminal specifies a current frequency point through a tuner, receives an audio-video signal corresponding to this frequency point, and performs analog-to-digital conversion on the received audio-video signal through a demodulator, thereby obtaining a data stream corresponding to the current frequency point, and performs subsequent audio-video data playback operations.
[0046] However, in practical applications, the terminal may send request information for acquiring the data stream to the server according to other trigger instructions, and allow the server to send the data stream to the terminal.
[0047] Optionally, in one embodiment, the step of monitoring an audio-video data package table in the data stream transmitted from the server comprises: (1) monitoring for data in a target data stream based on a message type and a table identifier; (2) when monitoring for and obtaining target data in which the message type is a target message type and the table identifier is a target identifier, determining that the target data is an audio-video data package table.
[0048] Here, the message type may be a type corresponding to each data in the data stream, the table identifier (Table ID) may be an identifier corresponding to each data table, the target message type may be a message type corresponding to an audio-video data package table, and the target identifier may be a table identifier corresponding to the audio-video data package table.
[0049] Since the message type and table identifier in the data stream of the audio-video data package table can be specific, the terminal can search in the data stream according to the message type and table identifier, and monitor the data obtained by searching. Specifically, the terminal searches for the message type and table identifier corresponding to the data in the target data stream, and searches and obtains the target data whose message type is the target message type and whose table identifier is the target identifier, and can determine that the target data whose message type is the target message type and whose table identifier is the target identifier is the target data audio-video data package table. For example, if the terminal is a television terminal, the television terminal is triggered to monitor the audio-video data package table in the data stream sent from the server. At that time, the television terminal can search and determine that the target data whose message type is the target message type and whose table identifier is the target identifier is the audio-video data package table of multiple programs at the current frequency point. Optionally, the target message type can be MESSAGE_TYPE_PA, and the target identifier can be 0x20, thereby realizing searching and obtaining the audio-video data package table from the data stream.
[0050] In step 102, the audio / video data package table is analyzed to obtain time stamp information of the audio / video data in the data stream and cache it.
[0051] Here, this timestamp information may be a timestamp for calculating related time information such as the decoding time and display time of the audio-video data in the audio-video data package table, and this timestamp information may be the presentation time (mpu_presentation_time) of a media processing unit (abbreviated as mpu) corresponding to one media processing unit consisting of multiple audio-video data frames in the audio-video data of multiple programs at the current frequency point, where the media processing unit is a processing unit in a terminal playback device for processing audio-video data, and each media processing unit corresponds to the serial number (mpu_sequence_number) of one media processing unit so as to uniquely identify one media processing unit. For example, suppose the current frequency point includes audio-video data D of Program A, where 10 video data frames included in the audio-video data D constitute two media processing units, which are media processing unit V1 and media processing unit V2, respectively. In the audio-video data package table, the serial number of the media processing unit corresponding to V1 is entered as 155443, and the corresponding timestamp information is 2018 / 03 / 08 11:10:00.364656860940. In the audio-video data package table, the serial number of the media processing unit corresponding to V2 is entered as 155444, and the corresponding timestamp information is 2018 / 03 / 08 11:10:00.449990194291.
[0052] In order to avoid discarding corresponding audio-video data due to lack of associated time stamp information after caching the time stamp information of the audio-video data in advance and filtering the audio-video data, an audio-video data package table of multiple programs at the current frequency point obtained by searching is extracted and analyzed to obtain time stamp information of audio-video data of multiple programs at the current frequency point, and this time stamp information is cached. Specifically, this audio-video data package table is analyzed to obtain time stamp information of audio-video data in this data stream, a serial number of a media processing unit of this audio-video data is obtained, and based on the serial number of this media processing unit, time stamp information corresponding to this audio-video data is classified and cached.
[0053] There are various methods for analyzing the audio-video data package table to obtain timestamp information of the audio-video data in the data stream. For example, the media processing unit timestamp descriptor (MPU_Timestamp_Descriptor) and the media processing unit extended timestamp descriptor (MPU_Extended_Timestamp_Descriptor) in the audio-video data package table are analyzed to obtain timestamp information, and the timestamp information is cached according to a specified format. Here, the media processing unit timestamp descriptor includes Universal Time Coordinated (UTC), i.e., the presentation time of the media processing unit, corresponding to each audio / video data, i.e., each frame audio data frame and each frame video data frame, and the smallest media unit processed by the playback device is one group of pictures (GOP), while there are multiple audio / video data frames in one GOP, so that each frame audio data in one audio GOP has the same media processing unit serial number, and each frame video data in one video GOP has the same media processing unit serial number. Therefore, the audio / video data package table is analyzed, and the analyzed timestamp information of the audio / video data is cached, so that the terminal can timely play the audio / video data of the current frequency point based on the predetermined cached timestamp information in the subsequent playback process.
[0054] After analyzing the audio-video data package table to obtain the time stamp information of the audio-video data in the data stream, the time stamp information of the audio-video data in the data stream can be classified and cached. Here, there are various methods for classifying and caching the time stamp information of the audio-video data in the data stream. For example, in order to improve the efficiency of searching for the time stamp information, the serial number of the media processing unit of each GOP audio-video data may be optionally obtained, and the time stamp information corresponding to each GOP audio-video data may be classified and cached based on the serial number of the media processing unit. Specifically, the time stamp information is classified and cached according to the serial number of the media processing unit, and the time stamp information corresponding to the serial number of each media processing unit is all collected in one place. Furthermore, when it is necessary to search for the time stamp information of the audio-video data of a certain program, the serial number of the media processing unit corresponding to the audio-video data of the program can be obtained, and the time stamp information corresponding to the serial number of the media processing unit can be searched for from the cached time stamp information based on the serial number of the media processing unit.
[0055] Optionally, in the process of receiving a target data stream, an audio / video data package table for audio / video data from the target data stream is retrieved in a timely manner, an analysis is performed in a timely manner on the retrieved audio / video data package table, and timely caches the time stamp information of the analyzed audio / video data.
[0056] In step 103, a target data stream waiting to be played back at the terminal is obtained from the data stream, and target audio / video data is extracted from the target data stream.
[0057] Here, the target data stream may be a data stream received after the terminal turns on a data stream channel, and the target audio-video data may be audio-video data in the target data stream, i.e., audio-video data of a program corresponding to the current frequency point of the terminal, where the target audio-video data may be audio-video data of all programs at the current frequency point, audio-video data of some programs at the current frequency point, audio-video data of a program that currently needs to be played at the current frequency point, etc., and description thereof will be omitted here.
[0058] Here, there are various ways to extract target audio-video data from a target data stream, for example, still referring to FIG. 3, obtain a target Internet Protocol address and a corresponding target audio-video packet identifier, and filter the target data stream according to the target Internet Protocol address and the corresponding target audio-video packet identifier to obtain the target audio-video data. Specifically, the following methods are included:
[0059] (1) A target Internet Protocol address and a corresponding target audio-video packet identifier are obtained.
[0060] Here, the target Internet Protocol address may be an Internet Protocol address (IP address) corresponding to a program that needs to be played at the current frequency point, and each program corresponds to one IP address, and the target audio-video packet identifier is at least one audio-video packet identifier (Packet id) corresponding to the target audio-video data of the program that needs to be played currently, and the audio-video packet identifier is an identifier corresponding to the audio-video data of one channel. If one program has audio-video data of how many channels, there are the same number of audio-video packet identifiers. The audio-video data of each channel corresponds to one audio-video packet identifier.
[0061] Optionally, when the terminal performs an operation such as program search or program switching, the terminal can obtain the Internet Protocol address and audio-video packet identifier of the frequency point located and store them in the database. When the user specifies a frequency point and starts playing a program, the terminal can uniquely determine the audio-video data of one channel in one program based on one Internet Protocol address and one audio-video packet identifier, and can obtain the target Internet Protocol address and target audio-video packet identifier corresponding to the program to be played from the database, and obtain the audio-video data corresponding to the program to be currently played based on the target Internet Protocol address and the corresponding target audio-video packet identifier.
[0062] (2) filtering the target data stream based on the target Internet Protocol address and the corresponding target audio-video packet identifier to obtain the target audio-video data;
[0063] To obtain the audio-video data corresponding to the program that needs to be currently played, the target data stream is filtered based on the target Internet Protocol address and the corresponding target audio-video packet identifier to filter out the audio-video data corresponding to the program that needs to be currently played, thereby obtaining the target audio-video data corresponding to the program that needs to be currently played, where the target audio-video data at this time is the target audio-video data corresponding to the program that needs to be currently played at the current frequency point.
[0064] In one embodiment, an audio-video filter is set based on the target Internet Protocol address and the target audio-video packet identifier, and the target data stream is filtered by the audio-video filter to store the audio-video data corresponding to the target Internet Protocol address and the target audio-video packet identifier to obtain the target audio-video data. Here, the audio-video filter may include an audio filter and a video filter. Specifically, the target data stream is filtered by the audio filter to obtain target audio data corresponding to the program that needs to be currently played, and the target audio data may include at least one frame of audio data. The target data stream is filtered by the video filter to obtain target video data corresponding to the program that needs to be currently played, and the target video data may include at least one frame of video data. Based on the target audio data and the target video data, the target audio-video data corresponding to the program that needs to be currently played can finally be obtained.
[0065] In one embodiment, in order to avoid a playback bug occurring due to a change in the program that needs to be currently played back caused by a user's re-designation of a frequency point or switching to a program, an audio-video data package table corresponding to the program that needs to be currently played back is re-received, and based on the Internet Protocol address and the audio-video packet identifier in the re-received audio-video data package table, it is determined whether or not the program that needs to be currently played back has changed, thereby determining whether or not the program that needs to be currently played back has changed. Specifically, a first audio-video data package table corresponding to the target data stream is obtained, and an analysis is performed on the first audio-video data package table to obtain a first Internet Protocol address and a corresponding first audio-video packet identifier. If at least one of the first Internet Protocol address and the target Internet Protocol address, and the first audio-video packet identifier and the target audio-video packet identifier are different, filtering is performed on the target data stream based on the first Internet Protocol address and the corresponding first audio-video packet identifier to obtain the first audio-video data. The first time stamp information corresponding to the first audio-video data is searched for from the cached time stamp information. Based on this first time stamp information, the first audio / video data is reproduced.
[0066] Here, the first audio-video data package table may be an audio-video data package table corresponding to a program that needs to be currently played and is received from the target data stream, the first Internet Protocol address may be an IP address corresponding to the program that needs to be currently played and included in the first audio-video data package table, the first audio-video packet identifier may be an audio-video packet identifier corresponding to audio-video data of the program that needs to be currently played and included in the first audio-video data package table, the first audio-video data may be audio-video data corresponding to the program that needs to be currently played, and the first timestamp information may be timestamp information corresponding to audio-video data of each GOP in the audio-video data corresponding to the program that needs to be currently played.
[0067] Here, there are various ways to obtain the first audio-video data package table corresponding to the target data stream, such as receiving an address mapping table in the target data stream, where the address mapping table includes the Internet Protocol address of the audio-video data, receiving an audio-video packet identifier list in the target data stream, where the audio-video packet identifier list includes the audio-video packet identifiers of the audio-video data, and selecting the first audio-video data package table from the target data stream according to the address mapping table and the audio-video packet identifier list.
[0068] Here, the address mapping table may include Internet Protocol addresses of all programs at the current frequency point, and the audio-video packet identifier list may include audio-video packet identifiers corresponding to the audio-video data of all programs at the current frequency point, thereby receiving the address mapping table in the target data stream and the audio-video packet identifier list, and performing filtering on the list target data stream based on the address mapping table and the audio-video packet identifiers in the received target data stream to obtain a first audio-video data package table corresponding to the program that needs to be currently played.
[0069] In one embodiment, it may be detected whether this first audio-video data package table has been received, and if failure to receive the first audio-video data package table is detected, re-reception may be performed until reception is successful.
[0070] After obtaining the first audio-video data package table corresponding to the target data stream, the first audio-video data package table can be analyzed to obtain a first Internet Protocol address and a corresponding first audio-video packet identifier. Then, the first Internet Protocol address and the corresponding first audio-video packet identifier are compared with a target Internet Protocol address and a corresponding target audio-video packet identifier, respectively, and if at least one of the first Internet Protocol address and the target Internet Protocol address, and the first audio-video packet identifier and the target audio-video packet identifier are different, it indicates that the program that needs to be currently played has changed, and then the audio-video data needs to be re-filtered. Specifically, based on the first Internet Protocol address and the corresponding first audio-video packet identifier, filtering is performed on the target data stream to obtain the first audio-video data, thereby re-obtaining the target audio-video data of the program that currently needs to be played back, and then the first timestamp information corresponding to the first audio-video data is searched for from the cached timestamp information, and playback of the first audio-video data is performed based on the first timestamp information.
[0071] In step 104, target time stamp information corresponding to the target audio / video data is searched from the cached time stamp information.
[0072] Here, the target time stamp information is time stamp information corresponding to the target audio-video data in the cached time stamp information.
[0073] Here, there are various methods for searching for target timestamp information corresponding to the target audio-video data from the cached timestamp information. For example, the serial number of the target media processing unit of the target audio-video data is obtained, and based on the serial number of the target media processing unit, the target timestamp information corresponding to the serial number of the target media processing unit is searched for from the cached timestamp information.
[0074] Here, the serial number of the target media processing unit may be a serial number of a media processing unit corresponding to each GOP of audio-video data in the target audio-video data.
[0075] Optionally, the sorted and cached time stamp information is sorted and cached from smallest to largest according to the serial number of the media processing unit. When target audio / video data is acquired, the sorted and cached time stamp information is searched based on the serial number of the target media processing unit corresponding to the target audio / video data. If a media processing unit serial number equal to the target media processing unit serial number is found, it is determined that the time stamp information corresponding to the current serial number of this media processing unit is the target time stamp information.
[0076] For example, suppose that the current frequency point includes target audio-video data D of program A, where the target audio-video data D includes 20 audio-video data frames, and every 5 frames of the audio-video data frames constitute one media processing unit as one GOP. Therefore, the four media processing units included in the target audio-video data D of program A are M1, M2, M3, and M4, respectively, and the media processing unit serial numbers corresponding to the four media processing units are 155431, 155432, 155433, and 155434, respectively, and the cached timestamp information includes [...(155431,2018 / 03 / 08 11:10:00.449990194271), (155432,2018 / 03 / 08 11:10:00.449990194279), (155433,2018 / 03 / 08 11:10:00.449990194281), (155434,2018 / 03 / 08 11:10:00.449990194289), (155435,2018 / 03 / 08 11:10:00.449990194297), ..., (155439,2018 / 03 / 08 11:10:00.449990194299...], thus the media processing unit serial numbers corresponding to the four media processing units are 155431, 155432, 155433, and 155434, respectively, and the corresponding target time stamp information retrieved from the cached time stamp information are 2018 / 03 / 08 11:10:00.449990194271, 2018 / 03 / 08 11:10:00.449990194279, 2018 / 03 / 08 11:10:00.449990194281, and 2018 / 03 / 08 11:10:00.449990194289, respectively.
[0077] In step 105, playback is performed on the target audio / video data based on the target time stamp information.
[0078] Here, there are various methods for playing back the target audio-video data based on the target timestamp information. For example, a playback timestamp of the target audio-video data is calculated based on the target timestamp information, the target audio-video data and the corresponding playback timestamp are transmitted to a decoder, and the decoder plays back the target audio-video data based on the playback timestamp.
[0079] Here, the playback timestamp is a timestamp at which the target audio-video data is played back, and the decoder is a module that decodes the target audio-video data in a terminal, thereby playing back the target audio-video data in the terminal based on the decoded target audio-video data.
[0080] Optionally, the playback timestamps include a decoding timestamp and a display timestamp, and then the step of performing playback of the target audio-video data by the decoder based on the playback timestamps includes decoding the target audio-video data by the decoder based on the decoding timestamp, and, if the decoded target audio-video data satisfies an audio-video synchronization condition, performing playback of the decoded target audio-video data based on the display timestamp.
[0081] Here, the decode timestamp is used to inform the playback device related to the terminal when to decode a certain frame of audio-video data in the target audio-video data, and the display timestamp is used to inform the playback device related to the terminal when to display a certain frame of audio-video data in the target audio-video data. Furthermore, regarding the audio-video synchronization condition, it can be understood that in the process of playing back audio-video data, audio and video are mixed and played back together, so that a broad image is displayed. When audio and video are played back together, there is usually one issue of how to synchronize audio and video so that the image matches the sound. In order to synchronize audio and video, it is usually necessary to select one reference clock. The time in the reference clock rises linearly, and when encoding an audio-video stream, a timestamp is added to each frame data according to the time in the reference clock, and when playing back audio-video data, the timestamp in the audio-video data frame is read and the playback is prepared with reference to the time in the current reference clock, and this timestamp is the target timestamp information, and this playback condition is the audio-video synchronization condition.
[0082] Specifically, based on the target timestamp information, the playback timestamp of each target audio-video data is calculated, i.e., the decode timestamp and display timestamp of each target audio-video data are calculated. According to the decode timestamp, each target audio-video data is sent to a decoder for decoding. The decoder receives and decodes the target audio-video data frame by frame, so that the decoder accumulates the target audio-video data of one GOP. When the decoded target audio-video data meets the audio-video synchronization condition, the decoded target audio-video data can be played back based on the display timestamp.
[0083] Here, since the smallest media processing unit that the terminal playback device can process is one GOP, this target timestamp information is the display timestamp information of each audio-video GOP in the target audio-video data, while since there are multiple audio-video data frames in one audio-video GOP, the display timestamp shared by multiple audio-video data frames in one audio-video GOP, i.e., each frame audio data frame in one audio GOP, all have the same media processing unit serial number, and each frame video data frame in one video GOP all have the same media processing unit serial number.
[0084] In this way, in order to perform playback of audio-video data of each frame in the target audio-video data, it is necessary to obtain the decode time, display time, etc. corresponding to each frame of audio-video data in the target audio-video data, i.e., the decode timestamp, display timestamp, etc. corresponding to each frame of audio-video data. Optionally, in order to calculate and obtain the decode timestamp and display timestamp corresponding to each frame of audio-video data, the decode timestamp and display timestamp of each frame of audio-video data are calculated based on information such as the offset amount (dts_pts_offset) of the decode timestamp and display timestamp written in the media processing unit extended timestamp descriptor in the audio-video data package table, the number of frames of audio-video data included in one GOP, and the timescale (Timescale), etc.
[0085] Optionally, the calculation of the decode timestamp is as follows:
[0086]
number
number
[0087] The calculation formula of the display timestamp corresponding to each frame of audio-video data in the target audio-video data is as follows:
[0088] PTS(m)=DTS(m)+dts_pts_offset(m)÷timescale Here, PTS(m) represents the display timestamp corresponding to the m-th frame audio-video data in one audio-video GOP of the target audio-video data, and dts_pts_offset(m) represents the difference between the display timestamp corresponding to the m-th frame audio-video data in the audio-video GOP and the corresponding decoding timestamp.
[0089] In one embodiment, when a user triggers an action such as re-specifying a frequency point and the current frequency point changes, the timestamp information of the audio / video data corresponding to the previously played program can be cleared to avoid incorrect use of the timestamp information of the audio / video data corresponding to the previously played program.
[0090] In this way, the data processing method provided by the embodiment of the present application monitors and analyzes the audio-video data package table in the data stream in advance to obtain the serial number and time stamp information of the media processing unit of the audio-video data corresponding to the program to be played in advance, caches it in a timely manner, extracts and obtains the target audio-video data, and then searches for the target time stamp information corresponding to the target audio-video data from the time stamp information cached in advance, thereby timely playing the target audio-video data based on the target time stamp information. This avoids the situation in the prior art where the serial number or target time stamp information of the media processing unit corresponding to the target audio-video data is not searched and obtained. When the audio-video data corresponding to the program to be currently played changes due to a user switching a program or different audio-video data in the program, that is, when the packet ID corresponding to the audio-video data to be currently played changes, since the time stamp information of all packet IDs at the current frequency point has been cached in advance, the corresponding time stamp information can be timely obtained at the time of switching and quickly sent to the decoder to play the audio-video data. Therefore, when switching between audio and video data, it is possible to avoid a situation where some audio and video data is discarded because related timestamp information cannot be found, and thus a delay in the start time of playback of the audio and video data is avoided, thereby increasing the speed at which playback of the audio and video data starts, and thus improving the efficiency of program playback.
[0091] From the above, an embodiment of the present application monitors an audio-video data package table in a data stream transmitted from a server in a data stream channel that transmits data between a server and a terminal, analyzes the audio-video data package table to obtain and cache timestamp information of the audio-video data in the data stream, obtains a target data stream waiting to be played back by the terminal from the data stream, extracts the target audio-video data from the target data stream, searches for target timestamp information corresponding to the target audio-video data from the cached timestamp information, and plays back the target audio-video data based on the target timestamp information. In this way, the audio-video data package table in the data stream is monitored in advance, analyzed to obtain time stamp information of the audio-video data, cached in a timely manner, and the target audio-video data is extracted and obtained. Then, target time stamp information corresponding to the target audio-video data is searched for from the pre-cached time stamp information, and the target audio-video data is played back in a timely manner based on the target time stamp information. This avoids the situation in which the target audio-video data is lost due to the inability to search for and obtain target time stamp information corresponding to the target audio-video data in the conventional technology, thereby increasing the speed at which audio-video data playback is started and improving the efficiency of program playback.
[0092] To better implement the above method, an embodiment of the present invention further provides a data processing device, which can be integrated into a computer device, and the computer device is a terminal.
[0093] For example, as shown in Fig. 4, Fig. 4 is a schematic diagram showing the configuration of a data processing device provided by an embodiment of the present application. The data processing device includes a monitoring unit 201, an analyzing unit 202, an extracting unit 203, a searching unit 204, and a playing unit 205, as follows.
[0094] The monitoring unit 201 is used for monitoring the audio-video data package table in the data stream transmitted from the server in a data stream channel for data transmission between the server and the terminal.
[0095] The parsing unit 202 is used to parse the audio-video data package table to obtain and cache timestamp information of the audio-video data in the data stream.
[0096] The extraction unit 203 is used for obtaining a target data stream waiting to be played for the terminal from the data stream, and extracting target audio-video data from the target data stream.
[0097] The search unit 204 is used to search for target time stamp information corresponding to the target audio-video data from the cached time stamp information.
[0098] The playback unit 205 is used to perform playback on the target audio-video data based on the target timestamp information.
[0099] In one embodiment, the monitoring unit 201 includes: a first monitoring subunit adapted to monitor data in the target data stream based on a message type and a table identifier; and a determination subunit, which is used to determine, when target data whose message type is a target message type and whose table identifier is a target identifier is obtained by monitoring, the target data is determined to be an audio-video data package table.
[0100] In one embodiment, the analysis unit 202 includes: a parsing subunit used to parse the audio-video data package table to obtain time stamp information of the audio-video data in the data stream; and a classifying and caching subunit used to obtain a serial number of a media processing unit of the audio-video data, and classify and cache timestamp information corresponding to the audio-video data based on the serial number of the media processing unit.
[0101] In one embodiment, the search unit 204 includes: an acquisition subunit for acquiring a serial number of a target media processing unit of the target audio-video data; a retrieval subunit used to retrieve target time stamp information corresponding to the serial number of the target media processing unit from the cached time stamp information based on the serial number of the target media processing unit.
[0102] In one embodiment, the playback unit 205 includes: a calculation subunit adapted to calculate a playback timestamp of the target audio-video data based on the target timestamp information; a transmission subunit for transmitting the target audio-video data and corresponding playback timestamps to a decoder; and a playback subunit used by the decoder to perform playback on the target audio-video data based on the playback timestamp.
[0103] In one embodiment, the playback timestamps include a decode timestamp and a display timestamp, and the playback subunit: performing decoding, by the decoder, on the target audio-video data based on the decoding timestamp; If the decoded target audio-video data satisfies the audio-video synchronization condition, the display timestamp is used to perform playback for the decoded target audio-video data based on the display timestamp.
[0104] In one embodiment, the extraction unit 203 includes: a target information acquisition subunit, used for acquiring a target Internet Protocol address and a corresponding target audio-video packet identifier; and a filtering subunit adapted to perform filtering on the target data stream based on the target Internet Protocol address and the corresponding target audio-video packet identifier to obtain target audio-video data.
[0105] In one embodiment, the data processing apparatus comprises: a reacquisition unit for acquiring a first audio-video data package table corresponding to the target data stream; a re-analysis unit adapted to parse said first audio-video data package table to obtain a first Internet Protocol address and a corresponding first audio-video packet identifier; a re-filtering unit adapted to filter the target data stream based on the first Internet Protocol address and the corresponding first audio-video packet identifier to obtain first audio-video data if at least one of the first Internet Protocol address and the target Internet Protocol address and the first audio-video packet identifier and the target audio-video packet identifier are different; a re-search unit for searching the cached time stamp information for a first time stamp information corresponding to the first audio-video data; and a replay unit used to perform playback on the first audio-video data based on the first timestamp information.
[0106] In one embodiment, the recapture unit comprises: a first re-receiving subunit for receiving an address mapping table in the target data stream, the address mapping table being used to contain the Internet Protocol address of the audio-video data; a second re-receiving subunit containing a list of audio-video packet identifiers in the target data stream, the audio-video packet identifier list being used to contain audio-video packet identifiers of the audio-video data; a re-filtering subunit used to select a first audio-video data package table from the target data stream based on the address mapping table and the audio-video packet identifier list.
[0107] In one embodiment, the data processing apparatus comprises: The data stream further includes a third re-receiving unit, which is used for re-acquiring the first audio-video data package table from the target data stream when a failure in acquiring the first audio-video data package table is detected.
[0108] In one embodiment, the filtering unit comprises: a placement subunit for placing audio and video filters based on the target Internet Protocol address and the corresponding target audio-video packet identifier; an audio filtering subunit adapted to filter the target data stream with the audio filter to obtain at least one frame of target audio data; a video filtering subunit adapted to perform filtering on the target data stream with the video filter to obtain at least one frame of target video data; and an integrated subunit used to convert the target audio data and the target video data into target audio-video data.
[0109] In a specific embodiment, each of the above units may be realized as an entity, or may be arbitrarily combined and realized as the same or several entities. For specific implementation of each of the above units, reference may be made to the embodiments relating to the above-mentioned method, and therefore description thereof will be omitted here.
[0110] From the above, in the embodiment of the present application, the monitoring unit 201 monitors an audio-video data package table in a data stream transmitted from a server in a data stream channel for data transmission between the server and a terminal. The analyzing unit 202 analyzes the audio-video data package table to obtain time stamp information of the audio-video data in the data stream and caches it. The extracting unit 203 obtains a target data stream waiting to be played back by the terminal from the data stream and extracts the target audio-video data from the target data stream. The searching unit 204 searches for target time stamp information corresponding to the target audio-video data from the cached time stamp information. The playing unit 205 plays back the target audio-video data based on the target time stamp information. In this way, the audio-video data package table in the data stream is monitored in advance, analyzed to obtain time stamp information of the audio-video data, cached in a timely manner, and the target audio-video data is extracted and obtained. Then, target time stamp information corresponding to the target audio-video data is searched for from the pre-cached time stamp information, and the target audio-video data is played back in a timely manner based on the target time stamp information. This avoids the situation in the prior art where the target audio-video data is lost because the target time stamp information corresponding to the target audio-video data cannot be searched for, thereby increasing the speed at which audio-video data playback starts and improving the efficiency of program playback.
[0111] An embodiment of the present application further provides a computer device, as shown in FIG. 5, which shows a structural schematic diagram of a computer device according to an embodiment of the present application, where the computer device is a terminal, and is specifically as follows:
[0112] The computer device may include components such as a processor 301 for processing one or more cores, a memory 302 of one or more computer-readable storage media, a power supply 303, and an input unit 304. Those skilled in the art should understand that the configuration of the computer device shown in Fig. 5 does not limit the computer device, and the computer device may include more or less components than those shown, or may combine specific components, or may be configured with different components. Specifically, the following is the configuration of the computer device.
[0113] The processor 301 is the control center of the computer device, and uses various interfaces and wiring to connect each part of the entire computer device, executes or implements software programs and / or modules stored in the memory 302, and retrieves data stored in the memory 302 to perform various functions of the computer device and process data. Optionally, the processor 301 may include one or more processing cores. Preferably, the processor 301 may be used by integrating the processor with a modulation and demodulation processor. Here, the processor is used to mainly process the operation system, the user interface, the computer programs, etc., and the modulation and demodulation processor is used to mainly process wireless communication. As can be understood, the modulation and demodulation processor described above may not be integrated into the processor 301.
[0114] The memory 302 can be used to store software programs and modules. The processor 301 performs various functional applications and data processing by executing the software programs and modules stored in the memory 302. The memory 302 mainly includes a program storage area and a data storage area, where the program storage area can store an operation system, at least one computer program required for a function (e.g., a voice playback function, an image playback function, etc.), etc. The data storage area can store data generated based on the use of the computer device, etc. Furthermore, the memory 302 may include a high-speed random access memory, and may also include a non-volatile memory, for example, including at least one disk storage device, a flash memory device, or other volatile solid-state memory device. Accordingly, the memory 302 may include a memory controller to provide access to the memory 302 by the processor 301.
[0115] The computer device further includes a power supply 303 for supplying power to each component. Preferably, the power supply 303 may be logically connected to the processor 301 through a power management system, so that the power management system realizes functions such as charging, discharging, and power consumption management. The power supply 303 may further include any components such as one or more DC or AC power sources, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, etc.
[0116] The computing device may further include an input unit 304, which can be used to receive input numeric or textual information and generate keyboard, mouse, joystick, optical or trackball signal inputs for user settings and function control.
[0117] Although not shown, the computer device may include a display unit, etc., and the description thereof will be omitted here. In this embodiment, the processor 301 in the computer device loads executable files corresponding to one or more computer program processes into the memory 302 in response to the following instructions, and executes the computer programs stored in the memory 302 by the processor 301 to realize various functions. Specifically, the following is the case:
[0118] In a data stream channel for transmitting data between a server and a terminal, an audio-video data package table in the data stream transmitted from the server is monitored, the audio-video data package table is analyzed to obtain and cache timestamp information of the audio-video data in the data stream, a target data stream waiting to be played back by the terminal is obtained from the data stream, and the target audio-video data is extracted from the target data stream, target timestamp information corresponding to the target audio-video data is searched for from the cached timestamp information, and the target audio-video data is played back based on the target timestamp information.
[0119] The specific implementation of each of the above operations can be referred to in the above embodiments, and therefore the description is omitted here. In addition, the computer device provided by the embodiments of the present application belongs to the same technical idea as the method for applying data processing in the above embodiments, and the specific implementation process can be referred to in the above embodiments, and therefore the description is omitted here.
[0120] Those skilled in the art should understand that all or part of the steps in each method of the above-mentioned embodiments may be implemented by instructions, or may be implemented by controlling related hardware by instructions, which are stored in a computer-readable storage medium and are loaded and executed by a processor.
[0121] Thus, an embodiment of the present application provides a storage medium having a plurality of instructions stored thereon, the instructions being capable of being loaded by a processor to perform steps in any one of the data processing methods provided by the embodiment of the present application. For example, the instructions may perform the following steps:
[0122] In a data stream channel for transmitting data between a server and a terminal, an audio-video data package table in the data stream transmitted from the server is monitored, the audio-video data package table is analyzed to obtain and cache timestamp information of the audio-video data in the data stream, a target data stream waiting to be played back by the terminal is obtained from the data stream, and the target audio-video data is extracted from the target data stream, target timestamp information corresponding to the target audio-video data is searched for from the cached timestamp information, and the target audio-video data is played back based on the target timestamp information.
[0123] Here, the storage medium may include a read only memory (ROM), a random access memory (RAM), a disk, an optical disk, or the like.
[0124] The instructions stored in the storage medium can execute the steps of any one of the data processing methods provided by the embodiments of the present application, so that the effects of the invention that can realize any one of the data processing methods provided by the embodiments of the present application can be realized. For details, please refer to the above-mentioned embodiments and the description will be omitted here.
[0125] Here, in one aspect of the present application, a computer program product or computer program is provided, the computer program product or computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium, a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to cause the computer device to perform the method provided by the various selectable implementation manners provided by the above-mentioned embodiments.
[0126] The data processing method, device, storage medium, and computer device provided by the embodiments of the present application have been described in detail above, and the principles and embodiments of the present application have been described using specific examples in this specification. However, the description of the above examples is intended only to help understand the method and core idea of the present application. In addition, it should be understood that those skilled in the art can modify specific embodiments and application scope based on the technical idea of the present application. In summary, the description of the present specification should not be interpreted as limiting the present application.
Claims
1. monitoring an audio / video data package table in a data stream transmitted from the server in a data stream channel for data transmission between the server and a terminal; analyzing the audio / video data package table to obtain and cache time stamp information of the audio / video data in the data stream; obtaining a target data stream waiting to be played at the terminal from the data stream, and extracting target audio-video data from the target data stream; retrieving target time stamp information corresponding to the target audio / video data from the cached time stamp information; and playing the target audio-video data based on the target time stamp information. Data processing methods.
2. monitoring an audio-video data package table in a data stream transmitted from the server, monitoring data in the data stream based on a message type and a table identifier; and determining, when monitoring for target data, the message type being a target message type and the table identifier being a target identifier, that the target data is an audio / video data package table.
2. The data processing method according to claim 1.
3. Analyzing the audio / video data package table to obtain and cache time stamp information of the audio / video data in the data stream, performing an analysis on the audio-video data package table to obtain time stamp information of the audio-video data in the data stream; obtaining a serial number of a media processing unit for the audio / video data, and classifying and caching time stamp information corresponding to the audio / video data based on the serial number of the media processing unit; 2. The data processing method according to claim 1.
4. retrieving target time stamp information corresponding to the target audio / video data from the cached time stamp information, obtaining a serial number of a target media processing unit for the target audio-video data; and searching the cached time stamp information for target time stamp information corresponding to the serial number of the target media processing unit based on the serial number of the target media processing unit. The data processing method according to claim 3.
5. performing playback of the target audio / video data based on the target time stamp information; calculating a playback timestamp of the target audio-video data based on the target timestamp information; transmitting the target audio-video data and corresponding playback timestamps to a decoder; performing playback of the target audio-video data by the decoder based on the playback timestamp.
2. The data processing method according to claim 1.
6. The playback timestamps include a decode timestamp and a display timestamp, and performing playback of the target audio-video data by the decoder based on the playback timestamps includes: performing decoding on the target audio-video data by the decoder based on the decoding timestamp; When the decoded target audio-video data satisfies an audio-video synchronization condition, performing playback on the decoded target audio-video data based on the display timestamp. The data processing method according to claim 5.
7. Extracting target audio-video data from the target data stream comprises: obtaining a target Internet Protocol address and a corresponding target audio-video packet identifier; filtering the target data stream based on the target Internet Protocol address and the corresponding target audio-video packet identifier to obtain target audio-video data. The data processing method according to any one of claims 1 to 6.
8. after extracting target audio-video data from the target data stream; obtaining a first audio-video data package table corresponding to the target data stream; parsing said first audio-video data package table to obtain a first Internet Protocol address and a corresponding first audio-video packet identifier; filtering the target data stream based on the first Internet Protocol address and the corresponding first audio-video packet identifier to obtain first audio-video data if at least one of the first Internet Protocol address and the target Internet Protocol address and the first audio-video packet identifier and the target audio-video packet identifier are different; retrieving first time stamp information corresponding to the first audio / video data from the cached time stamp information; and performing playback on the first audio-video data based on the first time stamp information. The data processing method according to claim 7.
9. Obtaining a first audio-video data package table corresponding to the target data stream includes: receiving an address mapping table in the target data stream, the address mapping table including Internet Protocol addresses of the audio and video data; receiving a list of audio-video packet identifiers in the target data stream, the audio-video packet identifier list including audio-video packet identifiers of the audio-video data; selecting a first audio-video data package table from the target data stream based on the address mapping table and the audio-video packet identifier list; The data processing method according to claim 8.
10. After obtaining a first audio-video data package table corresponding to the target data stream, and when detecting a failure in acquiring the first audio-video data package table, reacquiring the first audio-video data package table from the target data stream. The data processing method according to claim 8.
11. filtering the target data stream based on the target Internet Protocol address and corresponding target audio-video packet identifiers to obtain target audio-video data; establishing audio and video filters based on the target Internet Protocol address and the corresponding target audio-video packet identifier; filtering the target data stream with the audio filter to obtain at least one frame of target audio data; filtering the target data stream with the video filter to obtain at least one frame of target video data; determining said target audio data and said target video data as target audio-video data; The data processing method according to claim 7.
12. a monitoring unit for monitoring an audio / video data package table in a data stream transmitted from the server in a data stream channel for data transmission between the server and a terminal; a parsing unit for parsing the audio-video data package table to obtain and cache time stamp information of the audio-video data in the data stream; an extraction unit for obtaining a target data stream waiting to be played at the terminal from the data stream, and extracting target audio-video data from the target data stream; a search unit for searching the cached time stamp information for target time stamp information corresponding to the target audio / video data; a playback unit for performing playback on the target audio / video data based on the target time stamp information. Data processing device.
13. The monitoring unit includes: a first monitoring subunit for monitoring data in the data stream based on a message type and a table identifier; a judging subunit for judging, when the target data is obtained, the message type of which is a target message type and the table identifier of which is a target identifier, that the target data is an audio / video data package table; 13. A data processing apparatus according to claim 12.
14. The analysis unit includes: a parsing subunit for performing parsing on the audio-video data package table to obtain time stamp information of the audio-video data in the data stream; a classifying and caching subunit for acquiring a serial number of a media processing unit for the audio / video data, and classifying and caching time stamp information corresponding to the audio / video data based on the serial number of the media processing unit.
13. A data processing apparatus according to claim 12.
15. The search unit includes: an acquiring subunit for acquiring a serial number of a target media processing unit for the target audio-video data; a search subunit for searching the cached time stamp information for target time stamp information corresponding to the serial number of the target media processing unit based on the serial number of the target media processing unit.
13. A data processing apparatus according to claim 12.
16. The regeneration unit comprises: a calculation subunit for calculating a playback timestamp of the target audio-video data based on the target timestamp information; a transmitting subunit for transmitting the target audio-video data and corresponding playback timestamps to a decoder; a playback subunit for performing playback of the target audio-video data by the decoder based on the playback timestamp.
13. A data processing apparatus according to claim 12.
17. The playback timestamps include a decode timestamp and a display timestamp, and the playback subunit: performing decoding on the target audio-video data by the decoder based on the decoding timestamp; When the decoded target audio-video data satisfies an audio-video synchronization condition, performing playback on the decoded target audio-video data based on the display timestamp.
13. A data processing apparatus according to claim 12.
18. The extraction unit comprises: obtaining a target Internet Protocol address and a corresponding target audio-video packet identifier; filtering the target data stream based on the target Internet Protocol address and corresponding target audio-video packet identifiers to obtain target audio-video data.
13. A data processing apparatus according to claim 12.
19. A storage medium having a plurality of instructions stored thereon, the instructions being loadable by a processor to cause the processor to perform the steps of the data processing method according to any one of claims 1 to 11. storage medium.
20. A data processing method according to any one of claims 1 to 11, comprising: a memory and a processor, the memory storing a computer program, and the processor executing the computer program stored in the memory to perform the steps of the data processing method according to any one of claims 1 to 11. Computer equipment.
Citation Information
Patent Citations
Transmitter, transmission method, receiver, receive method, and program
JP2017028463A