WO2012094916A1 - Method for encapsulating and transmitting streaming media packet, and device for processing streaming media - Google Patents

Method for encapsulating and transmitting streaming media packet, and device for processing streaming media Download PDF

Info

Publication number
WO2012094916A1
WO2012094916A1 PCT/CN2011/081273 CN2011081273W WO2012094916A1 WO 2012094916 A1 WO2012094916 A1 WO 2012094916A1 CN 2011081273 W CN2011081273 W CN 2011081273W WO 2012094916 A1 WO2012094916 A1 WO 2012094916A1
Authority
WO
WIPO (PCT)
Prior art keywords
data packet
media
packet
stream
code stream
Prior art date
Application number
PCT/CN2011/081273
Other languages
French (fr)
Chinese (zh)
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 中兴通讯股份有限公司
Publication of WO2012094916A1 publication Critical patent/WO2012094916A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates to the field of multimedia data transmission technologies, and in particular, to a method for packaging and transmitting a streaming media data packet and a streaming media processing device.
  • multimedia transmission technology With the development of wireless 3G, 4G data transmission bandwidth and high-bandwidth access of fixed networks, multimedia transmission technology has been widely used, and streaming media transmission technology for real-time transmission of multimedia content such as audio, video, subtitles or animation should be carried out. Health.
  • the streaming media server packs media content such as audio, video, subtitles or animation into a media stream, and the media stream is continuously transmitted in real time on the network in groups.
  • the client does not have to wait for the media content to be completely downloaded, and only needs to delay for a short time. You can start playing, and the media stream will play while it is playing until the media content is played or the client aborts.
  • Application streaming media technology can significantly reduce media playback latency and reduce client cache requirements.
  • the object of the present invention is to provide a package, a transmission method and a streaming media processing device for streaming media data packets, so as to ensure the efficiency of multimedia transmission and increase the quality of user experience.
  • the present invention provides a method for encapsulating a streaming media data packet, including: each data packet for a media code stream: according to a media type of the data packet, the media code stream is marked The data packet header is written into the data packet header of the data packet; the data packet sequence number is written into the data packet header of the data packet according to the sequence number in the media code stream corresponding to the media stream identifier; and, according to the data packet The total length of the packet format payload length is written to the packet header of the packet.
  • the above packaging method further includes:
  • the clock reference identifier is written to the packet header of the packet according to the media stream encoding time of the packet.
  • the above packaging method further includes:
  • the media stream key information identifier is written into the packet header of the packet.
  • each packet for the media stream :
  • the media stream key information includes one or more of the following information: scalable video coding (SVC) attributes and dependencies, multi-view video coding ( MVC) angle information, and related key information of the video frame;
  • SVC scalable video coding
  • MVC multi-view video coding
  • the media stream key information includes language information of the media stream
  • the media stream key information includes subtitle voice information of the media stream.
  • the relevant key information of the video frame includes related frame information of the video frame and a frame data boundary.
  • the present invention provides a method for streaming media transmission, including: a sending end encapsulating a data packet, wherein each data packet for the media code stream: according to a media type of the data packet, the media code stream Identifying a data packet header written in the data packet; writing a data packet sequence number in a data packet header of the data packet according to a sequence number in the media code stream corresponding to the media code stream identifier; and, according to the data packet The total length of the packet format payload length identifier is written to the packet header of the packet;
  • the sender sends each encapsulated data packet to one or more receiving ends through the same User Datagram Protocol (UDP) channel.
  • UDP User Datagram Protocol
  • the sending end is also for each data packet of the media code stream,
  • the clock reference identifier is written into the packet header of the packet according to the media stream encoding time of the packet.
  • the sending end further writes the media code stream key information identifier into the data packet header of the data packet according to the media code stream key information of the data packet for each data packet of the media code stream. in.
  • Each data packet for the media stream If the data packet is a data packet of the video media stream, the media stream key information includes one or more of the following information: SVC attributes and dependencies, MVC Angle information, and related key information of the video frame;
  • the media stream key information includes language information of the media stream
  • the media stream key information includes subtitle voice information of the media stream.
  • the relevant key information of the video frame includes related frame information of the video frame and a frame data boundary.
  • the sending end sends each encapsulated data packet to the one or more receiving ends through the same UDP channel, including:
  • the transmitting end combines one or more encapsulated data packets into a large data packet and sends the data packet to the receiving end.
  • the above transmission method further includes:
  • the receiving end After receiving the data packet sent by the sending end, the receiving end sorts the media code stream according to the media code stream identifier and the media code stream key information identifier in the data packet header of the received data packet, and selects the required media.
  • the code stream is forwarded or played.
  • the above transmission method further includes:
  • the receiving end After receiving the data packet directly or indirectly from the transmitting end, the receiving end determines whether there is a packet loss according to the media code stream identifier and the data packet number in the data packet header of the received data packet, and if there is a packet loss, A server that holds a media stream corresponding to the lost packet acquires the lost packet.
  • the above transmission method further includes: After receiving the data packet directly or indirectly from the transmitting end, the receiving end synchronizes the multi-media media code stream according to the clock reference identifier in the data packet header of the received data packet.
  • the present invention provides a streaming media processing device, including a package module, where
  • the encapsulating module is configured to encapsulate a data packet, where each data packet for the media code stream is: according to the media type of the data packet, writing the media code stream identifier into a data packet header of the data packet; according to the data The serial number in the media code stream corresponding to the media stream identifier, the data packet number is written into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length identifier is written into the data packet header The packet header in the packet.
  • the encapsulating module is further configured to: each data packet for the media code stream: according to the media code stream encoding time of the data packet, writing a clock reference identifier into a data packet header of the data packet; according to the media code of the data packet Flow key information, the media stream key information identifier is written into the packet header of the data packet.
  • the above device also includes a transmitting module
  • the sending module is configured to send each encapsulated data packet output by the encapsulating module to one or more receiving ends through the same UDP channel.
  • the present invention proposes an efficient, high quality method of packaging and transmitting multimedia data packets, which has the following advantages:
  • the encapsulated data packet can be directly transmitted on a transport layer protocol such as UDP (User Datagram Protocol) or TCP (Transmission Control Protocol);
  • UDP User Datagram Protocol
  • TCP Transmission Control Protocol
  • the encapsulated data packet can also be transmitted on an application layer protocol such as RTP or HTTP (Hypertext Transfer Protocol).
  • RTP Hypertext Transfer Protocol
  • the encapsulated data packet can obtain efficient data transmission
  • the encapsulated data packet can provide packet loss compensation information, and can also ensure better multi-channel code stream synchronization effect; 5.
  • the encapsulated data packet contains key information of the media code stream, and the application level can be extended according to the information at the application level and the device level.
  • FIG. 1 is a schematic structural diagram of a data packet according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of data packet transmission and application according to an application example of the present invention.
  • the present invention proposes an efficient, high quality method of packaging and transmitting multimedia data packets.
  • Step 1 The sender divides each media code stream into more than one data packet (the media stream data is placed in the data payload portion, as shown in Figure 1).
  • Step 2 For each data packet: according to the media type of the data packet, write the media code stream identifier into the data packet header of the data packet; according to the sequence number of the data packet in the media code stream corresponding to the media code stream identifier Write the packet sequence number into the packet header of the packet; and, according to the total length of the packet, write the packet format payload length identifier into the packet header of the packet.
  • Media stream identification fields can be used to distinguish between different types of media packets, such as video, audio, subtitles, different angles of multi-angle video (MVC), and different base layer and extension layer (SVC) of scalable video.
  • MVC multi-angle video
  • SVC base layer and extension layer
  • the sending end may, for each data packet, write the clock reference identifier into the data packet header of the data packet according to the media code stream encoding time of the data packet, and the media according to the data packet.
  • the code stream key information, the media code stream key information identifier is written into the data packet header of the data packet.
  • the media stream key information may include one or more of the following information: SVC (Scalable Video Coding) attributes and dependencies, MVC (multi-view coding) angle information, And relevant key information of the video frame;
  • SVC Scalable Video Coding
  • MVC multi-view coding
  • the related key information of the video frame may include related frame information and frame data boundary of the video frame.
  • the media stream key information includes language information of the media stream
  • the media stream key information includes subtitle voice information of the media stream.
  • Step 3 The sender sends each encapsulated data packet to one or more receiving ends through the same UDP/IP channel.
  • a port resource channel can be used for transmission in the UDP transmission channel to ensure: a, network layer port resource saving use; b, media Synchronization of information.
  • the package can be packaged as a smaller packet when the smaller packet is transmitted over the IP network. In this case, multiple smaller packets can be combined into one large packet for transmission.
  • Step 4 After receiving the data packet sent by the sending end, the receiving end may sort the media code stream according to the media code stream identifier and the media stream stream key information identifier in the data packet header of the data packet, and select the required media code stream. Forward or play.
  • the media server may perform selective transmission according to the identification field of different media types.
  • the receiving end may determine whether there is a packet loss according to the media code stream identifier and the data packet number in the data packet header of the data packet, and if there is a packet loss, the receiving device saves The server of the media stream corresponding to the lost packet acquires the lost packet. And, the multi-media stream can be synchronized according to the clock reference identifier in the packet header of the packet.
  • the encapsulated packet includes the packet header and data payload.
  • the packet header can be extended in length and contains multiple fields.
  • some of the main key fields are defined. However, it is not limited to this and can be further expanded.
  • This field identifies the total length of the packet and contains the length of the packet header. This representation helps the application layer to more clearly obtain the actual length of the overall packet, not just the length field of the payload.
  • the length of the data packet defined by this field is variable.
  • the application layer can define a set of experience values or common values for use in order to facilitate application and transmission equipment. This field mainly includes the following application advantages in multimedia applications: It can improve transmission efficiency and flexibly configure the packet length. This field can be defined using 8 bits and more than 8 bits.
  • This field identifies different media source types.
  • the identifier field can be identified by using 4 digits or more. For example, if 8 bits are defined, 256 different media types can be defined. If 16 bits are defined, 65536 different colors can be implemented.
  • Media type This field mainly includes the following application advantages in multimedia applications: Because the field exists for media source type differentiation, multiple media types of one program can be transmitted in the same resource port of the same IP channel, which can be better. Synchronization effect.
  • the field identifies the packet sequence number of the data packet in a certain media type, and the sequence number is sorted according to the source of the determined media type, and the sequence number is identified by 8 bits and more than 8 bits. For example, if 8 bits are defined, 256 packets can be identified. Cyclic sorting of sequence numbers, defining 16 bits, can achieve loop sorting of 65536 packet sequence numbers.
  • This field mainly includes the following application advantages in the multimedia application: According to the continuity of the packet number, it is relatively easy to judge the network packet loss on the terminal side, and thus it is easier to implement the retransmission effect and improve the quality of the experience.
  • This field allows for an accurate codec clock definition that can be used as an accurate clock reference for individual packet code synchronization; the clock reference identification bits are defined at least 32 bits and are defined to more than 32 bits.
  • This field mainly includes the following application advantages in multimedia applications: This field can carry accurate clock references of various media sources to ensure accurate decoding and synchronization of the client.
  • media code stream key information identification field This field can be represented by 8 bits and more than 8 digits. It describes the key information of the media stream. See Figure 1 for the description of this field.
  • an SVC attribute and a dependency describing the code stream, and MVC angle information may be defined, and relevant key information of the field extended video frame may be added.
  • language information describing the stream can be defined
  • subtitle language information describing the stream may be defined
  • the relevant key information of the video frame can further describe the related frame information and the frame data boundary of the video frame, so as to better extract the key information of the media into the main transmission field, so as to more easily achieve a more complete multimedia application.
  • IDR—Start start of IDR frame
  • IDR Middle the middle of the IDR frame
  • IDR_end end of IDR frame
  • ODR Start start of ODR frame
  • ODR Middle the middle of the ODR frame
  • ODR End the end of the ODR frame
  • GDR_Start the start of the GDR frame
  • GDR Middle the middle of the GDR frame
  • GDR End the end of the GDR frame
  • B Start B frame start
  • B Middle between B frames
  • B_End end of B frame
  • P Start start of P frame
  • P_Middle in the middle of P frame
  • P_End end of P frame
  • the field mainly includes the following application advantages in the multimedia application: 1. For the random access of the client, the related video frame can be conveniently found; 2. The key frame can be conveniently stripped for multimedia application; 3. The network device can use the information to perform Packet buffering for more applications.
  • the multimedia encoder performs the collection of the video source and the audio source, and after some processing, forms a program code stream, and the program code stream can be described by considering a relatively complex model.
  • the program code stream contains two angles of video code.
  • one of the video streams is a code stream encoded by SVC, which we call A video stream, that is, the A video stream contains a basic layer code stream, which is called A video base layer stream;
  • an enhancement layer code stream referred to as an A video enhancement layer code stream;
  • another video code stream is referred to as a B video code stream; and includes an English audio code stream and a Chinese audio code stream and a subtitle layer code stream.
  • the program stream includes a total of six media streams, namely an A video base layer stream, an A video enhancement layer stream, a B video stream, an English audio stream, a Chinese audio stream, and a subtitle layer stream.
  • the six-way media stream is encapsulated according to the foregoing description, and the necessary fields of the encapsulation mode are performed according to the above description, and output by the multimedia encoder to the IP network; this process is indicated by the arrow A in the drawing of the specification.
  • the multi-channel media source is in the same UDP/IP network channel (the same network port resource M is dedicated to transmit. This function mainly depends on the media stream identification field in the encapsulation format, wherein the steps of encapsulation and transmission are as follows:
  • the multimedia encoder collects the corresponding video and audio, and the subtitle media is encapsulated as follows:
  • Fill in the media stream identification field according to the media type of the data packet fill in the data packet sequence number field according to the serial number of the data packet, fill in the data packet format payload length identifier according to the total length of the data packet, and fill in the clock according to the coding time of each media code stream.
  • the identification field and fill in the media stream key information identification field according to the key information of each media stream.
  • each media stream packet (the embodiment includes six media streams) is sent from a determined sending port of the UDP protocol to a determined receiving port according to a determined sequence and UDP port resources.
  • the program stream is transmitted over the network in such a manner that the multi-channel media of the program is transmitted within the port resources determined by a UDP channel. It can be shown in the description of arrow B in Figure 2.
  • the process is identified by the arrow B in Figure 2, and the multi-media stream of the program is output to the media server.
  • the media server can sort, store or buffer according to the application requirements according to the above packet format.
  • the media server may perform code stream sorting according to the media code stream identification field and the media code stream key information identification field, and then combine the code stream that is required by the user to be sent to the media player 2 for playing and decoding, and the code stream is transmitted.
  • the F and G arrows in Figure 2 are identified; if the application requires cutting Change one media stream, for example, replace the A video base layer code stream into a B video code stream; or add a B video code stream; both can use the H arrow identifier to perform feedback, and the media server performs corresponding code stream replacement or increases the corresponding code stream. send.
  • This function mainly relies on the media stream identification field and the packet sequence number field; the following figure
  • the media player 1 can receive the original code stream output by the multimedia encoder (as indicated by the arrow C), and can select the user according to the media stream identification field and the media stream key information identification field in the media stream. Actual code stream.
  • the media player 1 can perform network packet loss detection according to the media code stream identification field and the data packet sequence number in the received media stream, and when the packet is lost, the message is sent to the media server through the arrow D in the figure.
  • the arrow E in the figure indicates that the buffered data packet is compensated and transmitted by the media server, thereby improving the quality of the user experience.
  • This function is mainly implemented by the packet format payload length identification field.
  • the field in the packet format is a variable length definition, that is, the length of each packet is different.
  • the data packet length is close to the MTU (Maximum Transmission Unit) value of the network device; generally, for the audio stream or the subtitle stream, Similar media stream data is less, can be a smaller value of the packet length;
  • MTU Maximum Transmission Unit
  • Packets of different lengths can be combined and carried in a UDP transport packet for transmission. This method can save network resources and make full use of transmission resources.
  • the first application includes an I-frame related identifier (IDR (Instantaneous Decoding Refresh), ODR (Open-GOP Decoding Refresh), and GDR (Gradual Decoding) in the code stream transmission packet.
  • IDR Intelligent Decoding Refresh
  • ODR Open-GOP Decoding Refresh
  • GDR Gradual Decoding
  • Refresh, progressive decoding refresh Frame enables the relevant application layer device to recognize the I frame and perform application processing.
  • the I frame can be buffered for fast channel switching (fast I frame transmission or playback);
  • the I-frame correlation identifier (IDR, ODR, GDR) is included in the code stream transmission data packet, so that the relevant application layer device can identify the I frame and perform application processing, for example, the index can be established according to the I frame identifier, and used for Stunt mode implementation;
  • the third application including the I-frame correlation identifier (IDR, ODR, GDR) in the code stream transmission data packet, enables the relevant application layer device to identify the I frame and perform application processing, for example, stripping storage for key frame data. Independent storage, etc.
  • IDR I-frame correlation identifier
  • ODR ODR
  • GDR GDR
  • the B-frame correlation identifier is included in the code stream transmission data packet, and the network device can directly not forward the B frame when the network resource is insufficient, thereby saving network resources and achieving more diverse applications.
  • the application related to the key information of the video frame in the key stream identification field of the media stream cannot be exhaustive.
  • the first application based on the clock reference and parsing in the packet, can complete the strict synchronization of multiple media types on the client.
  • the clock reference can be used as a decoding recovery clock reference for the player.
  • the streaming media processing device of the embodiment of the present invention includes a package module and a sending module, where
  • the encapsulating module is configured to encapsulate a data packet, where each data packet for the media code stream is: according to the media type of the data packet, writing the media code stream identifier into a data packet header of the data packet; according to the data The serial number in the media code stream corresponding to the media stream identifier, the data packet number is written into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length identifier is written into the data packet header The packet header in the packet.
  • the encapsulating module is further configured to: each data packet for the media code stream: writing a clock reference identifier into a data packet header of the data packet according to a media code stream encoding time of the data packet; According to the media stream key information of the data packet, the media stream key information identifier is written into the packet header of the data packet.
  • the sending module is configured to send each encapsulated data packet output by the encapsulating module to one or more receiving ends through the same UDP channel.
  • each module/unit in the foregoing embodiment may be implemented in the form of hardware, or may use software functions.
  • the form of the module is implemented. The invention is not limited to any specific form of combination of hardware and software.
  • the encapsulated data packet may be directly transmitted on a transport layer protocol such as UDP or TCP for transmission, or may be carried on an application layer protocol such as RTP or HTTP, in any transport bearer.
  • a transport layer protocol such as UDP or TCP for transmission
  • an application layer protocol such as RTP or HTTP
  • the encapsulated data packet can obtain efficient data transmission, can provide packet loss compensation information, and can also ensure better multi-channel code stream synchronization effect;
  • the encapsulated data packet includes media code stream key Information, at the application level and device level, can be extended based on this information.

Abstract

Disclosed are a method for encapsulating and transmitting a streaming media packet, and a device for processing the streaming media. In the present invention, a sending end encapsulates a packet, including for each packet of the media code stream: writing a media code stream identifier into the packet header of the packet according to the media type of the packet; writing a packet serial number into the packet header of the packet according to the serial number of the packet in the media code stream corresponding to the media code stream identifier; and writing a packet format load length identifier into the packet header of the packet according to the total length of the packet; and the sending end sending each encapsulated packet to one or more receiving ends via the same UDP channel. The present invention can enable multiple paths of media sources to be transmitted in the same UDP/IP network channel, and can provide functions such as extraction, combination, and lost packet compensation for the program media code stream, realizing the objects of encapsulating and transmitting multi-media packets highly efficiently and with high quality.

Description

一种流媒体数据包的封装、 传输方法及流媒体处理装置  Method for packaging and transmitting streaming media data packet and streaming media processing device
技术领域 Technical field
本发明涉及多媒体数据传输技术领域, 尤其涉及一种流媒体数据包的封 装、 传输方法及流媒体处理装置。  The present invention relates to the field of multimedia data transmission technologies, and in particular, to a method for packaging and transmitting a streaming media data packet and a streaming media processing device.
背景技术 Background technique
随着无线 3G, 4G的数据传输带宽发展以及固网的高带宽接入, 多媒体 传输技术得到了广泛的应用, 对音频、 视频、 字幕或动画等多媒体内容进行 实时传送的流媒体传输技术应运而生。  With the development of wireless 3G, 4G data transmission bandwidth and high-bandwidth access of fixed networks, multimedia transmission technology has been widely used, and streaming media transmission technology for real-time transmission of multimedia content such as audio, video, subtitles or animation should be carried out. Health.
流媒体服务器把音频、 视频、 字幕或动画等媒体内容打包为媒体流, 媒 体流以分组的形式在网络上进行实时连续传输, 客户端不必等待媒体内容全 部下载完毕, 只需延迟很短时间就可以开始播放, 媒体流边传输边播放直到 媒体内容播放完毕或客户端中止操作。 应用流媒体传输技术, 可以显著缩短 媒体播放等待时间、 降低客户端緩存要求。  The streaming media server packs media content such as audio, video, subtitles or animation into a media stream, and the media stream is continuously transmitted in real time on the network in groups. The client does not have to wait for the media content to be completely downloaded, and only needs to delay for a short time. You can start playing, and the media stream will play while it is playing until the media content is played or the client aborts. Application streaming media technology can significantly reduce media playback latency and reduce client cache requirements.
但是现有的流媒体传输协议存在一些不足之处, 比如, 标准组织 IETF ( Internet Engineering Task Force , 互联网工程任务组) 的 RTP ( Real-time Transport protocol, 实时传输协议), 无法直接做到较好的多种媒体同步功能 和 媒 体 信 息 标 记 功 能 ; 标 准 组 织 ISO ( International Organization for Standardization, 国际标准化组织) 的 MPEG-2 ( Moving Pictures Experts Grou , 运动图像专家组 ) TS ( Transport Stream, 传输流 )标准则无法做到高效的网络传输。  However, existing streaming media transmission protocols have some shortcomings. For example, the standard organization IETF (Internet Engineering Task Force) RTP (Real-time Transport Protocol) cannot directly achieve better results. Multiple media synchronization features and media information tagging capabilities; Standard Organization ISO (International Organization for Standardization, International Organization for Standardization) MPEG-2 (Moving Pictures Experts Grou) TS (Transport Stream) standards Unable to achieve efficient network transmission.
发明内容 Summary of the invention
本发明的目的是提出一种流媒体数据包的封装、 传输方法及流媒体处理 装置, 以保证多媒体传输的高效性以及增加用户体验质量。  The object of the present invention is to provide a package, a transmission method and a streaming media processing device for streaming media data packets, so as to ensure the efficiency of multimedia transmission and increase the quality of user experience.
为了解决上述问题, 本发明提供一种流媒体数据包的封装方法, 包括: 针对媒体码流的每个数据包: 按照该数据包的媒体类型, 将媒体码流标 识写入该数据包的数据包头中; 按照该数据包在该媒体码流标识对应的媒体 码流中的序号, 将数据包序号写入该数据包的数据包头中; 以及, 按照该数 据包的总长度, 将数据包格式负载长度标识写入该数据包的数据包头中。 In order to solve the above problem, the present invention provides a method for encapsulating a streaming media data packet, including: each data packet for a media code stream: according to a media type of the data packet, the media code stream is marked The data packet header is written into the data packet header of the data packet; the data packet sequence number is written into the data packet header of the data packet according to the sequence number in the media code stream corresponding to the media stream identifier; and, according to the data packet The total length of the packet format payload length is written to the packet header of the packet.
上述封装方法还包括:  The above packaging method further includes:
针对媒体码流的每个数据包: 按照该数据包的媒体码流编码时间, 将时 钟参考标识写入该数据包的数据包头中。  For each packet of the media stream: The clock reference identifier is written to the packet header of the packet according to the media stream encoding time of the packet.
上述封装方法还包括:  The above packaging method further includes:
针对媒体码流的每个数据包: 按照该数据包的媒体码流关键信息, 将媒 体码流关键信息标识写入该数据包的数据包头中。  For each packet of the media stream: According to the media stream key information of the packet, the media stream key information identifier is written into the packet header of the packet.
其中, 针对媒体码流的每个数据包:  Wherein, each packet for the media stream:
若所述数据包为视频媒体码流的数据包, 则所述媒体码流关键信息包括 如下信息中的一种或多种: 可扩展视频编码(SVC )属性和依赖关系、 多视 点视频编码(MVC ) 角度信息、 以及视频帧的相关关键信息;  If the data packet is a data packet of a video media stream, the media stream key information includes one or more of the following information: scalable video coding (SVC) attributes and dependencies, multi-view video coding ( MVC) angle information, and related key information of the video frame;
若所述数据包为音频码流的数据包, 则所述媒体码流关键信息包括媒体 码流的语种信息;  If the data packet is a data packet of an audio stream, the media stream key information includes language information of the media stream;
若所述数据包为字幕码流的数据包, 则所述媒体码流关键信息包括媒体 码流的字幕语音信息。  If the data packet is a data packet of a subtitle stream, the media stream key information includes subtitle voice information of the media stream.
所述视频帧的相关关键信息包括视频帧的相关帧信息和帧数据边界。 为了解决上述问题, 本发明提供一种流媒体传输的方法, 包括: 发送端对数据包进行封装, 其中, 针对媒体码流的每个数据包: 按照该 数据包的媒体类型, 将媒体码流标识写入该数据包的数据包头中; 按照该数 据包在该媒体码流标识对应的媒体码流中的序号, 将数据包序号写入该数据 包的数据包头中; 以及, 按照该数据包的总长度, 将数据包格式负载长度标 识写入该数据包的数据包头中; 以及  The relevant key information of the video frame includes related frame information of the video frame and a frame data boundary. In order to solve the above problem, the present invention provides a method for streaming media transmission, including: a sending end encapsulating a data packet, wherein each data packet for the media code stream: according to a media type of the data packet, the media code stream Identifying a data packet header written in the data packet; writing a data packet sequence number in a data packet header of the data packet according to a sequence number in the media code stream corresponding to the media code stream identifier; and, according to the data packet The total length of the packet format payload length identifier is written to the packet header of the packet;
所述发送端将每个封装后的数据包通过同一个用户数据包协议 ( UDP ) 通道发送给一个或多个接收端。  The sender sends each encapsulated data packet to one or more receiving ends through the same User Datagram Protocol (UDP) channel.
对数据包进行封装的步骤中 ,所述发送端还针对媒体码流的每个数据包, 按照该数据包的媒体码流编码时间, 将时钟参考标识写入该数据包的数据包 头中。 In the step of encapsulating the data packet, the sending end is also for each data packet of the media code stream, The clock reference identifier is written into the packet header of the packet according to the media stream encoding time of the packet.
对数据包进行封装的步骤中,所述发送端还针对媒体码流的每个数据包, 按照该数据包的媒体码流关键信息, 将媒体码流关键信息标识写入该数据包 的数据包头中。  In the step of encapsulating the data packet, the sending end further writes the media code stream key information identifier into the data packet header of the data packet according to the media code stream key information of the data packet for each data packet of the media code stream. in.
针对媒体码流的每个数据包: 若所述数据包为视频媒体码流的数据包, 则所述媒体码流关键信息包括如下信息中的一种或多种: SVC属性和依赖关 系、 MVC角度信息、 以及视频帧的相关关键信息;  Each data packet for the media stream: If the data packet is a data packet of the video media stream, the media stream key information includes one or more of the following information: SVC attributes and dependencies, MVC Angle information, and related key information of the video frame;
若所述数据包为音频码流的数据包, 则所述媒体码流关键信息包括媒体 码流的语种信息;  If the data packet is a data packet of an audio stream, the media stream key information includes language information of the media stream;
若所述数据包为字幕码流的数据包, 则所述媒体码流关键信息包括媒体 码流的字幕语音信息。  If the data packet is a data packet of a subtitle stream, the media stream key information includes subtitle voice information of the media stream.
所述视频帧的相关关键信息包括视频帧的相关帧信息和帧数据边界。 所述发送端将每个封装后的数据包通过同一个 UDP通道发送给一个或 多个接收端的步骤包括:  The relevant key information of the video frame includes related frame information of the video frame and a frame data boundary. The sending end sends each encapsulated data packet to the one or more receiving ends through the same UDP channel, including:
所述发送端将一个以上封装后的数据包组合成大的数据包发送给接收 端。  The transmitting end combines one or more encapsulated data packets into a large data packet and sends the data packet to the receiving end.
上述传输方法还包括:  The above transmission method further includes:
所述接收端接收到发送端发送的数据包后, 根据所接收到的数据包的数 据包头中的媒体码流标识和媒体码流关键信息标识, 对媒体码流进行分拣, 选择需要的媒体码流进行转发或播放。  After receiving the data packet sent by the sending end, the receiving end sorts the media code stream according to the media code stream identifier and the media code stream key information identifier in the data packet header of the received data packet, and selects the required media. The code stream is forwarded or played.
上述传输方法还包括:  The above transmission method further includes:
接收端从所述发送端直接或间接接收到数据包后, 则根据所接收到的数 据包的数据包头中的媒体码流标识和数据包序号判断是否有丟包, 如果有丟 包, 则从保存有与所丟失的数据包相对应的媒体码流的服务器获取丟失的数 据包。  After receiving the data packet directly or indirectly from the transmitting end, the receiving end determines whether there is a packet loss according to the media code stream identifier and the data packet number in the data packet header of the received data packet, and if there is a packet loss, A server that holds a media stream corresponding to the lost packet acquires the lost packet.
上述传输方法还包括: 所述接收端从所述发送端直接或间接接收到数据包后, 根据所接收到的 数据包的数据包头中的时钟参考标识进行多路媒体码流的同步。 The above transmission method further includes: After receiving the data packet directly or indirectly from the transmitting end, the receiving end synchronizes the multi-media media code stream according to the clock reference identifier in the data packet header of the received data packet.
为了解决上述问题, 本发明提供一种流媒体处理装置, 包括封装模块, 其中,  In order to solve the above problems, the present invention provides a streaming media processing device, including a package module, where
所述封装模块设置成对数据包进行封装, 其中, 针对媒体码流的每个数 据包: 按照该数据包的媒体类型, 将媒体码流标识写入该数据包的数据包头 中; 按照该数据包在该媒体码流标识对应的媒体码流中的序号, 将数据包序 号写入该数据包的数据包头中; 以及, 按照该数据包的总长度, 将数据包格 式负载长度标识写入该数据包的数据包头中。  The encapsulating module is configured to encapsulate a data packet, where each data packet for the media code stream is: according to the media type of the data packet, writing the media code stream identifier into a data packet header of the data packet; according to the data The serial number in the media code stream corresponding to the media stream identifier, the data packet number is written into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length identifier is written into the data packet header The packet header in the packet.
所述封装模块还设置成: 针对媒体码流的每个数据包: 按照该数据包的 媒体码流编码时间, 将时钟参考标识写入该数据包的数据包头中; 按照该数 据包的媒体码流关键信息, 将媒体码流关键信息标识写入该数据包的数据包 头中。  The encapsulating module is further configured to: each data packet for the media code stream: according to the media code stream encoding time of the data packet, writing a clock reference identifier into a data packet header of the data packet; according to the media code of the data packet Flow key information, the media stream key information identifier is written into the packet header of the data packet.
上述装置还包括发送模块,  The above device also includes a transmitting module,
所述发送模块设置成将所述封装模块输出的每个封装后的数据包通过同 一个 UDP通道发送给一个或多个接收端。  The sending module is configured to send each encapsulated data packet output by the encapsulating module to one or more receiving ends through the same UDP channel.
本发明提出了高效, 高质量的封装和传输多媒体数据包方式, 具有以下 优点: The present invention proposes an efficient, high quality method of packaging and transmitting multimedia data packets, which has the following advantages:
1、 封装后的数据包可以直接承载在 UDP ( User Datagram Protocol , 用户 数据包协议) , TCP ( Transmission Control Protocol, 传输控制协议)等传输 层协议上进行传输;  1. The encapsulated data packet can be directly transmitted on a transport layer protocol such as UDP (User Datagram Protocol) or TCP (Transmission Control Protocol);
2 、 封 装 后 的 数 据 包 也 可 以 承 载 在 RTP , HTTP ( HyperText Transfer Protocol , 超文本传输协议)等应用层协议上进行传输。  2. The encapsulated data packet can also be transmitted on an application layer protocol such as RTP or HTTP (Hypertext Transfer Protocol).
3、在任何传输承载方式上, 该封装后的数据包都可以得到高效的数据传 输;  3. In any transmission bearer mode, the encapsulated data packet can obtain efficient data transmission;
4、 在任何传输承载方式上, 该封装后的数据包可以提供丟包补偿信息, 也可以保证更好的多路码流同步效果; 5、在任何传输承载方式上,该封装后的数据包中包含媒体码流关键信息, 在应用层次和设备层次可以根据该信息进行应用扩展。 附图概述 4. In any transmission bearer mode, the encapsulated data packet can provide packet loss compensation information, and can also ensure better multi-channel code stream synchronization effect; 5. In any transmission bearer mode, the encapsulated data packet contains key information of the media code stream, and the application level can be extended according to the information at the application level and the device level. BRIEF abstract
图 1为本发明实施例的数据包结构示意图;  1 is a schematic structural diagram of a data packet according to an embodiment of the present invention;
图 2为本发明应用示例的数据包传输和应用示意图。  FIG. 2 is a schematic diagram of data packet transmission and application according to an application example of the present invention.
本发明的较佳实施方式 Preferred embodiment of the invention
面临当前多媒体传送的应用爆发式增加, 为了保证多媒体传输的高效性 以及增加用户体验质量, 本发明提出了一种高效, 高质量的封装和传输多媒 体数据包方式。  In the face of the explosive increase of current multimedia transmission applications, in order to ensure the efficiency of multimedia transmission and increase the quality of user experience, the present invention proposes an efficient, high quality method of packaging and transmitting multimedia data packets.
具体地, 可包括如下步骤:  Specifically, the following steps may be included:
步骤 1 , 发送端将每个媒体码流划分成一个以上的数据包(媒体码流数 据放入数据负载部分, 如图 1所示) 。  Step 1: The sender divides each media code stream into more than one data packet (the media stream data is placed in the data payload portion, as shown in Figure 1).
步骤 2 , 针对每个数据包: 按照该数据包的媒体类型, 将媒体码流标识 写入该数据包的数据包头中; 按照该数据包在该媒体码流标识对应的媒体码 流中的序号, 将数据包序号写入该数据包的数据包头中; 以及, 按照该数据 包的总长度, 将数据包格式负载长度标识写入该数据包的数据包头中。  Step 2: For each data packet: according to the media type of the data packet, write the media code stream identifier into the data packet header of the data packet; according to the sequence number of the data packet in the media code stream corresponding to the media code stream identifier Write the packet sequence number into the packet header of the packet; and, according to the total length of the packet, write the packet format payload length identifier into the packet header of the packet.
可以通过媒体码流标识字段来区分不同类型的媒体数据包, 例如, 视频, 音频, 字幕, 多角度视频的不同角度(MVC ) , 以及, 可扩展视频的不同基 本层和扩展层( SVC ) 。  Media stream identification fields can be used to distinguish between different types of media packets, such as video, audio, subtitles, different angles of multi-angle video (MVC), and different base layer and extension layer (SVC) of scalable video.
另外, 可选地, 所述发送端可针对每个数据包, 按照该数据包的媒体码 流编码时间, 将时钟参考标识写入该数据包的数据包头中, 以及, 按照该数 据包的媒体码流关键信息, 将媒体码流关键信息标识写入该数据包的数据包 头中。  In addition, the sending end may, for each data packet, write the clock reference identifier into the data packet header of the data packet according to the media code stream encoding time of the data packet, and the media according to the data packet. The code stream key information, the media code stream key information identifier is written into the data packet header of the data packet.
若所述数据包为视频媒体码流的数据包, 则所述媒体码流关键信息可包 括如下信息中的一种或多种: SVC ( Scalable Video Coding, 可扩展视频编码) 属性和依赖关系、 MVC ( multi-view coding, 多视点视频编码)角度信息、 以 及视频帧的相关关键信息; If the data packet is a data packet of a video media stream, the media stream key information may include one or more of the following information: SVC (Scalable Video Coding) attributes and dependencies, MVC (multi-view coding) angle information, And relevant key information of the video frame;
其中, 所述视频帧的相关关键信息可包括视频帧的相关帧信息和帧数据 边界。  The related key information of the video frame may include related frame information and frame data boundary of the video frame.
若所述数据包为音频码流的数据包, 则所述媒体码流关键信息包括媒体 码流的语种信息;  If the data packet is a data packet of an audio stream, the media stream key information includes language information of the media stream;
若所述数据包为字幕码流的数据包, 则所述媒体码流关键信息包括媒体 码流的字幕语音信息。  If the data packet is a data packet of a subtitle stream, the media stream key information includes subtitle voice information of the media stream.
步骤 3,发送端将封装后的每个数据包通过同一个 UDP/IP通道发送给一 个或多个接收端。  Step 3: The sender sends each encapsulated data packet to one or more receiving ends through the same UDP/IP channel.
由于每个媒体类型的数据包可以通过媒体码流标识字段进行区分,所以, 可以在 UDP传输通道中采用一个端口资源通道进行传输, 以保证: a、 网络 层端口资源的节省使用; b、 媒体信息的同步保证。  Since the data packets of each media type can be distinguished by the media stream identification field, a port resource channel can be used for transmission in the UDP transmission channel to ensure: a, network layer port resource saving use; b, media Synchronization of information.
另外, 由于某些媒体数据量很少, 例如, 字幕, 音频等, 对于此种数据 量较小的媒体, 其封装时可以封装为较小的数据包, 当该较小包在 IP网络上 传输时, 可以由多个较小的数据包组合成一个大的数据包进行传输。  In addition, because some media data has a small amount, for example, subtitles, audio, etc., for such a small amount of media, the package can be packaged as a smaller packet when the smaller packet is transmitted over the IP network. In this case, multiple smaller packets can be combined into one large packet for transmission.
步骤 4, 接收端接收到发送端发送的数据包后, 可根据数据包的数据包 头中的媒体码流标识和媒体码流关键信息标识, 对媒体码流进行分拣, 选择 需要的媒体码流进行转发或播放。  Step 4: After receiving the data packet sent by the sending end, the receiving end may sort the media code stream according to the media code stream identifier and the media stream stream key information identifier in the data packet header of the data packet, and select the required media code stream. Forward or play.
比如, 根据不同的应用, 媒体服务器接收到数据包后, 可以根据不同媒 体类型的标识字段进行选择传输。  For example, according to different applications, after receiving the data packet, the media server may perform selective transmission according to the identification field of different media types.
另外, 接收端从所述发送端直接或间接接收到数据包后, 可根据数据包 的数据包头中的媒体码流标识和数据包序号判断是否有丟包, 如果有丟包, 则从保存有与所丟失的数据包相对应的媒体码流的服务器获取丟失的数据 包。 以及, 可根据数据包的数据包头中的时钟参考标识进行多路媒体码流的 同步。  In addition, after receiving the data packet directly or indirectly from the sending end, the receiving end may determine whether there is a packet loss according to the media code stream identifier and the data packet number in the data packet header of the data packet, and if there is a packet loss, the receiving device saves The server of the media stream corresponding to the lost packet acquires the lost packet. And, the multi-media stream can be synchronized according to the clock reference identifier in the packet header of the packet.
下面对数据包的封装结构进一步说明:  The following further explains the package structure of the data packet:
如图 1所示, 封装后的数据包包括数据包头和数据负载。 其中, 数据包 头可以扩展长度, 并包含多个字段。 在本文中, 定义了一些主要的关键字段, 但不限于此, 可以进一步扩展。 As shown in Figure 1, the encapsulated packet includes the packet header and data payload. Among them, the packet header can be extended in length and contains multiple fields. In this article, some of the main key fields are defined. However, it is not limited to this and can be further expanded.
1、 数据包格式负载长度标识  1, packet format load length identification
该字段标识该数据包的总长度, 包含数据包头的长度。 该表示方法有助 于应用层更为明确获得整体的数据包实际长度,而不仅仅是负载的长度字段。 该字段定义的数据包长度为可变, 应用层为了方便应用和传输设备, 可以自 行定义一组经验值或者通用值进行使用。 该字段在多媒体应用中主要包含如 下的应用优势: 可以提升传输效率, 可以灵活配置包长度。 该字段可以釆用 8位以及 8位以上进行定义。  This field identifies the total length of the packet and contains the length of the packet header. This representation helps the application layer to more clearly obtain the actual length of the overall packet, not just the length field of the payload. The length of the data packet defined by this field is variable. The application layer can define a set of experience values or common values for use in order to facilitate application and transmission equipment. This field mainly includes the following application advantages in multimedia applications: It can improve transmission efficiency and flexibly configure the packet length. This field can be defined using 8 bits and more than 8 bits.
2、 媒体码流标识  2, media stream identification
该字段标识不同的媒体源类型; 该标识字段可以釆用 4位以及 4位以上 进行标识, 例如, 定义 8位, 则可以定义 256个不同的媒体类型, 定义 16位, 则可以实现 65536个不同的媒体类型。 该字段在多媒体应用中主要包含如下 的应用优势: 由于存在该字段进行媒体源类型区分, 所以, 一路节目的多种 媒体类型可以在同一个 IP通道的同一个资源端口中传输, 可以达到比较好的 同步效果。  This field identifies different media source types. The identifier field can be identified by using 4 digits or more. For example, if 8 bits are defined, 256 different media types can be defined. If 16 bits are defined, 65536 different colors can be implemented. Media type. This field mainly includes the following application advantages in multimedia applications: Because the field exists for media source type differentiation, multiple media types of one program can be transmitted in the same resource port of the same IP channel, which can be better. Synchronization effect.
3、 数据包序号  3, the data packet serial number
该字段标识该数据包在某种媒体类型中的包序号, 该序号按照确定媒体 类型源进行排序, 序号釆用 8位以及 8位以上进行标识, 例如, 定义 8位, 则可以标识 256个包序号的循环排序, 定义 16位, 则可以实现 65536个包序 号的循环排序。 该字段在多媒体应用中主要包含如下的应用优势: 根据包序 号的连续性, 可以比较容易在终端侧判断网络丟包, 进而比较容易实现重传 效果, 提升体验质量。  The field identifies the packet sequence number of the data packet in a certain media type, and the sequence number is sorted according to the source of the determined media type, and the sequence number is identified by 8 bits and more than 8 bits. For example, if 8 bits are defined, 256 packets can be identified. Cyclic sorting of sequence numbers, defining 16 bits, can achieve loop sorting of 65536 packet sequence numbers. This field mainly includes the following application advantages in the multimedia application: According to the continuity of the packet number, it is relatively easy to judge the network packet loss on the terminal side, and thus it is easier to implement the retransmission effect and improve the quality of the experience.
4、 时钟参考标识  4, clock reference identification
该字段可以进行精确的编解码时钟定义, 该时钟可以作为各个数据包编 码同步的精确时钟参考; 该时钟参考标识位数至少定义为 32位, 以及定义到 32位以上。 该字段在多媒体应用中主要包含如下的应用优势: 该字段可以承 载各路媒体源精确的时钟参考, 以保证客户端进行精确的解码和同步。  This field allows for an accurate codec clock definition that can be used as an accurate clock reference for individual packet code synchronization; the clock reference identification bits are defined at least 32 bits and are defined to more than 32 bits. This field mainly includes the following application advantages in multimedia applications: This field can carry accurate clock references of various media sources to ensure accurate decoding and synchronization of the client.
5、 媒体码流关键信息标识字段 该字段可以釆用 8位以及 8位以上位数进行表示, 描述媒体码流的关键 信息, 该字段说明参见图 1。 5, media code stream key information identification field This field can be represented by 8 bits and more than 8 digits. It describes the key information of the media stream. See Figure 1 for the description of this field.
对于视频媒体码流, 可以定义描述该码流的 SVC属性和依赖关系, 以及 MVC角度信息, 同时可以增加字段扩展视频帧的相关关键信息。  For the video media stream, an SVC attribute and a dependency describing the code stream, and MVC angle information may be defined, and relevant key information of the field extended video frame may be added.
对于音频码流, 可以定义描述该码流的语种信息;  For an audio stream, language information describing the stream can be defined;
对于字幕码流, 可以定义描述该码流的字幕语言信息;  For the subtitle stream, subtitle language information describing the stream may be defined;
其中, 视频帧的相关关键信息, 可以进一步描述视频帧的相关帧信息和 帧数据边界, 以更好的实现将媒体关键信息提取到主要传输字段中, 以更容 易达到更为完整的多媒体应用。  The relevant key information of the video frame can further describe the related frame information and the frame data boundary of the video frame, so as to better extract the key information of the media into the main transmission field, so as to more easily achieve a more complete multimedia application.
通过该字段, 可标识出视频媒体帧的如下信息: IDR— Start ( IDR帧的起 始); IDR Middle ( IDR帧的中间); IDR_end ( IDR帧的结束); ODR Start ( ODR帧的起始) ; ODR Middle ( ODR帧的中间) ; ODR End ( ODR帧 的结束) ; GDR_Start ( GDR帧的起始) ; GDR Middle ( GDR帧的中间) ; GDR End ( GDR帧的结束); B Start ( B帧的起始); B Middle ( B帧的中 间 ) ; B_End ( B帧的结束) ; P Start ( P帧的起始 ) ; P_Middle ( P帧的中 间 ) ; P_End ( P帧的结束) 。  This field identifies the following information for the video media frame: IDR—Start (start of IDR frame); IDR Middle (in the middle of the IDR frame); IDR_end (end of IDR frame); ODR Start (start of ODR frame) ; ODR Middle (the middle of the ODR frame); ODR End (the end of the ODR frame); GDR_Start (the start of the GDR frame); GDR Middle (the middle of the GDR frame); GDR End (the end of the GDR frame); B Start ( B frame start); B Middle (between B frames); B_End (end of B frame); P Start (start of P frame); P_Middle (in the middle of P frame); P_End (end of P frame).
字段在多媒体应用中主要包含如下的应用优势: 1、对于客户端的随机接 入, 可以方便找到相关视频帧; 2、 可以方便剥离出关键帧进行多媒体应用; 3、 网络设备可以釆用这些信息进行数据包緩冲, 满足更多应用。  The field mainly includes the following application advantages in the multimedia application: 1. For the random access of the client, the related video frame can be conveniently found; 2. The key frame can be conveniently stripped for multimedia application; 3. The network device can use the information to perform Packet buffering for more applications.
如图 2所示, 为利用此种数据包格式进行主要业务的一个全过程, 将其 作为一具体的应用示例进一步说明本发明。  As shown in FIG. 2, in order to perform a whole process of main service using such a packet format, the present invention will be further described as a specific application example.
首先, 多媒体编码器进行釆集视频源以及音频源, 经过一定处理, 形成 节目码流, 该节目码流可以考虑一个比较复杂模型进行说明, 我们假设, 该 节目码流包含两个角度的视频码流,其中一个角度的视频码流是釆用 SVC进 行编码的码流, 我们称之为 A视频码流, 即 A视频码流包含一个基本层次码 流, 称之为 A视频基本层码流; 以及一个增强层码流, 称之为 A视频增强层 码流; 同时, 另外一路视频码流称之为 B视频码流; 同时包含英语音频码流 和中文音频码流和一个字幕层码流。 综上所示,该节目码流一共包含六路媒体流,分别是 A视频基本层码流, A视频增强层码流, B视频码流, 英语音频码流, 中文音频码流和字幕层码 流; 该六路媒体流根据前述说明, 进行封装, 封装方式必要字段按照上述说 明进行, 并且由多媒体编码器输出到 IP网络上; 此过程对应说明书附图中的 箭头 A标示。 First, the multimedia encoder performs the collection of the video source and the audio source, and after some processing, forms a program code stream, and the program code stream can be described by considering a relatively complex model. We assume that the program code stream contains two angles of video code. Stream, one of the video streams is a code stream encoded by SVC, which we call A video stream, that is, the A video stream contains a basic layer code stream, which is called A video base layer stream; And an enhancement layer code stream, referred to as an A video enhancement layer code stream; meanwhile, another video code stream is referred to as a B video code stream; and includes an English audio code stream and a Chinese audio code stream and a subtitle layer code stream. In summary, the program stream includes a total of six media streams, namely an A video base layer stream, an A video enhancement layer stream, a B video stream, an English audio stream, a Chinese audio stream, and a subtitle layer stream. The six-way media stream is encapsulated according to the foregoing description, and the necessary fields of the encapsulation mode are performed according to the above description, and output by the multimedia encoder to the IP network; this process is indicated by the arrow A in the drawing of the specification.
下面对本例实现的功能或应用分别描述:  The following describes the functions or applications implemented in this example:
一、多路媒体源在同一个 UDP/IP网络通道(同一个网络端口资源 M专输。 该功能主要依靠该封装格式中的媒体码流标识字段实现, 其中, 封装和 传输的步骤如下:  1. The multi-channel media source is in the same UDP/IP network channel (the same network port resource M is dedicated to transmit. This function mainly depends on the media stream identification field in the encapsulation format, wherein the steps of encapsulation and transmission are as follows:
第一步, 多媒体编码器釆集相应的视音频, 字幕媒体, 按照下述方法进 行封装:  In the first step, the multimedia encoder collects the corresponding video and audio, and the subtitle media is encapsulated as follows:
按照数据包的媒体类型填写媒体码流标识字段, 按照数据包的序号填写 数据包序号字段, 按照数据包的总长度填写数据包格式负载长度标识, 以及, 按照各个媒体码流的编码时间填写时钟参考标识字段, 以及根据各个媒体码 流的关键信息填写媒体码流关键信息标识字段。  Fill in the media stream identification field according to the media type of the data packet, fill in the data packet sequence number field according to the serial number of the data packet, fill in the data packet format payload length identifier according to the total length of the data packet, and fill in the clock according to the coding time of each media code stream. Refer to the identification field, and fill in the media stream key information identification field according to the key information of each media stream.
第二步, 将每个媒体流数据包(实施例包含六个媒体流)按照确定好的 顺序和 UDP端口资源 , 从 UDP协议的一个确定发送端口发送到一个确定的 接收端口。  In the second step, each media stream packet (the embodiment includes six media streams) is sent from a determined sending port of the UDP protocol to a determined receiving port according to a determined sequence and UDP port resources.
该节目码流在网络上的传输方式是一路节目的多路媒体在一个 UDP通 道确定的端口资源内传送。 可以才艮据图 2中的箭头 B描述所示。  The program stream is transmitted over the network in such a manner that the multi-channel media of the program is transmitted within the port resources determined by a UDP channel. It can be shown in the description of arrow B in Figure 2.
二、 节目媒体码流提取和组合功能  Second, the program media stream extraction and combination function
该功能主要依靠媒体码流标识字段和媒体码流关键信息标识字段实现; 以图 2中媒体服务器进行说明:  This function mainly relies on the media stream identification field and the media stream key information identification field; the media server in Figure 2 illustrates:
按照图 2中的箭头 B标识过程,节目的多路媒体码流输出到媒体服务器。 媒体服务器可以根据上述数据包格式, 按照应用需求进行分拣, 存储或緩冲。  The process is identified by the arrow B in Figure 2, and the multi-media stream of the program is output to the media server. The media server can sort, store or buffer according to the application requirements according to the above packet format.
比如, 媒体服务器可以根据媒体码流标识字段和媒体码流关键信息标识 字段进行码流的分拣, 然后组合成为一路用户需求的码流, 发送给媒体播放 器 2进行播放解码, 码流传输如图 2中的 F和 G箭头标识; 如果应用需要切 换一路媒体流, 例如更换 A视频基本层码流为 B视频码流; 或者增加 B视频 码流; 都可以通过 H箭头标识进行反馈, 由媒体服务器进行对应的码流更换 或者增加对应码流进行发送。 For example, the media server may perform code stream sorting according to the media code stream identification field and the media code stream key information identification field, and then combine the code stream that is required by the user to be sent to the media player 2 for playing and decoding, and the code stream is transmitted. The F and G arrows in Figure 2 are identified; if the application requires cutting Change one media stream, for example, replace the A video base layer code stream into a B video code stream; or add a B video code stream; both can use the H arrow identifier to perform feedback, and the media server performs corresponding code stream replacement or increases the corresponding code stream. send.
三、 丟包补偿功能实现  Third, the loss of packet compensation function
该功能主要依靠媒体码流标识字段和数据包序号字段实现; 下面的以图 This function mainly relies on the media stream identification field and the packet sequence number field; the following figure
2中媒体播放器 1和媒体服务器进行说明: 2 media player 1 and media server for explanation:
第一步, 媒体播放器 1可以接收多媒体编码器输出的原始码流(如箭头 C 标识) , 可以根据媒体码流中的媒体码流标识字段和媒体码流关键信息标 识字段选择用户所需要的实际码流。  In the first step, the media player 1 can receive the original code stream output by the multimedia encoder (as indicated by the arrow C), and can select the user according to the media stream identification field and the media stream key information identification field in the media stream. Actual code stream.
第二步, 媒体播放器 1可以根据接收到的媒体码流中的媒体码流标识字 段和数据包序号进行网络丟包检测, 发生丟包时, 通过图中的箭头 D标识向 媒体服务器进行反馈, 通过图中的箭头 E标识由媒体服务器将緩冲的数据包 进行补偿发送, 提高用户体验质量。  In the second step, the media player 1 can perform network packet loss detection according to the media code stream identification field and the data packet sequence number in the received media stream, and when the packet is lost, the message is sent to the media server through the arrow D in the figure. The arrow E in the figure indicates that the buffered data packet is compensated and transmitted by the media server, thereby improving the quality of the user experience.
四、 传输资源充分利用  Fourth, the full use of transmission resources
该功能主要依靠数据包格式负载长度标识字段实现, 该数据包格式中的 该字段为可变长定义, 即每个数据包的长度是不同的。  This function is mainly implemented by the packet format payload length identification field. The field in the packet format is a variable length definition, that is, the length of each packet is different.
一般地, 对于视频码流, 由于视频数据较多, 可以确定该数据包长度接 近于网络设备的 MTU ( Maximum Transmission Unit, 最大传输单元 )值; 一般地, 对于音频码流或者字幕码流, 由于类似媒体码流数据较少, 可 以为较小值的数据包长度;  Generally, for a video code stream, since the video data is more, it can be determined that the data packet length is close to the MTU (Maximum Transmission Unit) value of the network device; generally, for the audio stream or the subtitle stream, Similar media stream data is less, can be a smaller value of the packet length;
不同长度的数据包, 可以组合在一起承载在一个 UDP传输包中进行传 输。 该种方法可以节省网络资源, 使传输资源得到充分利用。  Packets of different lengths can be combined and carried in a UDP transport packet for transmission. This method can save network resources and make full use of transmission resources.
五、 媒体码流关键信息标识字段中的视频帧的相关关键信息应用 实现如下具体功能主要依靠媒体码流关键信息标识字段中的视频帧的相 关关键信息, 下面对应用功能详细进行说明:  V. Relevant key information application of video frames in the key information identification field of the media stream stream The following specific functions mainly rely on the relevant key information of the video frames in the key information identification field of the media stream stream. The following describes the application functions in detail:
第一种应用,在码流传输数据包中包含 I帧相关标识( IDR ( Instantaneous Decoding Refresh, 即时解码刷新帧) , ODR ( Open-GOP Decoding Refresh, 开启图像组解码刷新帧) , GDR ( Gradual Decoding Refresh, 渐进解码刷新 帧) )可以使相关应用层设备识别 I帧, 并且进行应用处理, 比如, 可以对 I 帧进行緩冲, 用于频道快速切换(快速 I帧发送或播放) ; The first application includes an I-frame related identifier (IDR (Instantaneous Decoding Refresh), ODR (Open-GOP Decoding Refresh), and GDR (Gradual Decoding) in the code stream transmission packet. Refresh, progressive decoding refresh Frame)) enables the relevant application layer device to recognize the I frame and perform application processing. For example, the I frame can be buffered for fast channel switching (fast I frame transmission or playback);
第二种应用,在码流传输数据包中包含 I帧相关标识( IDR, ODR, GDR ) 可以使相关应用层设备识别 I帧,并且进行应用处理, 比如可以根据 I帧标识 建立索引, 用于特技模式实现;  In the second application, the I-frame correlation identifier (IDR, ODR, GDR) is included in the code stream transmission data packet, so that the relevant application layer device can identify the I frame and perform application processing, for example, the index can be established according to the I frame identifier, and used for Stunt mode implementation;
第三种应用,在码流传输数据包中包含 I帧相关标识( IDR, ODR, GDR ) 可以使相关应用层设备识别 I帧, 并且进行应用处理, 比如, 可以剥离存储, 用于关键帧数据独立存储等。  The third application, including the I-frame correlation identifier (IDR, ODR, GDR) in the code stream transmission data packet, enables the relevant application layer device to identify the I frame and perform application processing, for example, stripping storage for key frame data. Independent storage, etc.
第四种应用, 在码流传输数据包中包含 B帧相关标识, 可以在网络资源 不足时由网络设备直接不转发 B帧, 节省网络资源, 达到更为多样的应用。  In the fourth application, the B-frame correlation identifier is included in the code stream transmission data packet, and the network device can directly not forward the B frame when the network resource is insufficient, thereby saving network resources and achieving more diverse applications.
媒体码流关键信息标识字段中的视频帧的相关关键信息相关的应用不能 穷举。  The application related to the key information of the video frame in the key stream identification field of the media stream cannot be exhaustive.
六、 时钟参考应用  Sixth, clock reference application
实现如下具体功能主要依靠数据包格式中的时钟参考字段结合其他字段 进行应用, 下面对应用功能详细进行说明:  The following specific functions are mainly implemented by using the clock reference field in the packet format in combination with other fields. The following describes the application functions in detail:
第一种应用, 根据数据包中的该时钟参考和解析, 在客户端可以完整完 成多路媒体类型的严格同步。  The first application, based on the clock reference and parsing in the packet, can complete the strict synchronization of multiple media types on the client.
第二种应用, 该时钟参考可以作为播放器的解码恢复时钟参考。  In the second application, the clock reference can be used as a decoding recovery clock reference for the player.
相应地, 本发明实施例的流媒体处理装置, 包括封装模块和发送模块, 其中, Correspondingly, the streaming media processing device of the embodiment of the present invention includes a package module and a sending module, where
所述封装模块设置成对数据包进行封装, 其中, 针对媒体码流的每个数 据包: 按照该数据包的媒体类型, 将媒体码流标识写入该数据包的数据包头 中; 按照该数据包在该媒体码流标识对应的媒体码流中的序号, 将数据包序 号写入该数据包的数据包头中; 以及, 按照该数据包的总长度, 将数据包格 式负载长度标识写入该数据包的数据包头中。  The encapsulating module is configured to encapsulate a data packet, where each data packet for the media code stream is: according to the media type of the data packet, writing the media code stream identifier into a data packet header of the data packet; according to the data The serial number in the media code stream corresponding to the media stream identifier, the data packet number is written into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length identifier is written into the data packet header The packet header in the packet.
可选地, 所述封装模块还可设置成: 针对媒体码流的每个数据包: 按照 该数据包的媒体码流编码时间,将时钟参考标识写入该数据包的数据包头中; 按照该数据包的媒体码流关键信息, 将媒体码流关键信息标识写入该数据包 的数据包头中。 Optionally, the encapsulating module is further configured to: each data packet for the media code stream: writing a clock reference identifier into a data packet header of the data packet according to a media code stream encoding time of the data packet; According to the media stream key information of the data packet, the media stream key information identifier is written into the packet header of the data packet.
所述发送模块设置成将所述封装模块输出的每个封装后的数据包通过同 一个 UDP通道发送给一个或多个接收端。  The sending module is configured to send each encapsulated data packet output by the encapsulating module to one or more receiving ends through the same UDP channel.
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序 来指令相关硬件完成, 所述程序可以存储于计算机可读存储介质中, 如只读 存储器、 磁盘或光盘等。 可选地, 上述实施例的全部或部分步骤也可以使用 一个或多个集成电路来实现, 相应地, 上述实施例中的各模块 /单元可以釆用 硬件的形式实现, 也可以釆用软件功能模块的形式实现。 本发明不限制于任 何特定形式的硬件和软件的结合。 One of ordinary skill in the art will appreciate that all or a portion of the above steps may be accomplished by a program instructing the associated hardware, such as a read-only memory, a magnetic disk, or an optical disk. Optionally, all or part of the steps of the foregoing embodiments may also be implemented by using one or more integrated circuits. Accordingly, each module/unit in the foregoing embodiment may be implemented in the form of hardware, or may use software functions. The form of the module is implemented. The invention is not limited to any specific form of combination of hardware and software.
以上所述仅为本发明的优选实施例而已, 并不用于限制本发明, 对于本 领域的技术人员来说, 本发明可以有各种更改和变化。 凡在本发明的精神和 原则之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护 范围之内。  The above description is only the preferred embodiment of the present invention, and is not intended to limit the present invention, and various modifications and changes can be made to the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and scope of the present invention are intended to be included within the scope of the present invention.
工业实用性 Industrial applicability
与现有技术相比,本发明中,封装后的数据包可以直接承载在 UDP、 TCP 等传输层协议上进行传输, 也可以承载在 RTP, HTTP等应用层协议上进行 传输, 在任何传输承载方式上, 该封装后的数据包都可以得到高效的数据传 输, 可以提供丟包补偿信息, 也可以保证更好的多路码流同步效果; 此外, 封装后的数据包中包含媒体码流关键信息, 在应用层次和设备层次可以根据 该信息进行应用扩展。  Compared with the prior art, in the present invention, the encapsulated data packet may be directly transmitted on a transport layer protocol such as UDP or TCP for transmission, or may be carried on an application layer protocol such as RTP or HTTP, in any transport bearer. In this way, the encapsulated data packet can obtain efficient data transmission, can provide packet loss compensation information, and can also ensure better multi-channel code stream synchronization effect; in addition, the encapsulated data packet includes media code stream key Information, at the application level and device level, can be extended based on this information.

Claims

权 利 要 求 书 Claim
1、 一种流媒体数据包的封装方法, 包括:  A method for packaging a streaming media data packet, comprising:
针对媒体码流的每个数据包: 按照该数据包的媒体类型, 将媒体码流标 识写入该数据包的数据包头中; 按照该数据包在该媒体码流标识对应的媒体 码流中的序号, 将数据包序号写入该数据包的数据包头中; 以及, 按照该数 据包的总长度, 将数据包格式负载长度标识写入该数据包的数据包头中。  Each data packet for the media stream: according to the media type of the data packet, writing the media code stream identifier into the data packet header of the data packet; according to the data packet in the media code stream corresponding to the media code stream identifier Serial number, the packet sequence number is written into the packet header of the packet; and, according to the total length of the packet, the packet format payload length identifier is written into the packet header of the packet.
2、 如权利要求 1所述的方法, 还包括:  2. The method of claim 1 further comprising:
针对媒体码流的每个数据包: 按照该数据包的媒体码流编码时间, 将时 钟参考标识写入该数据包的数据包头中。  For each packet of the media stream: The clock reference identifier is written to the packet header of the packet according to the media stream encoding time of the packet.
3、 如权利要求 1或 2所述的方法, 还包括:  3. The method of claim 1 or 2, further comprising:
针对媒体码流的每个数据包: 按照该数据包的媒体码流关键信息, 将媒 体码流关键信息标识写入该数据包的数据包头中。  For each packet of the media stream: According to the media stream key information of the packet, the media stream key information identifier is written into the packet header of the packet.
4、 如权利要求 3所述的方法, 其中, 针对媒体码流的每个数据包: 若所述数据包为视频媒体码流的数据包, 则所述媒体码流关键信息包括 如下信息中的一种或多种: 可扩展视频编码(SVC )属性和依赖关系、 多视 点视频编码(MVC ) 角度信息、 以及视频帧的相关关键信息;  4. The method according to claim 3, wherein, for each data packet of the media code stream: if the data packet is a data packet of a video media stream, the media stream key information includes the following information One or more of: scalable video coding (SVC) attributes and dependencies, multi-view video coding (MVC) angle information, and related key information of video frames;
若所述数据包为音频码流的数据包, 则所述媒体码流关键信息包括媒体 码流的语种信息;  If the data packet is a data packet of an audio stream, the media stream key information includes language information of the media stream;
若所述数据包为字幕码流的数据包, 则所述媒体码流关键信息包括媒体 码流的字幕语音信息。  If the data packet is a data packet of a subtitle stream, the media stream key information includes subtitle voice information of the media stream.
5、 如权利要求 4所述的方法, 其中,  5. The method of claim 4, wherein
所述视频帧的相关关键信息包括视频帧的相关帧信息和帧数据边界。 The relevant key information of the video frame includes related frame information of the video frame and a frame data boundary.
6、 一种流媒体传输的方法, 包括: 6. A method of streaming media transmission, comprising:
发送端对数据包进行封装, 其中, 针对媒体码流的每个数据包: 按照该 数据包的媒体类型, 将媒体码流标识写入该数据包的数据包头中; 按照该数 据包在该媒体码流标识对应的媒体码流中的序号, 将数据包序号写入该数据 包的数据包头中; 以及, 按照该数据包的总长度, 将数据包格式负载长度标 识写入该数据包的数据包头中; 以及 The sending end encapsulates the data packet, where each data packet for the media code stream: according to the media type of the data packet, writes the media code stream identifier into the data packet header of the data packet; according to the data packet in the media packet The code stream identifies the serial number in the corresponding media stream, and writes the data packet number into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length Know the data packet header of the packet; and
所述发送端将每个封装后的数据包通过同一个用户数据包协议 ( UDP ) 通道发送给一个或多个接收端。  The sender sends each encapsulated data packet to one or more receiving ends through the same User Datagram Protocol (UDP) channel.
7、 如权利要求 6所述的方法, 其中,  7. The method of claim 6, wherein
对数据包进行封装的步骤中,所述发送端还针对媒体码流的每个数据包, 按照该数据包的媒体码流编码时间, 将时钟参考标识写入该数据包的数据包 头中。  In the step of encapsulating the data packet, the transmitting end further writes the clock reference identifier into the data packet header of the data packet according to the media code stream encoding time of the data packet for each data packet of the media code stream.
8、 如权利要求 6或 7所述的方法, 其中,  8. The method according to claim 6 or 7, wherein
对数据包进行封装的步骤中,所述发送端还针对媒体码流的每个数据包, 按照该数据包的媒体码流关键信息, 将媒体码流关键信息标识写入该数据包 的数据包头中。  In the step of encapsulating the data packet, the sending end further writes the media code stream key information identifier into the data packet header of the data packet according to the media code stream key information of the data packet for each data packet of the media code stream. in.
9、 如权利要求 8所述的方法, 其中, 针对媒体码流的每个数据包: 若所述数据包为视频媒体码流的数据包, 则所述媒体码流关键信息包括 如下信息中的一种或多种: 可扩展视频编码(SVC )属性和依赖关系、 多视 点视频编码(MVC ) 角度信息、 以及视频帧的相关关键信息;  9. The method according to claim 8, wherein each data packet for the media code stream: if the data packet is a data packet of a video media stream, the media stream key information includes the following information One or more of: scalable video coding (SVC) attributes and dependencies, multi-view video coding (MVC) angle information, and related key information of video frames;
若所述数据包为音频码流的数据包, 则所述媒体码流关键信息包括媒体 码流的语种信息;  If the data packet is a data packet of an audio stream, the media stream key information includes language information of the media stream;
若所述数据包为字幕码流的数据包, 则所述媒体码流关键信息包括媒体 码流的字幕语音信息。  If the data packet is a data packet of a subtitle stream, the media stream key information includes subtitle voice information of the media stream.
10、 如权利要求 9所述的方法, 其中,  10. The method of claim 9, wherein
所述视频帧的相关关键信息包括视频帧的相关帧信息和帧数据边界。 The relevant key information of the video frame includes related frame information of the video frame and a frame data boundary.
11、 如权利要求 6所述的方法, 其中, 所述发送端将每个封装后的数据 包通过同一个 UDP通道发送给一个或多个接收端的步骤包括: The method of claim 6, wherein the sending end sends each encapsulated data packet to the one or more receiving ends through the same UDP channel, including:
所述发送端将一个以上封装后的数据包组合成大的数据包发送给接收 端。  The transmitting end combines one or more encapsulated data packets into a large data packet and sends the data packet to the receiving end.
12、 如权利要求 8所述的方法, 还包括:  12. The method of claim 8 further comprising:
所述接收端接收到发送端发送的数据包后, 根据所接收到的数据包的数 据包头中的媒体码流标识和媒体码流关键信息标识, 对媒体码流进行分拣, 选择需要的媒体码流进行转发或播放。 After the receiving end receives the data packet sent by the transmitting end, according to the number of received data packets According to the media code stream identifier and the media code stream key information identifier in the packet header, the media code stream is sorted, and the required media code stream is selected for forwarding or playing.
13、 如权利要求 6所述的方法, 还包括:  13. The method of claim 6 further comprising:
接收端从所述发送端直接或间接接收到数据包后, 则根据所接收到的数 据包的数据包头中的媒体码流标识和数据包序号判断是否有丟包, 如果有丟 包, 则从保存有与所丟失的数据包相对应的媒体码流的服务器获取丟失的数 据包。  After receiving the data packet directly or indirectly from the transmitting end, the receiving end determines whether there is a packet loss according to the media code stream identifier and the data packet number in the data packet header of the received data packet, and if there is a packet loss, A server that holds a media stream corresponding to the lost packet acquires the lost packet.
14、 如权利要求 7所述的方法, 还包括:  14. The method of claim 7 further comprising:
所述接收端从所述发送端直接或间接接收到数据包后, 根据所接收到的 数据包的数据包头中的时钟参考标识进行多路媒体码流的同步。  After receiving the data packet directly or indirectly from the transmitting end, the receiving end synchronizes the multi-media media code stream according to the clock reference identifier in the data packet header of the received data packet.
15、 一种流媒体处理装置, 包括封装模块,  15. A streaming media processing device, comprising a package module,
所述封装模块设置成对数据包进行封装, 其中, 针对媒体码流的每个数 据包: 按照该数据包的媒体类型, 将媒体码流标识写入该数据包的数据包头 中; 按照该数据包在该媒体码流标识对应的媒体码流中的序号, 将数据包序 号写入该数据包的数据包头中; 以及, 按照该数据包的总长度, 将数据包格 式负载长度标识写入该数据包的数据包头中。  The encapsulating module is configured to encapsulate a data packet, where each data packet for the media code stream is: according to the media type of the data packet, writing the media code stream identifier into a data packet header of the data packet; according to the data The serial number in the media code stream corresponding to the media stream identifier, the data packet number is written into the data packet header of the data packet; and, according to the total length of the data packet, the data packet format payload length identifier is written into the data packet header The packet header in the packet.
PCT/CN2011/081273 2011-01-11 2011-10-25 Method for encapsulating and transmitting streaming media packet, and device for processing streaming media WO2012094916A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201110004683.4 2011-01-11
CN2011100046834A CN102595199A (en) 2011-01-11 2011-01-11 Streaming media packet packaging and transmitting method, and streaming media processing device

Publications (1)

Publication Number Publication Date
WO2012094916A1 true WO2012094916A1 (en) 2012-07-19

Family

ID=46483337

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/081273 WO2012094916A1 (en) 2011-01-11 2011-10-25 Method for encapsulating and transmitting streaming media packet, and device for processing streaming media

Country Status (2)

Country Link
CN (1) CN102595199A (en)
WO (1) WO2012094916A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104168185A (en) * 2014-08-26 2014-11-26 深圳市中兴物联科技有限公司 Acquired data transmitting method and device
WO2015085744A1 (en) * 2013-12-13 2015-06-18 Tencent Technology (Shenzhen) Company Limited Method and apparatus for transmitting data packets
US9525629B2 (en) 2013-12-13 2016-12-20 Tencent Technology (Shenzhen) Company Limited Method and apparatus for transmitting data packets
WO2020107268A1 (en) * 2018-11-28 2020-06-04 深圳市大疆创新科技有限公司 Gdr code stream encoding method, terminal device, and machine-readable storage medium
CN113992980A (en) * 2020-07-09 2022-01-28 杭州海康威视数字技术股份有限公司 Generation method, device and equipment of attack code stream

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102917276B (en) * 2012-11-12 2016-02-24 武汉市烽视威科技有限公司 A kind of Interleave method for packing being applied to streaming media service
JP6506009B2 (en) * 2013-11-22 2019-04-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America Transmission method, reception method, transmission apparatus, and reception apparatus
CN103905922B (en) * 2014-03-18 2017-08-25 深圳市云宙多媒体技术有限公司 A kind of stream media protocol method for packing and device based on http agreements
CN104811749A (en) * 2015-03-18 2015-07-29 天脉聚源(北京)传媒科技有限公司 Multimedia data transmission method and device
CN106060061B (en) * 2016-06-22 2019-02-22 新奥特(北京)视频技术有限公司 A kind of implementation method and device of Streaming Media interaction
CN109842465A (en) * 2017-11-24 2019-06-04 阿里巴巴集团控股有限公司 Data transmission method, data end equipment
CN108322774A (en) * 2018-03-01 2018-07-24 郑州云海信息技术有限公司 A kind of transmission method of video data, device and medium
CN108989314A (en) * 2018-07-20 2018-12-11 北京木瓜移动科技股份有限公司 A kind of Transmitting Data Stream, processing method and processing device
CN110505038B (en) * 2019-08-30 2022-03-22 苏州浪潮智能科技有限公司 Data transmission method and related device
CN111541916B (en) * 2020-04-17 2022-08-26 海信视像科技股份有限公司 Code stream transmission method and device
CN112422550A (en) * 2020-11-16 2021-02-26 成都卓元科技有限公司 Network security transmission system based on video transmission board card
CN112653691B (en) * 2020-12-18 2023-04-18 脸萌有限公司 Data processing method, device, equipment and storage medium
CN112702353A (en) * 2020-12-28 2021-04-23 咪咕文化科技有限公司 Streaming media transmission method, electronic device and storage medium
EP4294023A4 (en) * 2021-03-04 2024-04-10 Huawei Tech Co Ltd Data processing method and device
WO2022198357A1 (en) * 2021-03-22 2022-09-29 华为技术有限公司 Data processing method and transmission device, and data processing system
CN113301051A (en) * 2021-05-27 2021-08-24 西安万像电子科技有限公司 Data transmission method and device, computer storage medium and processor
CN114125497A (en) * 2021-11-19 2022-03-01 中国电信集团系统集成有限责任公司 SFU architecture, media transmission method thereof and electronic equipment
CN114205429A (en) * 2021-12-14 2022-03-18 深圳壹账通智能科技有限公司 Voice packet processing method, system, equipment and storage medium based on UDP protocol
CN114531606B (en) * 2022-02-22 2023-04-11 重庆紫光华山智安科技有限公司 Method, system and equipment for generating packaged video data to be transmitted and transmitting video

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516184A (en) * 2003-01-10 2004-07-28 华为技术有限公司 Processing method of multi-media data
CN1612621A (en) * 2003-10-29 2005-05-04 中兴通讯股份有限公司 Base station internal real-time service data transmitting method
US7272658B1 (en) * 2003-02-13 2007-09-18 Adobe Systems Incorporated Real-time priority-based media communication
CN101272205A (en) * 2008-05-14 2008-09-24 中兴通讯股份有限公司 Transmission method and device of mobile multimedia broadcasting service parameter information
CN101330348A (en) * 2007-06-19 2008-12-24 中兴通讯股份有限公司 Data encapsulation apparatus and method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516184A (en) * 2003-01-10 2004-07-28 华为技术有限公司 Processing method of multi-media data
US7272658B1 (en) * 2003-02-13 2007-09-18 Adobe Systems Incorporated Real-time priority-based media communication
CN1612621A (en) * 2003-10-29 2005-05-04 中兴通讯股份有限公司 Base station internal real-time service data transmitting method
CN101330348A (en) * 2007-06-19 2008-12-24 中兴通讯股份有限公司 Data encapsulation apparatus and method
CN101272205A (en) * 2008-05-14 2008-09-24 中兴通讯股份有限公司 Transmission method and device of mobile multimedia broadcasting service parameter information

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015085744A1 (en) * 2013-12-13 2015-06-18 Tencent Technology (Shenzhen) Company Limited Method and apparatus for transmitting data packets
US9525629B2 (en) 2013-12-13 2016-12-20 Tencent Technology (Shenzhen) Company Limited Method and apparatus for transmitting data packets
CN104168185A (en) * 2014-08-26 2014-11-26 深圳市中兴物联科技有限公司 Acquired data transmitting method and device
CN104168185B (en) * 2014-08-26 2019-06-21 高新兴物联科技有限公司 A kind of method and device thereof of transmission acquisition data
WO2020107268A1 (en) * 2018-11-28 2020-06-04 深圳市大疆创新科技有限公司 Gdr code stream encoding method, terminal device, and machine-readable storage medium
CN113992980A (en) * 2020-07-09 2022-01-28 杭州海康威视数字技术股份有限公司 Generation method, device and equipment of attack code stream
CN113992980B (en) * 2020-07-09 2023-05-26 杭州海康威视数字技术股份有限公司 Method, device and equipment for generating attack code stream

Also Published As

Publication number Publication date
CN102595199A (en) 2012-07-18

Similar Documents

Publication Publication Date Title
WO2012094916A1 (en) Method for encapsulating and transmitting streaming media packet, and device for processing streaming media
TWI668982B (en) Method and server device for transport interface for multimedia and file transport, and computer-readable storage medium for recording related instructions thereon
KR101972951B1 (en) Method of delivering media data based on packet with header minimizing delivery overhead
TWI686077B (en) Low latency video streaming
CN110447234B (en) Method, apparatus and storage medium for processing media data and generating bit stream
KR100926007B1 (en) Media data processing using distinct elements for streaming and control processes
CN108141455B (en) Deadline signaling for streaming of media data
US20160337424A1 (en) Transferring media data using a websocket subprotocol
CN103947215B (en) Transmit the method and apparatus of media data, the device and method of receiving media data
TW202032998A (en) Multiple decoder interface for streamed media data
US10820024B2 (en) Communication apparatus, communication data generation method, and communication data processing method
TW202037177A (en) Service description for streaming media data
US20180176278A1 (en) Detecting and signaling new initialization segments during manifest-file-free media streaming
US20150312303A1 (en) Determining whether to use sidx information when streaming media data
TW201742463A (en) Sample entries and random access
KR20130119885A (en) Methods of transporting mmt packet for in-network adaptation of layered video
US20160315987A1 (en) Communication devices, communication data generation method, and communication data processing method
CN108632679B (en) A kind of method that multi-medium data transmits and a kind of view networked terminals
TW201743614A (en) Sample entries and random access
CN112771876B (en) Method and apparatus for retrieving media data and method and apparatus for transmitting media data
US10298975B2 (en) Communication apparatus, communication data generation method, and communication data processing method
TW202127897A (en) Multiple decoder interface for streamed media data
CN107707966A (en) A kind of playing method and device of multi-medium data
US20240098130A1 (en) Mixed media data format and transport protocol
Zhen-ping et al. Analysis and implementation of streaming media system based on RTP and MPEG-4

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: 11855740

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: 11855740

Country of ref document: EP

Kind code of ref document: A1