WO2017035804A1 - 一种传送流切片方法及装置 - Google Patents

一种传送流切片方法及装置 Download PDF

Info

Publication number
WO2017035804A1
WO2017035804A1 PCT/CN2015/088818 CN2015088818W WO2017035804A1 WO 2017035804 A1 WO2017035804 A1 WO 2017035804A1 CN 2015088818 W CN2015088818 W CN 2015088818W WO 2017035804 A1 WO2017035804 A1 WO 2017035804A1
Authority
WO
WIPO (PCT)
Prior art keywords
transport stream
packet
stream
current
module
Prior art date
Application number
PCT/CN2015/088818
Other languages
English (en)
French (fr)
Inventor
何志伟
Original Assignee
深圳好视网络科技有限公司
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 深圳好视网络科技有限公司 filed Critical 深圳好视网络科技有限公司
Priority to PCT/CN2015/088818 priority Critical patent/WO2017035804A1/zh
Publication of WO2017035804A1 publication Critical patent/WO2017035804A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]

Definitions

  • the present invention belongs to the field of communications technologies, and in particular, to a transport stream slicing method and apparatus.
  • Transport stream (TS, Transport) Stream) is a code stream of the MPEG-2 standard.
  • the TS stream is composed of one or more programs.
  • Each program is composed of one or more original streams and some other streams, including video streams and audio streams.
  • program description information flow PSI, Program Specific Information
  • SI Business Information
  • HLS in the live streaming protocol Http Live
  • the Streaming protocol stores the live data stream as a continuous, short-lived TS stream file on the server side, while the client continuously downloads and plays these TS stream files, and the server always generates new live broadcast data.
  • the TS stream file the client only needs to play the TS stream file obtained from the server in order to watch the live broadcast.
  • TS packets are somewhat scrambled, some are unscrambled, and in some cases do not have descrambling conditions or do not allow descrambling when slicing TS streams. If the TS packet is re-encapsulated for the demultiplexed media frame, it is difficult to accurately reproduce the original scrambling situation, thereby causing the streaming media to be played due to a decoding error at the playback end, thereby reducing the playback efficiency. On the other hand, the TS stream may also carry some other information that is inconvenient to parse or difficult to handle when sliced, but needs to be preserved in the slice. The prior art slicing method causes loss of such information.
  • the present invention provides a transport stream slicing method and apparatus.
  • the invention provides a method for transport stream slicing, comprising:
  • the invention provides a transport stream slicing device, comprising:
  • An obtaining module configured to receive a transport stream, and demultiplex the transport stream to obtain target original data, where the target raw data includes packet identification information of a transport stream packet; and a classification storage module, configured to be used in the transport stream
  • the transport stream packet is classified and stored according to the associated packet identification information;
  • the slicing module is configured to write the transport stream packet into the transport stream fragment according to the preset slice duration and the media stream property of the transport stream.
  • the transport stream is divided into a plurality of transport stream fragments.
  • the present invention classifies and stores each TS packet according to different PIDs of the TS packets in the transport stream, and according to the preset slice duration and the media stream property of the transport stream, the TS packets are classified according to the foregoing.
  • Write the form in the TS slice after segmentation, slice the transport stream protect the information of the transport stream from being lost, and protect the information of the transport stream from being lost, thereby ensuring correct decoding during playback and improving media data playback. effectiveness.
  • FIG. 1 is a schematic flowchart of an implementation process of a transport stream slicing method according to a first embodiment of the present invention
  • FIG. 2 is a schematic flowchart of an implementation process of a transport stream slicing method according to a second embodiment of the present invention
  • FIG. 3 is a schematic structural diagram of a transport stream slicing apparatus according to a third embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of a transport stream slicing apparatus according to a fourth embodiment of the present invention.
  • FIG. 1 is a schematic flowchart of an implementation process of a transport stream slicing method according to a first embodiment of the present invention.
  • the transport stream slicing method can be applied to a server, and can also be applied to a terminal device including a set top box device.
  • the method mainly includes the following steps S101 to S103:
  • S101 Receive a transport stream, and demultiplex the transport stream to obtain the target original data, where the target original data includes packet identification information of the transport stream packet.
  • the TS stream is composed of TS packets.
  • the TS packet is divided into a packet header, an adaptation area, and packet data.
  • the adaptive region and packet data are useful information spaces for transmitting the encoded video and audio data streams and description information.
  • the header of the TS packet consists of the sync byte, the transmission error indication information, the payload unit start information, the transmission priority flag, and the packet identification (PID, Packet). Identification information, transmission scrambling control information, adaptive area control information, and packet increment counter are composed of eight parts.
  • the automatic correlation feature of the synchronization byte bit string can be used to detect the packet limitation of the TS packet, and the packet synchronization is established.
  • the error correction decoder can be used to represent the 1 bit.
  • the payload unit start information indicates whether the TS packet has a certain starting information
  • the transmission priority flag is to assign priority to the TS packet
  • the PID value is somewhat fixed, some Designated by the user, the decoder distinguishes the TS packets of different data sources in the TS stream according to the PID to reconstruct the original data stream; and transmits the scrambling control information, which is used to indicate whether the content of the TS packet is scrambled, but the header and the self
  • the adaptation zone is never scrambled
  • the adaptive zone control information is used 2 Bit indicates whether there is an adaptive region, such as (01) indicates that there is no adaptive region with useful information, (10) indicates that there is no useful information, there is an adaptive region, and (11) indicates that there is useful information with an adaptive region;
  • the counter can count the TS packet transmission order, and the receiving device can judge whether there is a TS packet loss or a TS packet transmission sequence error according to the counting result of the packet increment counter.
  • the packet header has the functions of
  • the header structure of the TS package is shown in the following table:
  • the video, audio and other auxiliary data of the program are digitized, and the source compression coding is performed through the compression layer to form an original stream of video, audio and other auxiliary data (ES, Elementary Streams) .
  • the above ESs are respectively packaged into PESs through the system layer.
  • the PES packets are respectively added into the TS packets as load data, and are multiplexed according to a certain ratio to form a TS stream of one program.
  • the data of some of the original TS streams may be obtained, including various descriptions of the composition, structure, and sequence of the TS packet, the TS stream, the PES, and the ES, and the description information is generally Various forms exist.
  • program association table (PAT, Program Association Table), Program Map Table (PMT), and Service Description Table (SDT, Service Description) Table) and the like, wherein the program stream existing in the TS stream is listed in the PAT, and the PID of the packet in which the PMT corresponding to each program in the TS stream is located is specified, and the PMT contains video, audio, and data original streams belonging to the same program.
  • the PID the demultiplexer can find the PID of each original stream corresponding to one program according to the PMT, and then obtain the original stream according to the original stream PID.
  • the SDT contains data describing the services in the system, such as service names, service providers, and so on.
  • the TS stream is received, and the TS stream is demultiplexed to obtain target original data, where the target original data refers to information about the TS stream that is required when the TS stream is sliced, and the target is original.
  • the data must contain the PID information of each TS packet.
  • the transport stream packets in the transport stream are classified and stored according to the associated packet identification information.
  • the PID is an important parameter for identifying the TS packet and is used to identify the type of data carried by the TS packet.
  • the original stream of each type of service such as video, audio, and data is given a different PID, and the decoder determines, by means of the PID, which type of service a TS packet belongs to.
  • the PID is a unique identifier that distinguishes the TS packet from other TS packet service types. By reading the PID value in the header of each TS packet, the service type of the data carried in the TS packet can be determined.
  • Each TS packet in the TS stream is classified and stored according to the PID to which it belongs, that is, each TS packet is classified according to PID, all video TS packets are stored together, all audio TS packets are stored together, and the PAT table is stored separately.
  • the PMT tables are stored separately, and the SDT tables are stored separately, that is, the TS packets of the same PID are stored in the same location for easy reading.
  • the preset slice duration can be customized by the user.
  • the media stream property refers to whether the media stream in the TS stream is an audio stream or a video stream.
  • the process of segmentation in this embodiment is related not only to the preset duration slice but also to the media stream nature of the TS stream.
  • the transport stream is sliced into a plurality of TS fragments in the form of writing TS packets into TS fragments, that is, in the splitting.
  • each TS packet having a different PID is classified into each TS slice, and the category here is a classification of data types formed by different PIDs.
  • the TS packets can be classified and stored according to different PIDs, that is, all video class TS packets of the same PID are stored together, the same PID all audio class TS packets are stored together, the PAT table is stored separately, and the PMT table is separately stored. Storage, SDT table storage, etc.
  • the plurality of TS fragments after the splitting are to meet the format requirements of the subsequent data transmission, so that the plurality of TS fragments can be correctly decoded on the playing end and the program is successfully played.
  • the transport stream slicing method provided in this embodiment classifies and stores each TS packet according to different PIDs of TS packets in the transport stream, and according to the preset slice duration and the media stream property of the transport stream, according to the foregoing classification of each TS packet.
  • the form in the TS slice after the segmentation is written, and the transport stream is sliced to protect the information of the transport stream from being lost, thereby ensuring correct decoding during playback and improving media data playback efficiency.
  • FIG. 2 is a schematic flowchart of an implementation process of a transport stream slicing method according to a second embodiment of the present invention.
  • the transport stream slicing method can be applied to a server, and can also be applied to a terminal device including a set top box device.
  • the method mainly includes the following steps S201 to S205:
  • S201 Receive a transport stream, and demultiplex the transport stream to obtain target original data, where the target original data includes packet identification information of the transport stream packet.
  • the target raw data refers to information about the TS stream required for slicing the TS stream, and the target original data must include each PID information of the TS package.
  • the TS stream is composed of multiple TS packets.
  • the packet header of the TS packet is composed of a synchronization byte, a transmission error indication information, a payload unit start information, a transmission priority flag, a PID, a transmission scrambling control information, an adaptive region control information, and a packet increment counter. .
  • the TS stream may include a media frame, a data frame, and the like.
  • the media frame includes an audio frame, a video frame, and the like.
  • the data frame includes various descriptions of the composition, structure, and sequence of the TS packet, the TS stream, the PES, and the ES.
  • the packet is a description packet, it indicates that the description information is inserted here, and the description information may be updated or may be duplicated if the packet is The PES media package indicates that a new media frame has been received.
  • step 203 is performed; if there is no initiator, step 204 is performed.
  • All TS packets stored with the same PID as the current TS packet are emptied, and the current TS packet is stored, generally stored in the emptied location of the TS packet having the same PID, or may be stored in another location.
  • the PID is used to identify the type of data carried by the TS packet, and the type of the data can be classified into other data such as video data, audio data, and service data.
  • the TS stream is generated, the original stream of each type of service such as video, audio, and data is given a different PID, and the decoder determines, by means of the PID, which type of service a TS packet belongs to.
  • the PID is a unique identifier that distinguishes the TS packet from other TS packet service types. By reading the PID value in the header of each TS packet, the service type of the data carried in the TS packet can be determined. All data of the same type in a TS stream have the same PID value.
  • Each TS packet in the TS stream is classified and stored according to the PID to which it belongs, that is, each TS packet is classified according to PID, all video TS packets are stored together, all audio TS packets are stored together, and the PAT table is stored separately.
  • the PMT tables are stored separately, and the SDT tables are stored separately, that is, the TS packets of the same PID are stored in the same location for easy reading. There is no start character in the header of the current TS packet, not the start packet, and the TS packets with the same PID are stored together according to the classification principle.
  • the currently received TS packet is a TS packet of a PAT table, and its PID is 0. If the header of the TS packet includes an initial character, which is a start packet, all TSs stored before the PID are cleared. The packet is also stored in the location where the TS packet with the PID of 0 is previously stored, or stored in another location. If the start of the TS packet does not contain the start character, not the start packet, the TS packet is stored in the same location as the other TS packets with the PID ID of 0.
  • the transport stream is sliced into a plurality of transport stream fragments in a form of writing the transport stream packet into the transport stream fragment according to a preset slice duration and a media stream property of the transport stream.
  • the preset slice length can be preset by the user, and the length of the TS stream slice should not be too long. Otherwise, it is difficult to ensure the smoothness of the play on the terminal for playing the program, and it is not too short, otherwise the processing of splitting the TS stream slice is increased. The complexity of the process, wasting processing time.
  • the preset slice duration can be 10 seconds.
  • the media stream property refers to whether the media stream in the TS stream is an audio stream or a video stream.
  • the process of segmentation in this embodiment is related not only to the preset duration slice but also to the media stream nature of the TS.
  • the video stream in the TS stream is composed of video frames.
  • a special type of frame is called a video key frame
  • the video frame after the video key frame is encoded only by the video key frame, and the video key is
  • the coding of the video frame before the frame is irrelevant, and the coding of other media frames is not referred to. Therefore, in this embodiment, the video key frame is used as a basis for segmentation of a TS slice.
  • the TS stream includes a video stream
  • the standard encoding can determine whether the current media frame is an IDR frame. If it is not a video key frame (or a standard encoded IDR frame such as H.264 or H.265), the TS fragmentation will be based only on the preset slice duration. When the preset slice duration has been reached, the TS packet corresponding to the current media frame is written into the current TS slice.
  • the description information includes: a program association table (PAT, Program Association) Table), Program Map Table (PMT), and Service Description Table (SDT, Service Description) Table) and other tables, as well as Entitlement Management Message (ECM), authorization control information (EMM, Entitlement) Control Message) and other information.
  • the ECM is dedicated conditional access information containing securely encrypted user authorization information.
  • the EMM is dedicated conditional access information, including control information for descrambling.
  • the intrinsic relationship between them refers to the content and nature of another description information according to the content and nature of a description information. There is a relationship between the two. For example, the PID of the PMT table is in the PAT table.
  • the TS packet corresponding to the PAT table is to be written before the TS packet corresponding to the PMT.
  • the PID of the ECM is specified in the PMT table.
  • the TS packet corresponding to the PMT table is to be written before the TS packet corresponding to the ECM.
  • the PID of the EMM is specified in the CAT table. In one slice, the TS packet corresponding to the CAT table is before the TS packet corresponding to the EMM.
  • the starting frame of each TS slice is independently decoded and can be played independently. And, as long as the description information is received, the TS slice is written immediately. Then, any TS fragment received on the playback end can be played immediately after decoding.
  • the TS stream may be split according to the preset duration to write the TS packets into the TS fragment.
  • the TS stream is sliced into a plurality of TS fragments.
  • the transport stream is sliced into a plurality of TS fragments in the form of writing TS packets into TS fragments, that is, in the splitting.
  • each TS packet having a different PID is classified into each TS fragment, and the category here is a classification of data types formed by different PIDs.
  • the TS packets can be classified and stored according to different PIDs, that is, all video class TS packets of the same PID are stored together, the same PID all audio class TS packets are stored together, the PAT table is stored separately, and the PMT table is separately stored.
  • the division manner of each TS slice is determined, and the TS packets stored in the classification are written into the TS fragments in the order of the original TS stream.
  • the TS packet classification is written into the TS fragments in order, and the information in the original TS stream is not lost. Therefore, when the TS stream is added with scrambling information or other information, it is completely and correctly preserved and protected. The information of the original transport stream is not lost, and can be correctly decoded during subsequent decoding without affecting the playback of the media stream.
  • the TS packet corresponding to the latest description information (ie, PSI or SI information) in the TS stream may be written into the new TS score after the segmentation. The beginning of the piece. Preventing the player from playing the TS clip after the splitting is performed independently cannot be played because of the lack of corresponding description information.
  • the plurality of TS fragments after the splitting are to meet the format requirements of the subsequent data transmission, so that the plurality of TS fragments can be correctly decoded on the playing end and the program is successfully played.
  • the transport stream slicing method provided in this embodiment classifies and stores each TS packet according to different PIDs of TS packets in the transport stream, and according to the preset slice duration and the media stream property of the transport stream, according to the foregoing classification of each TS packet.
  • Write the form in the TS slice after segmentation, slice the transport stream protect the information of the transport stream from being lost, and protect the information of the transport stream from being lost, thereby ensuring correct decoding during playback and improving media data playback. effectiveness.
  • the TS packet corresponding to the latest description information in the TS stream is written into the beginning of the segmented new TS fragment, so that the playback end can independently decode and play each TS fragment, so that the received data can be played in real time. No need to wait for buffering.
  • FIG. 3 is a schematic structural diagram of a transport stream slicing apparatus according to a third embodiment of the present invention.
  • the transport stream slicing apparatus illustrated in FIG. 3 may be an execution body of the transport stream slicing method provided by the foregoing embodiment, and mainly includes an obtaining module 301, a classifying storage module 302, and a slicing module 303.
  • the obtaining module 301 is configured to receive a transport stream, and demultiplex the transport stream to obtain target original data, where the target original data includes packet identification information of the transport stream packet.
  • the video, audio and other auxiliary data of the program are digitized, and the source compression coding is performed through the compression layer to form an ES of video, audio and other auxiliary data, and then the above ESs are passed through the system layer. Pack the headers separately into PES.
  • the PES packets are respectively added into the TS packets as load data, and are multiplexed according to a certain ratio to form a TS stream of one program.
  • the data of some of the original TS streams may be obtained, including various descriptions of the composition, structure, and sequence of the TS packet, the TS stream, the PES, and the ES, and the description information is generally Various forms exist, for example, PAT, PMT, SDT, and the like.
  • the description information may also be information such as ECM, EMM, and the like.
  • the TS packet is divided into a packet header, an adaptation area, and packet data.
  • the packet header is composed of a synchronization byte, a transmission error indication information, a payload unit start information, a transmission priority flag, a PID, a transmission scrambling control information, an adaptive zone control information, and a packet increment counter.
  • the target original data corresponding to the TS stream can be obtained by demultiplexing the received TS stream, where the target original data refers to information about the TS stream that is required when the TS stream is sliced.
  • the target raw data contains the PID of each TS packet.
  • a classification storage module 302 configured to classify and store the transport stream packets in the transport stream according to the associated packet identification information
  • the PID is an important parameter for identifying the TS packet and is used to identify the type of data carried by the TS packet.
  • the original stream of each type of service such as video, audio, and data is given a different PID, and the decoder determines, by means of the PID, which type of service a TS packet belongs to.
  • the PID is a unique identifier that distinguishes the TS packet from other TS packet service types. By reading the PID value in the header of each TS packet, the service type of the data carried in the TS packet can be determined.
  • Each TS packet in the TS stream is classified and stored according to the PID to which it belongs, that is, each TS packet is classified according to PID, all video TS packets are stored together, all audio TS packets are stored together, and the PAT table is stored separately.
  • the PMT tables are stored separately, and the SDT tables are stored separately, that is, the TS packets of the same PID are stored in the same location for easy reading.
  • the slicing module 303 is configured to slice the transport stream into a plurality of transport stream fragments in a form of writing the transport stream packet into the transport stream fragment according to the preset slice duration and the media stream property of the transport stream.
  • the preset slice duration can be customized by the user.
  • the media stream property refers to whether the media stream in the TS stream is an audio stream or a video stream.
  • the process of segmentation in this embodiment is related not only to the preset duration slice but also to the media stream nature of the TS stream.
  • the transport stream is sliced into a plurality of TS fragments in the form of writing TS packets into TS fragments, that is, splitting into multiple In the TS fragmentation, each TS packet having a different PID is classified into each TS fragment, and the category here is the classification of data types formed by different PIDs.
  • the TS packets can be classified and stored according to different PIDs, that is, all video class TS packets of the same PID are stored together, the same PID all audio class TS packets are stored together, the PAT table is stored separately, and the PMT table is separately stored. Storage, SDT table storage, etc.
  • the plurality of TS fragments after the splitting are to meet the format requirements of the subsequent data transmission, so that the plurality of TS fragments can be correctly decoded on the playing end and the program is successfully played.
  • each functional module is merely an example, and the actual application may be considered according to requirements, such as configuration requirements of corresponding hardware or convenience of implementation of software.
  • the above function assignment is performed by different functional modules, that is, the internal structure of the access device is divided into different functional modules to complete all or part of the functions described above.
  • the corresponding functional modules in this embodiment may be implemented by corresponding hardware, or may be executed by corresponding hardware to execute corresponding software.
  • the various described embodiments are applicable to the various embodiments provided in this specification. Please refer to the description of the embodiment shown in FIG. 1 and FIG. 2 above for details.
  • the transport stream slicing apparatus classifies and stores each TS packet according to different PIDs of TS packets in the transport stream, and according to the preset slice duration and the transport stream.
  • the media stream is characterized in that each TS packet is written into the sliced TS slice according to the above classification, and the transport stream is sliced to protect the original transport stream information from being lost, thereby ensuring correct decoding during playback and improving the media. Data playback efficiency.
  • FIG. 4 is a schematic structural diagram of a transport stream slicing apparatus according to a fourth embodiment of the present invention.
  • the transport stream slicing apparatus exemplified in FIG. 4 may be an execution body of the transport stream slicing method provided by the foregoing embodiment.
  • the transport stream slicing apparatus illustrated in FIG. 3 mainly includes: an obtaining module 401, a classifying storage module 402, a first determining module 4021, a first storing submodule 4022, and a second storing.
  • the submodule 4023, the slicing module 403, the second judging module 4031, and the writing module 4032 The submodule 4023, the slicing module 403, the second judging module 4031, and the writing module 4032.
  • the obtaining module 401 is configured to receive a transport stream, and demultiplex the transport stream to obtain target original data, where the target original data includes packet identification information of the transport stream packet.
  • the target raw data consists of multiple TS packets.
  • the packet header of the TS packet is composed of a synchronization byte, a transmission error indication information, a payload unit start information, a transmission priority flag, a PID, a transmission scrambling control information, an adaptive region control information, and a packet increment counter. .
  • the TS stream may include various descriptions of the composition, structure, and sequence of the TS packet, the TS stream, the PES, and the ES.
  • the description information can be obtained after demultiplexing the received TS stream.
  • a classification storage module 402 configured to classify and store the transport stream packets in the transport stream according to the associated packet identification information
  • the PID is used to identify the type of data carried by the TS packet, and the type of the data can be classified into other data such as video data, audio data, and service data.
  • the TS stream is generated, the original stream of each type of service such as video, audio, and data is given a different PID, and the decoder determines, by means of the PID, which type of service a TS packet belongs to.
  • the PID is a unique identifier that distinguishes the TS packet from other TS packet service types. By reading the PID value in the header of each TS packet, the service type of the data carried in the TS packet can be determined.
  • All the same types of data in a TS stream have the same PID value.
  • the PID of all video data in the same TS stream is set to 45
  • the PID value of the PAT table is 0,
  • the PID of the PMT table is 2
  • the value of the PID of the SDT table is 42.
  • Each TS packet in the TS stream is classified and stored according to the PID to which it belongs, that is, each TS packet is classified according to PID, all video TS packets are stored together, all audio TS packets are stored together, and the PAT table is stored separately.
  • the PMT tables are stored separately, and the SDT tables are stored separately, that is, the TS packets of the same PID are stored in the same location for easy reading.
  • the slicing module 403 is configured to slice the transport stream into a plurality of transport stream fragments in a form of writing the transport stream packet into the transport stream fragment according to the preset slice duration and the media stream property of the transport stream.
  • the preset slice length can be preset by the user, and the general slice length should not be too long. Otherwise, it is difficult to ensure the smoothness of the play on the terminal for playing the program, and it is not too short, otherwise the complexity of the process of reorganizing the slice is increased. Waste processing time.
  • the preset slice duration can be 10 seconds.
  • the media stream property refers to whether the media stream is an audio stream or a video stream.
  • the process of segmentation in this embodiment is related not only to the preset duration slice but also to the media stream nature of the TS stream.
  • the classification storage module 402 further includes:
  • the first determining module 4021 is configured to determine whether there is an initial character in the header of the received current transport stream packet
  • the packet is a description packet, it indicates that the description information is inserted here, and the description information may be updated or may be duplicated if the packet is The PES media package indicates that a new media frame has been received.
  • the first storage sub-module 4022 is configured to: if the result of the first judgment module 4021 determining that the start packet is included in the header of the current transport stream packet, clearing the stored transport having the same packet identification information as the current transport stream packet Streaming the packet and storing the current transport stream packet;
  • All TS packets stored with the same PID as the current TS packet are emptied, and the current TS packet is stored, generally stored in the emptied location of the TS packet having the same PID, or may be stored in another location.
  • the second storage sub-module 4023 if the result of the first judgment module 4021 determines that the start symbol is not included in the header of the current transport stream packet, storing the current transport stream packet and the transport stream packet having the same packet identification information in the The same location.
  • the currently received TS packet is a TS packet of a PAT table, and its PID is 0. If the header of the TS packet includes an initial character, which is a start packet, all TSs stored before the PID are cleared. The packet is also stored in the location where the TS packet with the PID of 0 is previously stored, or stored in another location. If the start of the TS packet does not contain the start character, not the start packet, the TS packet is stored in the same location as the other TS packets with the PID ID of 0.
  • the slicing module 403 further includes:
  • the second determining module 4031 is configured to: if the video stream is included in the transport stream, determine whether the current media frame is a video key frame every time the preset slice duration is reached;
  • the writing module 4032 is configured to: if the second determining module 4031 determines that the current media frame is not a video key frame, write the transport stream packet corresponding to the current media frame into the current transport stream fragment.
  • the sculpt module 403 is further configured to: if the second judging module 4031 determines that the current media frame is a video key frame, segment a new transport stream segment;
  • the writing module 4032 is further configured to write a transport stream packet corresponding to the description information related to the new transport stream fragment, write the beginning of the new transport stream fragment according to an intrinsic association relationship, and write the current media frame The corresponding transport stream packet is written to the new transport stream fragment.
  • the slicing module 403 is further configured to perform segmentation on the transport stream according to the preset slice duration according to if the transport stream only includes the audio stream.
  • the writing module 4032 is further configured to write the transport stream packet corresponding to the latest description information in the transport stream to the beginning of the split transport stream fragment.
  • the original data corresponding to the TS stream obtained by demultiplexing the TS stream includes a media frame
  • the difference between the audio type media frame and the video type media frame is that a special type of frame in the video frame is called a video key.
  • the encoding of the video frame after the video key frame is only referred to the video key frame, and is independent of the encoding of the video frame before the video key frame, and does not refer to the encoding of other media frames. Therefore, in this embodiment, the video key frame is used as the video key frame.
  • the starting frame of a TS fragment so that the starting frame of each TS fragment is independently decoded, can be played independently, and any TS fragment is received at the playing end, and can be played immediately after decoding.
  • the TS stream contains a video stream, it is determined whether the current media frame at this time is a video key frame every time the preset slice duration is reached, and more specifically, if the video stream is H.264, H.265
  • the standard encoding can determine whether the current media frame is an IDR frame. If it is not a video key frame (or a standard encoded IDR frame such as H.264 or H.265), the TS fragmentation will only be based on the preset slice duration. Therefore, when a preset slice duration has been reached, the TS packet corresponding to the current media frame is written into the current TS slice.
  • the description information includes: a program association table (PAT, Program Association) Table), Program Map Table (PMT), and Service Description Table (SDT, Service Description) Table) and other tables, as well as Entitlement Management Message (ECM), authorization control information (EMM, Entitlement) Control Message) and other information.
  • the ECM is dedicated conditional access information containing securely encrypted user authorization information.
  • the EMM is dedicated conditional access information, including control information for descrambling.
  • the intrinsic relationship between them refers to the content and nature of another description information according to the content and nature of a description information. There is a relationship between the two. For example, the PID of the PMT table is in the PAT table.
  • the TS packet corresponding to the PAT table is to be written before the TS packet corresponding to the PMT.
  • the PID of the ECM is specified in the PMT table.
  • the TS packet corresponding to the PMT table is to be written before the TS packet corresponding to the ECM.
  • the PID of the EMM is specified in the CAT table. In one slice, the TS packet corresponding to the CAT table is before the TS packet corresponding to the EMM.
  • each TS slice thus divided is independently decoded and can be played independently. And, as long as the description information is received, the TS slice is written immediately. Then, any TS fragment received on the playback end can be played immediately after decoding.
  • the TS stream can be split according to the preset duration, and the TS packet is classified into the TS fragment to form the TS.
  • the flow cut is divided into multiple TS fragments.
  • the transport stream is sliced into a plurality of TS fragments in the form of writing TS packets into TS fragments, that is, in the splitting.
  • each TS packet having a different PID is classified into each TS fragment, and the category here is a classification of data types formed by different PIDs.
  • the TS packets can be classified and stored according to different PIDs, that is, all video class TS packets of the same PID are stored together, the same PID all audio class TS packets are stored together, the PAT table is stored separately, and the PMT table is separately stored.
  • the TS packet corresponding to the latest description information in the TS stream may be written into the beginning of the segmented new TS fragment. Preventing the player from playing the TS clip after the splitting is performed independently cannot be played because of the lack of corresponding description information.
  • the plurality of TS fragments after the splitting are to meet the format requirements of the subsequent data transmission, so that the plurality of TS fragments can be correctly decoded on the playing end and the program is successfully played.
  • the transport stream slicing apparatus classifies and stores each TS packet according to different PIDs of TS packets in the transport stream, and according to the preset slice duration and the transport stream.
  • the media stream property is such that each TS packet is written into the sliced TS slice according to the above classification, and the transport stream is sliced to protect the information of the transport stream from being lost, and the information of the original transport stream is protected. Lost, so as to ensure correct decoding during playback, improve the efficiency of media data playback.
  • the TS packet corresponding to the latest description information in the TS stream is written into the beginning of the segmented new TS fragment, so that the playback end can independently decode and play each TS fragment, so that the received data can be played in real time. No need to wait for buffering.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the modules is only a logical function division.
  • there may be another division manner for example, multiple modules or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or module, and may be electrical, mechanical or otherwise.
  • the modules described as separate components may or may not be physically separated.
  • the components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed to multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional module in each embodiment of the present invention may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
  • the above integrated modules can be implemented in the form of hardware or in the form of software functional modules.
  • the integrated modules if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
  • a number of instructions are included to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read only memory (ROM, Read-Only) Memory, random access memory (RAM), disk or optical disk, and other media that can store program code.

Landscapes

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

Abstract

本发明公开了一种传送流切片方法及装置,该方法包括:接收传送流,并解复用该传送流以获取其中的目标原始数据,该目标原始数据中包含传送流包的包识别信息,将该传送流中的传送流包按照各自所属的包识别信息进行分类存储,按照预置切片时长以及该传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将该传送流切分为多个传送流分片。本发明通过将包识别信息不同的传送流包分类存储,并分类写入切分后的传送流分片中,保护了原传送流信息不丢失,从而保证播放时正确解码各类信息,提高媒体数据播放效率。

Description

一种传送流切片方法及装置 技术领域
本发明属于通信技术领域,尤其涉及一种传送流切片方法及装置。
背景技术
传送流(TS,Transport Stream)是MPEG-2标准的一种码流,TS流由一道或多道节目(program)组成,每道节目由一个或多个原始流和一些其他流复合在一起,包括视频流、音频流、节目说明信息流(PSI,Program Specific Information)或业务信息(SI,Service Information) 和其他数据包,主要应用于实时传送的节目,比如实时广播的电视节目。流媒体直播协议中的HLS(Http Live Streaming)协议在服务器端将直播数据流存储为连续的、很短时长的TS流文件,而客户端则不断的下载并播放这些TS流文件,而服务器端总是会将最新的直播数据生成新的TS流文件,则客户端只须按顺序播放从服务器获取到的TS流文件就能观看直播。
现有技术中,为了实现基于HLS协议的流媒体播放,将TS流切成很多小片时,先解复用该TS流得到原始流数据,然后将原始流数据中的媒体帧重新复用到新切成的小片中,此种技术不适用于被加扰的或者携带其他信息的TS流。具体地,当TS流加扰时,是对TS流中的部分TS包的负载加扰,而一个媒体帧,即分组的原始流(PES,Packetized Elementary Streams)包,通常会被封装成很多个TS包,这些TS包有些加扰了,有些未加扰,而某些情况下在对TS流进行切片时不具备解扰条件或者不允许解扰,如果对解复用出来的媒体帧重新封装TS包,则很难准确重现原来的加扰情况,从而导致在播放端由于解码错误而无法播放流媒体,降低播放效率。另一方面,TS流中也可能带有某些其他信息,这些信息在切片时不方便解析或者难做适当处理,但又需要在分片中予以保留。现有技术的切片方式会造成此类信息的丢失。
技术问题
本发明提供一种传送流切片方法及装置,通过将PID不同的TS包分类存储,并分类写入TS分片中,保护了原传送流的信息不丢失,从而保证播放时正确解码各类信息,提高媒体数据播放效率。
技术解决方案
本发明提供一种传送流切片方法,包括:
接收传送流,并解复用所述传送流以获取目标原始数据,所述目标原始数据中包含传送流包的包识别信息;将所述传送流中的传送流包按照所属的包识别信息进行分类存储;按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片。
本发明提供一种传送流切片装置,包括:
获取模块,用于接收传送流,并解复用所述传送流以获取目标原始数据,所述目标原始数据中包含传送流包的包识别信息;分类存储模块,用于将所述传送流中的传送流包按照所属的包识别信息进行分类存储;切片模块,用于按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片。
有益效果
从上述本发明实施例可知,本发明根据传送流中TS包的不同PID,将各TS包分类存储,并按照预置切片时长以及该传送流的媒体流性质,以将各TS包按照上述分类写入切分后TS分片中的形式,将该传送流进行切片,保护了该传送流的信息不丢失,保护了该传送流的信息不丢失,从而保证播放时正确解码,提高媒体数据播放效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明第一实施例提供的传送流切片方法的实现流程示意图;
图2是本发明第二实施例提供的传送流切片方法的实现流程示意图;
图3是本发明第三实施例提供的传送流切片装置的结构示意图;
图4是本发明第四实施例提供的传送流切片装置的结构示意图。
本发明的实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1为本发明第一实施例提供的传送流切片方法的实现流程示意图,该传送流切片方法可应用于服务器,也可应用于包括机顶盒设备的终端设备。该方法主要包括以下步骤S101至步骤S103:
S101、接收传送流,并解复用该传送流以获取该目标原始数据,该目标原始数据中包含传送流包的包识别信息;
TS流由各TS包组成。TS包分为包头、自适应区和包数据等部分。自适应区和包数据为有用信息空间,用于传送已编码的视音频数据流以及描述信息。
TS包的包头由同步字节、传输误码指示信息、有效负载单元起始信息、传输优先级标志、包识别(PID,Packet Identification)信息、传输加扰控制信息、自适应区控制信息和包递增计数器8个部分组成。其中,可用同步字节位串的自动相关特性,检测TS包的包限制,建立包同步;传输误码指示信息,是指不能消除误码时,采用误码校正解码器可表示1bit 的误码,但无法校正;有效负载单元起始信息,表示该TS包是否存在确定的起始信息;传输优先级标志,是给TS包分配优先权;PID的值是有些是固定的,有些由用户指定的,解码器根据PID将TS流中不同数据来源的TS包区别出来,以重建原来的数据流;传输加扰控制信息,用于指示TS包的内容是否加扰,但包头和自适应区永远不加扰;自适应区控制信息,用2 bit表示有否自适应区,如用(01)表示有有用信息无自适应区,用(10)表示无有用信息有自适应区,用(11)表示有有用信息有自适应区;包递增计数器可对TS包传送顺序计数,接收端设备可根据包递增计数器的计数结果判断是否有TS包丢失或TS包传送顺序是否错误。显然,包头对TS包具有同步、识别、检错及加密等功能。
TS包的包头结构如下表所示:
1---- sync_byte---8bits----同步字节
2---- transport_error_indicator----1bit----传输误码指示信息
3---- payload_unit_start_indicator----1bit----有效负载单元起始信息
4---- transport_priority----1bit----传输优先级标志
5---- PID----13bits----包识别信息
6---- transport_scrambling_control----2bits----传输加扰控制信息
7---- adaptation_field_control----2bits----自适应区控制信息
8---- continuity_counter----4bits----包递增计数器
在一路节目传输过程中,该节目的视频、音频和其他辅助数据经过数字化后,通过压缩层完成信源压缩编码,分别形成视频、音频和其他辅助数据的原始流(ES, Elementary Streams) 。继而通过系统层将以上各ES分别加包头打包为PES。为了进行多路数字节目流的复用和有效传输,将PES包作为负载数据分别加入TS包中,按一定比率复用后形成一路节目的TS流。若解复用TS流,则可以获取到其中的部分原TS流的数据,其中包括各种对TS包、TS流、PES、ES等组成、结构、顺序的描述信息,描述信息一般都是以各种表的形式存在。例如,节目关联表(PAT,Program Association Table)、节目映射表(PMT,Program Map Table)及业务描述表(SDT,Service Description Table)等,其中,PAT中列出了TS流中存在的节目流,指定了TS流中每个节目对应的PMT所在分组的PID,PMT中包含了属于同一节目的视频、音频和数据原始流的PID,解多路复用器可根据PMT找到一路节目对应的每个原始流的PID,再根据原始流PID,去获取原始流。SDT包含描述系统中业务的数据,例如业务名称、业务提供者等信息。
本实施例中,收到TS流,并解复用该TS流以获取目标原始数据,其中目标原始数据是指在对该TS流进行切片时所需要的该TS流的相关信息,该目标原始数据中须包含各TS包的PID信息。
S102、将该传送流中的传送流包按照所属的包识别信息进行分类存储;
PID是识别TS包的重要参数,用来识别TS包所承载的数据的类型。在TS流生成时,视频、音频及数据等每一类业务的原始流均被赋予一个不同的PID,解码器借助于PID判断一个TS包属于哪一类业务。PID是TS包区别于其他TS包业务类型的唯一识别符,通过读取每个TS包的包头中的PID值,可确定此TS包中承载的数据的业务类型。
在一个TS流中所有相同类型的数据都具有相同的PID值,例如,视频数据被设置为PID=45,那么在同一个TS流中的所有视频数据的PID都被设置为45,用于区别其他数据的类型。又例如,PAT表的PID的值为0,PMT表的PID的值为2,SDT表的PID的值为42。
将该TS流中的各TS包按照所属的PID进行分类存储,即,将各TS包按照PID分类,所有视频类TS包存储在一起,所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储,即相同PID的TS包存储在同一个位置,便于读取。
S103、按照预置切片时长以及传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将该传送流切分为多个传送流分片。
该预置切片时长可由用户自定义。
媒体流性质是指TS流中媒体流是音频流还是视频流,本实施例中切分的过程不仅与预置时长切片有关,也与该TS流的媒体流性质有关。
本实施例中,按照预置切片时长以及传送流中的媒体流性质,以将各TS包分类写入TS分片的形式将该传送流切分为多个TS分片,即,在切分为多个TS分片时,将PID不同的各TS包分类写入各TS分片,此处的类别便是因不同PID形成的数据类型的分类。根据前文所述,TS包可因PID不同而分类存储,即,同一个PID的所有视频类TS包存储在一起,同一个PID所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储等。
需要说明的是,切分后的多个TS分片要符合后续数据传输的格式要求,使得最终该多个TS分片可以在播放端实现正确解码,成功播放节目。
本实施例提供的传送流切片方法,根据传送流中TS包的不同PID,将各TS包分类存储,并按照预置切片时长以及该传送流的媒体流性质,以将各TS包按照上述分类写入切分后TS分片中的形式,将该传送流进行切片,保护了该传送流的信息不丢失,从而保证播放时正确解码,提高媒体数据播放效率。
请参阅图2,图2为本发明第二实施例提供的传送流切片方法的实现流程示意图,该传送流切片方法可应用于服务器,也可应用于包括机顶盒设备的终端设备。该方法主要包括以下步骤S201至步骤S205:
S201、接收传送流,并解复用该传送流以获取目标原始数据,该目标原始数据中包含传送流包的包识别信息;
接收传送流,并解复用该传送流以获取该目标原始数据,其中目标原始数据是指在对该TS流进行切片时所需要的该TS流的相关信息,该目标原始数据中须包含各TS包的PID信息。
需要说明的是,该TS流由多个TS包组成。其中,TS包的包头由同步字节、传输误码指示信息、有效负载单元起始信息、传输优先级标志、PID、传输加扰控制信息、自适应区控制信息和包递增计数器8个部分组成。
该TS流可包括媒体帧、数据帧等,其中媒体帧包括音频帧、视频帧等,数据帧中包括各种对TS包、TS流、PES、ES等组成、结构、顺序的描述信息。
S202、判断接收的当前传送流包的包头中是否有起始符;
若当前TS包的包头中有起始符,那么如果该包是描述信息包,表示此处插入了此项描述信息,此项描述信息可能发生了内容更新也可能是内容重复,如果该包是PES媒体包,则表示收到了新的媒体帧。
若有起始符,则执行步骤203;若没有起始符,则执行步骤204。
S203、清空存储的与该当前传送流包具有相同包识别信息的传送流包,并存储该当前传送流包;
清空之前存储的与该当前TS包具有相同PID的所有TS包,将该当前TS包存储,一般是存储在清空的具有相同PID的TS包的位置,也可以存储在其他位置。
PID用于识别TS包所承载的数据的类型,数据的类型可分为视频数据、音频数据以及业务数据等其他数据。在TS流生成时,视频、音频及数据等每一类业务的原始流均被赋予一个不同的PID,解码器借助于PID判断一个TS包属于哪一类业务。PID是TS包区别于其他TS包业务类型的唯一识别符,通过读取每个TS包的包头中的PID值,可确定此TS包中承载的数据的业务类型。在一个TS流中所有相同类型的数据都具有相同的PID值。
S204、将该当前传送流包与具有相同包识别信息的传送流包存储在相同位置;
将该TS流中的各TS包按照所属的PID进行分类存储,即,将各TS包按照PID分类,所有视频类TS包存储在一起,所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储,即相同PID的TS包存储在同一个位置,便于读取。当前TS包的包头中没有起始符,不是起始包,则按照分类的原则,与其PID相同的TS包存储在一起。
一个实例,当前接收到的TS包是一个PAT表的TS包,其PID为0,若此TS包的包头中包含起始符,为起始包,则清空之前存储的所有PID为0的TS包,将此TS包也存储在之前存储PID为0的TS包的位置,或者存储在其他位置。若此TS包的包头中不包含起始符,不是起始包,则将此TS包与其他PID为0的TS包的位置归类存储在同一个位置。
S205、按照预置切片时长以及传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将该传送流切分为多个传送流分片。
该预置切片时长可由用户自定义后预先设置,一般TS流切片时长不宜过长,否则在播放节目的终端上难以保证播放的流畅度,也不宜过短,否则增加切分TS流切片的处理过程的复杂度,浪费处理时间。例如,该预置切片时长可以为10秒。
媒体流性质是指TS流中媒体流是音频流还是视频流,本实施例中切分的过程不仅与预置时长切片有关,也与该TS的媒体流性质有关。
具体地,TS流中的视频流由视频帧构成,在视频帧中有一类比较特殊的帧称为视频关键帧,视频关键帧之后的视频帧的编码只参考该视频关键帧,与该视频关键帧之前的视频帧的编码无关,不参考其他媒体帧的编码,因此,本实施例中将视频关键帧作为一个TS分片的切分依据。
进一步地,若TS流中包含视频流,则每达到该预置切片时长时,判断此时的当前媒体帧是否为视频关键帧,更具体地,若视频流是H.264、H.265等标准编码,可判断当前媒体帧是否为IDR帧,如果不是视频关键帧(或H.264、H.265等标准编码的IDR帧),TS分片的划分将只以该预置切片时长为依据,当已经达到一个预置切片时长,便将该当前媒体帧对应的TS包写入当前TS分片即可。如果是视频关键帧(或H.264、H.265等标准编码的IDR帧),则开始切分一个新的TS分片,将与该新的TS分片相关的描述信息对应的TS包,按照它们之间内在的关联关系决定的次序写入该新的TS分片的开头,以及,将该当前媒体帧对应的TS包写入该新的传送流分片。即,在该新的TS分片中,与该新的TS分片相关的描述信息对应的TS包写在前,将该当前媒体帧对应的TS包写在该描述信息对应的TS包之后。
其中,描述信息包括:节目关联表(PAT,Program Association Table)、节目映射表(PMT,Program Map Table)及业务描述表(SDT,Service Description Table)等表,以及授权管理信息(ECM,Entitlement Management Message)、授权控制信息(EMM,Entitlement Control Message)等信息。ECM是专用的条件接收信息,包含有经过安全加密的用户授权信息,EMM是专用的条件接收信息,包含用来解扰的控制信息。它们之间内在的关联关系,是指根据一种描述信息的内容和性质可分析得出另一种描述信息的内容和性质,二者有先后关系,例如,PMT表的PID是在PAT表里指定的,则在一个TS分片中,PAT表对应的TS包要写在PMT对应的TS包之前。ECM的PID是在PMT表里指定的,则在一个TS分片中,PMT表对应的TS包要写在ECM对应的TS包之前。EMM的PID是在CAT表里指定的,则在一个分片里,CAT表对应的TS包是在EMM对应的TS包之前的。
这样每个TS分片的起始帧都是独立解码,可以独立播放。并且,只要接收到描述信息,则马上写入TS分片。那么在播放端接收到任何一个TS分片,解码后都可以实现立即播放。
进一步地,若原TS流只含有音频流,则不存在视频关键帧的问题,因此,可按照该预置时长,执行对TS流进行切分,以将各TS包分类写入TS分片的形式将该TS流切分为多个TS分片。
本实施例中,按照预置切片时长以及传送流中媒体流性质,以将各TS包分类写入TS分片的形式将该传送流切分为多个TS分片,即,在切分为多个TS分片时,将PID不同的各TS包分类写入各TS分片,此处的类别便是因不同PID形成的数据类型的分类。根据前文所述,TS包可因PID不同而分类存储,即,同一个PID的所有视频类TS包存储在一起,同一个PID所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储等。先根据预置切片时长以及传送流的媒体流性质,确定各TS分片的划分方式,再将分类存储在一起的TS包按照在原TS流中的顺序写入各TS分片。通过这种方式将TS包分类按次序写入TS分片,没有丢失原TS流中的信息,因此当TS流加入了加扰信息或其他信息,也会被完整、正确的保留下来,保护了原传送流的信息不丢失,在后续解码时可以正确解码,不影响媒体流的播放。
需要说明的是,为了使得各TS分片可正确、独立被解码播放,可将该TS流中的最新描述信息(即PSI或SI信息)对应的TS包写入切分后的新的TS分片的开头。防止播放器在独立播放切分后的TS分片时,因为缺乏相应描述信息而无法播放。
需要说明的是,切分后的多个TS分片要符合后续数据传输的格式要求,使得最终该多个TS分片可以在播放端实现正确解码,成功播放节目。
本实施例提供的传送流切片方法,根据传送流中TS包的不同PID,将各TS包分类存储,并按照预置切片时长以及该传送流的媒体流性质,以将各TS包按照上述分类写入切分后TS分片中的形式,将该传送流进行切片,保护了该传送流的信息不丢失,保护了该传送流的信息不丢失,从而保证播放时正确解码,提高媒体数据播放效率。并且将该TS流中的最新描述信息对应的TS包写入切分后的新的TS分片的开头,使得播放端可以独立解码播放每一个TS分片,从而可以实时播放接收到的数据,而不需要缓冲等待。
请参阅图3,图3是本发明第三实施例提供的传送流切片装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图3示例的传送流切片装置可以是前述实施例提供的传送流切片方法的执行主体,主要包括:获取模块301、分类存储模块302以及切片模块303。
其中,获取模块301,用于接收传送流,并解复用该传送流以获取目标原始数据,该目标原始数据中包含传送流包的包识别信息;
在一路节目传输过程中,该节目的视频、音频和其他辅助数据经过数字化后,通过压缩层完成信源压缩编码,分别形成视频、音频和其他辅助数据的ES,继而通过系统层将以上各ES分别加包头打包为PES。为了进行多路数字节目流的复用和有效传输,将PES包作为负载数据分别加入TS包中,按一定比率复用后形成一路节目的TS流。若解复用TS流,则可以获取到其中的部分原TS流的数据,其中包括各种对TS包、TS流、PES、ES等组成、结构、顺序的描述信息,描述信息一般都是以各种表的形式存在,例如,PAT、PMT、SDT等表。描述信息还可以是ECM、EMM等信息。
TS包分为包头、自适应区和包数据等部分。其中,包头由同步字节、传输误码指示信息、有效负载单元起始信息、传输优先级标志、PID、传输加扰控制信息、自适应区控制信息和包递增计数器8个部分组成。
因此,通过对接收到的TS流进行解复用,可以得到该TS流对应的目标原始数据,其中目标原始数据是指在对该TS流进行切片时所需要的该TS流的相关信息,该目标原始数据中包含各TS包的PID。
分类存储模块302,用于将该传送流中的传送流包按照所属的包识别信息进行分类存储;
PID是识别TS包的重要参数,用来识别TS包所承载的数据的类型。在TS流生成时,视频、音频及数据等每一类业务的原始流均被赋予一个不同的PID,解码器借助于PID判断一个TS包属于哪一类业务。PID是TS包区别于其他TS包业务类型的唯一识别符,通过读取每个TS包的包头中的PID值,可确定此TS包中承载的数据的业务类型。
在一个TS流中所有相同类型的数据都具有相同的PID值,例如,视频数据被设置为PID=45,那么在同一个TS流中的所有视频数据的PID都被设置为45,用于区别其他数据的类型。又例如,PAT表的PID的值为0,PMT表的PID的值为2,SDT表的PID的值为42。
将该TS流中的各TS包按照所属的PID进行分类存储,即,将各TS包按照PID分类,所有视频类TS包存储在一起,所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储,即相同PID的TS包存储在同一个位置,便于读取。
切片模块303,用于按照预置切片时长以及该传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将该传送流切分为多个传送流分片。
该预置切片时长可由用户自定义。媒体流性质是指TS流中媒体流是音频流还是视频流,本实施例中切分的过程不仅与预置时长切片有关,也与该TS流的媒体流性质有关。
具体地,按照预置切片时长以及传送流中的媒体流性质,以将各TS包分类写入TS分片的形式将该传送流切分为多个TS分片,即,在切分为多个TS分片时,将PID不同的各TS包分类写入各TS分片,此处的类别便是因不同PID形成的数据类型的分类。根据前文所述,TS包可因PID不同而分类存储,即,同一个PID的所有视频类TS包存储在一起,同一个PID所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储等。
需要说明的是,切分后的多个TS分片要符合后续数据传输的格式要求,使得最终该多个TS分片可以在播放端实现正确解码,成功播放节目。
需要说明的是,以上图3示例的传送流切片装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将该访问装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成。本说明书提供的各个实施例都可应用上述描述原则。未尽细节请参见前述图1及图2所示实施例的描述。
从上述图3示例的传送流切片装置可知,本实施例提供的传送流切片装置,根据传送流中TS包的不同PID,将各TS包分类存储,并按照预置切片时长以及该传送流的媒体流性质,以将各TS包按照上述分类写入切分后TS分片中的形式,将该传送流进行切片,保护了原传送流的信息不丢失,从而保证播放时正确解码,提高媒体数据播放效率。
请参阅图4,图4是本发明第四实施例提供的传送流切片装置的结构示意图,为了便于说明,仅示出了与本发明实施例相关的部分。图4示例的传送流切片装置可以是前述实施例提供的传送流切片方法的执行主体。在图3示例的传送流切片装置的基础上,图4示例的传送流切片装置,主要包括:获取模块401、分类存储模块402、第一判断模块4021、第一存储子模块4022、第二存储子模块4023、切片模块403、第二判断模块4031以及写入模块4032。
其中,获取模块401,用于接收传送流,并解复用该传送流以获取目标原始数据,该目标原始数据中包含传送流包的包识别信息;
该目标原始数据由多个TS包组成。其中,TS包的包头由同步字节、传输误码指示信息、有效负载单元起始信息、传输优先级标志、PID、传输加扰控制信息、自适应区控制信息和包递增计数器8个部分组成。
该TS流中可包括各种对TS包、TS流、PES、ES等组成、结构、顺序的描述信息。解复用接收到的TS流后可以得到该描述信息。
分类存储模块402,用于将该传送流中的传送流包按照所属的包识别信息进行分类存储;
PID用于识别TS包所承载的数据的类型,数据的类型可分为视频数据、音频数据以及业务数据等其他数据。在TS流生成时,视频、音频及数据等每一类业务的原始流均被赋予一个不同的PID,解码器借助于PID判断一个TS包属于哪一类业务。PID是TS包区别于其他TS包业务类型的唯一识别符,通过读取每个TS包的包头中的PID值,可确定此TS包中承载的数据的业务类型。
在一个TS流中所有相同类型的数据都具有相同的PID值,例如,在同一个TS流中的所有视频数据的PID都被设置为45,PAT表的PID的值为0,PMT表的PID的值为2,SDT表的PID的值为42。
将该TS流中的各TS包按照所属的PID进行分类存储,即,将各TS包按照PID分类,所有视频类TS包存储在一起,所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储,即相同PID的TS包存储在同一个位置,便于读取。
切片模块403,用于按照预置切片时长以及该传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将该传送流切分为多个传送流分片。
该预置切片时长可由用户自定义后预先设置,一般切片时长不宜过长,否则在播放节目的终端上难以保证播放的流畅度,也不宜过短,否则增加重组切片的处理过程的复杂度,浪费处理时间。例如,该预置切片时长可以为10秒。
媒体流性质是指媒体流是音频流还是视频流,本实施例中切分的过程不仅与预置时长切片有关,也与该TS流的媒体流性质有关。
分类存储模块402进一步包括:
第一判断模块4021,用于判断接收的当前传送流包的包头中是否有起始符;
若当前TS包的包头中有起始符,那么如果该包是描述信息包,表示此处插入了此项描述信息,此项描述信息可能发生了内容更新也可能是内容重复,如果该包是PES媒体包,则表示收到了新的媒体帧。
第一存储子模块4022,用于若第一判断模块4021判断的结果是该当前传送流包的包头中有该起始符,则清空存储的与该当前传送流包具有相同包识别信息的传送流包,并存储该当前传送流包;
清空之前存储的与该当前TS包具有相同PID的所有TS包,将该当前TS包存储,一般是存储在清空的具有相同PID的TS包的位置,也可以存储在其他位置。
第二存储子模块4023、若第一判断模块4021判断的结果是该当前传送流包的包头中没有该起始符,则将该当前传送流包与具有相同包识别信息的传送流包存储在相同位置。
当前TS包的包头中没有起始符,不是起始包,则按照分类的原则,与其PID相同的TS包存储在一起。
一个实例,当前接收到的TS包是一个PAT表的TS包,其PID为0,若此TS包的包头中包含起始符,为起始包,则清空之前存储的所有PID为0的TS包,将此TS包也存储在之前存储PID为0的TS包的位置,或者存储在其他位置。若此TS包的包头中不包含起始符,不是起始包,则将此TS包与其他PID为0的TS包的位置归类存储在同一个位置。
切片模块403进一步包括:
第二判断模块4031,用于若该传送流中包含视频流,则每达到该预置切片时长时,判断当前媒体帧是否为视频关键帧;
写入模块4032,用于若第二判断模块4031判断当前媒体帧不是视频关键帧,则将该当前媒体帧对应的传送流包写入当前传送流分片。
进一步地,切片模块403,还用于若第二判断模块4031判断当前媒体帧是视频关键帧,则切分一个新的传送流分片;
写入模块4032,还用于将与该新的传送流分片相关的描述信息对应的传送流包,按照内在的关联关系写入该新的传送流分片的开头,以及将该当前媒体帧对应的传送流包写入该新的传送流分片。
更进一步地,切片模块403,还用于若该传送流中只包含音频流,则按照该预置切片时长,执行对该传送流进行切分。
写入模块4032,还用于将该传送流中的最新描述信息对应的传送流包写入切分后的传送流分片的开头。
具体地,通过解复用TS流获取到该TS流对应的原始数据中包括媒体帧,音频类媒体帧和视频类媒体帧的区别在于,在视频帧中有一类比较特殊的帧称为视频关键帧,视频关键帧之后的视频帧的编码只参考该视频关键帧,与该视频关键帧之前的视频帧的编码无关,不参考其他媒体帧的编码,因此,本实施例中将视频关键帧作为一个TS分片的起始帧,这样每个TS分片的起始帧都是独立解码,可以独立播放,在播放端接收到任何一个TS分片,解码后都可以实现立即播放。
基于上述原理,若TS流中包含视频流,则每达到该预置切片时长时,判断此时的当前媒体帧是否为视频关键帧,更具体地,若视频流是H.264、H.265等标准编码,可判断当前媒体帧是否为IDR帧,如果不是视频关键帧(或H.264、H.265等标准编码的IDR帧),TS分片的划分将只以该预置切片时长为依据,当已经达到一个预置切片时长,便将该当前媒体帧对应的TS包写入当前TS分片即可。如果是视频关键帧(或H.264、H.265等标准编码的IDR帧),则开始切分一个新的TS分片,将与该新的TS分片相关的描述信息对应的TS包,按照它们之间内在的关联关系决定的次序写入该新的TS分片的开头,以及,将该当前媒体帧对应的TS包写入该新的传送流分片。即,在该新的TS分片中,与该新的TS分片相关的描述信息对应的TS包写在前,将该当前媒体帧对应的TS包写在该描述信息对应的TS包之后。
其中,描述信息包括:节目关联表(PAT,Program Association Table)、节目映射表(PMT,Program Map Table)及业务描述表(SDT,Service Description Table)等表,以及授权管理信息(ECM,Entitlement Management Message)、授权控制信息(EMM,Entitlement Control Message)等信息。ECM是专用的条件接收信息,包含有经过安全加密的用户授权信息,EMM是专用的条件接收信息,包含用来解扰的控制信息。它们之间内在的关联关系,是指根据一种描述信息的内容和性质可分析得出另一种描述信息的内容和性质,二者有先后关系,例如,PMT表的PID是在PAT表里指定的,则在一个TS分片中,PAT表对应的TS包要写在PMT对应的TS包之前。ECM的PID是在PMT表里指定的,则在一个TS分片中,PMT表对应的TS包要写在ECM对应的TS包之前。EMM的PID是在CAT表里指定的,则在一个分片里,CAT表对应的TS包是在EMM对应的TS包之前的。
这样切分后的每个TS分片的起始帧都是独立解码,可以独立播放。并且,只要接收到描述信息,则马上写入TS分片。那么在播放端接收到任何一个TS分片,解码后都可以实现立即播放。
若原TS流只含有音频流,则不存在视频关键帧的问题,因此,可按照该预置时长,执行对TS流进行切分,以将各TS包分类写入TS分片的形式将该TS流切分为多个TS分片。
本实施例中,按照预置切片时长以及传送流中媒体流性质,以将各TS包分类写入TS分片的形式将该传送流切分为多个TS分片,即,在切分为多个TS分片时,将PID不同的各TS包分类写入各TS分片,此处的类别便是因不同PID形成的数据类型的分类。根据前文所述,TS包可因PID不同而分类存储,即,同一个PID的所有视频类TS包存储在一起,同一个PID所有音频类TS包存储在一起,PAT表单独存储,PMT表单独存储,SDT表单独存储等。先根据预置切片时长以及传送流的媒体流性质,确定各TS分片的划分方式,再将分类存储在一起的TS包按照在原TS流中的顺序写入各TS分片。通过这种方式将TS包分类按次序写入TS分片,没有丢失原TS流中的信息,因此当TS流加入了加扰信息或其他信息,也会被完整、正确的保留下来,在后续解码时可以正确解码,不影响媒体流的播放。
需要说明的是,为了使得各TS分片可正确、独立被解码播放,可将该TS流中的最新描述信息对应的TS包写入切分后的新TS分片的开头。防止播放器在独立播放切分后的TS分片时,因为缺乏相应描述信息而无法播放。
需要说明的是,切分后的多个TS分片要符合后续数据传输的格式要求,使得最终该多个TS分片可以在播放端实现正确解码,成功播放节目。
从上述附图4示例的传送流切片装置可知,本实施例提供的传送流切片装置,根据传送流中TS包的不同PID,将各TS包分类存储,并按照预置切片时长以及该传送流的媒体流性质,以将各TS包按照上述分类写入切分后TS分片中的形式,将该传送流进行切片,保护了该传送流的信息不丢失,保护了原传送流的信息不丢失,从而保证播放时正确解码,提高媒体数据播放效率。并且将该TS流中的最新描述信息对应的TS包写入切分后的新的TS分片的开头,使得播放端可以独立解码播放每一个TS分片,从而可以实时播放接收到的数据,而不需要缓冲等待。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的一种传送流切片方法及装置的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (10)

  1. 一种传送流切片方法,其特征在于,所述方法包括:
    接收传送流,并解复用所述传送流以获取目标原始数据,所述目标原始数据中包含传送流包的包识别信息;
    将所述传送流中的传送流包按照所属的包识别信息进行分类存储;
    按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片。
  2. 根据权利要求1所述的方法,其特征在于,所述将所述传送流中的各传送流包按照所属的包识别信息进行分类存储包括:
    判断接收的当前传送流包的包头中是否有起始符;
    若是,则清空存储的与所述当前传送流包具有相同包识别信息的传送流包,并存储所述当前传送流包;
    若否,则将所述当前传送流包与具有相同包识别信息的传送流包存储在相同位置。
  3. 根据权利要求2所述的方法,其特征在于,所述按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片包括:
    若所述传送流中包含视频流,则每达到所述预置切片时长时,判断当前媒体帧是否为视频关键帧;
    若否,则将所述当前媒体帧对应的传送流包写入当前传送流分片,若是,则切分一个新的传送流分片,将与所述新的传送流分片相关的描述信息对应的传送流包,按照内在的关联关系写入所述新的传送流分片的开头,以及将所述当前媒体帧对应的传送流包写入所述新的传送流分片。
  4. 根据权利要求3所述的方法,其特征在于,所述按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片还包括:
    若所述传送流中只包含音频流,则按照所述预置切片时长,执行对所述传送流进行切分。
  5. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    将所述传送流中的最新描述信息对应的传送流包写入切分后的传送流分片的开头。
  6. 一种传送流切片装置,其特征在于,所述装置包括:
    获取模块,用于接收传送流,并解复用所述传送流以获取目标原始数据,所述目标原始数据中包含传送流包的包识别信息;
    分类存储模块,用于将所述传送流中的传送流包按照所属的包识别信息进行分类存储;
    切片模块,用于按照预置切片时长以及所述传送流的媒体流性质,以将传送流包分类写入传送流分片的形式将所述传送流切分为多个传送流分片。
  7. 根据权利要求6所述的装置,其特征在于,所述分类存储模块包括:
    第一判断模块,用于判断接收的当前传送流包的包头中是否有起始符;
    第一存储子模块,用于若所述第一判断模块判断的结果是所述当前传送流包的包头中有所述起始符,则清空存储的与所述当前传送流包具有相同包识别信息的传送流包,并存储所述当前传送流包;
    第二存储子模块,用于若所述第一判断模块判断的结果是所述当前传送流包的包头中没有所述起始符,则将所述当前传送流包与具有相同包识别信息的传送流包存储在相同位置。
  8. 跟据权利要求6或7所述的装置,其特征在于,
    所述切片模块包括:
    第二判断模块,用于若所述传送流中包含视频流,则每达到所述预置切片时长时,判断当前媒体帧是否为视频关键帧;
    写入模块,用于若所述第二判断模块判断当前媒体帧不是视频关键帧,则将所述当前媒体帧对应的传送流包写入当前传送流分片;
    所述切片模块,还用于若所述第二判断模块判断当前媒体帧是视频关键帧,则切分一个新的传送流分片;
    所述写入模块,还用于将与所述新的传送流分片相关的描述信息对应的传送流包,按照内在的关联关系写入所述新的传送流分片的开头,以及将所述当前媒体帧对应的传送流包写入所述新的传送流分片。
  9. 根据权利要求8所述的装置,其特征在于,
    所述切片模块,还用于若所述传送流中只包含音频流,则按照所述预置切片时长,执行对所述传送流进行切分。
  10. 根据权利要求9所述的装置,其特征在于,
    所述写入模块,还用于将所述传送流中的最新描述信息对应的传送流包写入切分后的传送流分片的开头。
PCT/CN2015/088818 2015-09-02 2015-09-02 一种传送流切片方法及装置 WO2017035804A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/088818 WO2017035804A1 (zh) 2015-09-02 2015-09-02 一种传送流切片方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/088818 WO2017035804A1 (zh) 2015-09-02 2015-09-02 一种传送流切片方法及装置

Publications (1)

Publication Number Publication Date
WO2017035804A1 true WO2017035804A1 (zh) 2017-03-09

Family

ID=58186591

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/088818 WO2017035804A1 (zh) 2015-09-02 2015-09-02 一种传送流切片方法及装置

Country Status (1)

Country Link
WO (1) WO2017035804A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363304A (zh) * 2021-12-27 2022-04-15 浪潮通信技术有限公司 Rtp视频流存储、播放方法及装置
CN114554256A (zh) * 2020-11-25 2022-05-27 阿里巴巴集团控股有限公司 媒体流播放、媒体流处理方法、装置、设备和存储介质
CN115086714A (zh) * 2022-06-13 2022-09-20 京东科技信息技术有限公司 数据处理方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060269222A1 (en) * 2005-05-31 2006-11-30 Matsushita Electric Industrial Co., Ltd. Broadcast recording and reproduction apparatus
CN101198016A (zh) * 2007-12-05 2008-06-11 中兴通讯股份有限公司 交互式个人电视媒体交付系统的内容发布和存储方法
CN101848067A (zh) * 2010-06-22 2010-09-29 中兴通讯股份有限公司 一种自适应带宽的数据传输方法及系统
CN103067745A (zh) * 2011-10-24 2013-04-24 北大方正集团有限公司 一种视频数据的切分方法及装置、在线编辑方法及系统
CN104506967A (zh) * 2015-01-05 2015-04-08 百视通网络电视技术发展有限责任公司 Udp直播流到hls直播流的实时转换方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060269222A1 (en) * 2005-05-31 2006-11-30 Matsushita Electric Industrial Co., Ltd. Broadcast recording and reproduction apparatus
CN101198016A (zh) * 2007-12-05 2008-06-11 中兴通讯股份有限公司 交互式个人电视媒体交付系统的内容发布和存储方法
CN101848067A (zh) * 2010-06-22 2010-09-29 中兴通讯股份有限公司 一种自适应带宽的数据传输方法及系统
CN103067745A (zh) * 2011-10-24 2013-04-24 北大方正集团有限公司 一种视频数据的切分方法及装置、在线编辑方法及系统
CN104506967A (zh) * 2015-01-05 2015-04-08 百视通网络电视技术发展有限责任公司 Udp直播流到hls直播流的实时转换方法及系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114554256A (zh) * 2020-11-25 2022-05-27 阿里巴巴集团控股有限公司 媒体流播放、媒体流处理方法、装置、设备和存储介质
CN114363304A (zh) * 2021-12-27 2022-04-15 浪潮通信技术有限公司 Rtp视频流存储、播放方法及装置
CN114363304B (zh) * 2021-12-27 2024-04-19 浪潮通信技术有限公司 Rtp视频流存储、播放方法及装置
CN115086714A (zh) * 2022-06-13 2022-09-20 京东科技信息技术有限公司 数据处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US20060184790A1 (en) Protecting elementary stream content
US20060036551A1 (en) Protecting elementary stream content
WO2013162312A1 (ko) 멀티미디어 전송 시스템을 위한 데이터 송수신 방법 및 장치
EP1709805B1 (en) Conditional access overlay partial encryption using mpeg transport continuity counter
WO2011059274A2 (en) Adaptive streaming method and apparatus
JP6617809B2 (ja) 復号装置、復号方法、および復号用プログラム
WO2015137727A1 (ko) 방송 신호 송/수신 처리 방법 및 장치
WO2017035804A1 (zh) 一种传送流切片方法及装置
WO2012023787A2 (ko) 디지털 수신기 및 디지털 수신기에서의 컨텐트 처리 방법
WO2014058278A1 (en) Apparatus and method for transmitting and receiving packet in a broadcasting and communication system
JP2001086481A (ja) パケット分離装置、ディジタル信号転送システム、暗号化装置、媒体、および情報集合体
US20030167397A1 (en) Transparently embedding non-compliant data in a data stream
EP2814256B1 (en) Method and apparatus for modifying a stream of digital content
KR100840200B1 (ko) H.264 형식의 동영상 파일의 보호를 위한패키징/언패키징 장치 및 그 방법
IL176704A (en) Timeline protection
JP3804099B2 (ja) 映像素材供給装置及び方法、映像素材挿入装置及び方法
CN1862693A (zh) 再现方法
EP3070933A1 (en) File generation method and file generation apparatus
WO2020263025A1 (en) Method and apparatus for playing multimedia streaming data
JP2004260522A (ja) コンテンツ送信装置、コンテンツ送信方法、コンテンツ送信プログラムおよびコンテンツ再生装置、コンテンツ再生方法、コンテンツ再生プログラム
WO2017035802A1 (zh) 一种传输流编码、播放的方法和装置
WO2017047399A1 (ja) 受信装置および方法、送信装置および方法
WO2017065521A1 (ko) 멀티미디어 데이터를 송수신하는 방법 및 장치
JP2002246993A (ja) 情報処理装置および方法、記録媒体、並びにプログラム
AU2004224936A1 (en) Encryption of MPEG Bitstreams

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15902611

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15902611

Country of ref document: EP

Kind code of ref document: A1