WO2016177248A1 - 一种实时媒体流的编解码方法和装置 - Google Patents

一种实时媒体流的编解码方法和装置 Download PDF

Info

Publication number
WO2016177248A1
WO2016177248A1 PCT/CN2016/078603 CN2016078603W WO2016177248A1 WO 2016177248 A1 WO2016177248 A1 WO 2016177248A1 CN 2016078603 W CN2016078603 W CN 2016078603W WO 2016177248 A1 WO2016177248 A1 WO 2016177248A1
Authority
WO
WIPO (PCT)
Prior art keywords
network device
media stream
rtsp
channel
encoding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2016/078603
Other languages
English (en)
French (fr)
Inventor
谭建国
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of WO2016177248A1 publication Critical patent/WO2016177248A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Definitions

  • the present invention relates to the field of computer application technologies, and in particular, to a codec method and apparatus for real-time media streams.
  • the present invention provides a method and apparatus for encoding and decoding a real-time media stream, so as to improve the playback quality of the real-time media stream.
  • the present invention provides a method for encoding a real-time media stream, the method comprising:
  • the coding manner adopted includes: context-based adaptive variable length coding CAVLC or context-based binary arithmetic coding CABAC.
  • the first network device adopts one or any combination of the following settings when encoding the media stream:
  • adjusting the encoding of the media stream includes: adjusting an encoding manner of the media stream, or adjusting a code rate of the encoding the media stream.
  • the receiving condition includes a packet loss rate
  • Adjusting the encoding manner of the media stream according to the receiving condition includes: if the packet loss rate is greater than a preset first threshold, adjusting a coding mode of the media from CAVLC to CABAC;
  • the coding mode of the media stream is adjusted from CABAC to CAVLC;
  • the first threshold is greater than the second threshold.
  • the receiving condition includes a packet loss rate
  • Adjusting the code rate of the media stream according to the receiving condition includes: if the packet loss rate is greater than a preset third threshold, reducing a code rate of the encoded media stream;
  • the third threshold is greater than the fourth threshold.
  • the media stream includes an audio and video stream
  • the first network device only encodes and transmits the audio stream.
  • the method further includes:
  • the first network device negotiates the RTSP transmission channel and the RTCP feedback channel by using a network connection between the first network device and the second network device.
  • the negotiation of the RTSP sending channel and the RTCP feedback channel includes:
  • RTSP SETUP request by using the network connection, where the RTSP SETUP request carries a port number used by the second network device to establish an RTSP sending channel and a port number used to establish an RTCP feedback channel;
  • the first network device returns, to the second network device, a port number and a session identifier used by the first network device to establish an RTSP sending channel, and a port number and a session identifier used to establish an RTCP feedback channel.
  • the method before negotiating the RTSP sending channel and the RTCP feedback channel, the method further includes:
  • the first network device receives an RTSP DESCRIBE request sent by the second network device by using the network connection, and returns session description information including a media parameter to the second network device for the RTSP DESCRIBE request.
  • the method further includes:
  • the first network device After receiving the RTSP TEARDOWN request sent by the second network device by using the network connection, the first network device stops encoding and sending the media stream, releases the RTSP sending channel and the RTCP feedback channel, and closes the Said network connection.
  • the first network device is a server
  • the second network device is a set top box or a smart TV
  • the first network device is a cloud box, and the second network device is a set top box or a smart TV; or the first network device and the second network device are terminal devices in a video conference.
  • the present invention also provides a method for decoding a real-time media stream, the method comprising:
  • the second network device receives the media stream by using an RTSP transmission channel with the first network device, and decodes the media stream; and receives the media stream by using an RTCP feedback channel with the first network device A condition is sent to the first network device such that the first network device adjusts encoding of the media stream in accordance with the reception condition.
  • the second network device is decoding the media stream.
  • the decoding method used includes: CAVLC or CABAC.
  • the method further includes:
  • the second network device negotiates the RTSP transmission channel and the RTCP feedback channel by using a network connection between the first network device and the second network device.
  • the negotiation of the RTSP transmission channel includes:
  • the second network device sends an RTSP SETUP request to the first network device by using the network connection, where the RTSP SETUP request carries a port number used by the second network device to establish an RTSP sending channel and a port used to establish an RTCP feedback channel. number;
  • the second network device receives, by the first network device, a port number and a session identifier used by the first network device to establish an RTSP sending channel, and a port number and a session identifier used to establish an RTCP feedback channel.
  • the method before negotiating the RTSP sending channel and the RTCP feedback channel, the method further includes:
  • the second network device sends an RTSP DESCRIBE request to the first network device by using the network connection, and receives session description information that includes the media parameter returned by the first network device.
  • the method further includes:
  • the second network device sends an RTSP TEARDOWN request to the first network device by using the network connection, releasing the RTSP sending channel and the RTCP feedback channel, and closing the network connection.
  • the first network device is a server
  • the second network device is a set top box or a smart TV
  • the first network device is a cloud box
  • the second network device is a set top box or a smart TV; or
  • the first network device and the second network device are terminal devices in a video conference.
  • the present invention also provides a decoding device for a real-time media stream, the device is disposed on a first network device, and the device includes: an encoding unit, a media stream sending unit, and a feedback receiving unit;
  • the encoding unit is configured to encode the media stream, and adjust the encoding of the media stream according to the receiving status provided by the feedback receiving unit;
  • the media stream sending unit is configured to send the encoded media stream to the second network device by using an RTSP sending channel between the first network device and the second network device;
  • the feedback receiving unit is configured to receive, by using an RTCP feedback channel between the first network device and the second network device, a receiving status of the media stream by the second network device, and provide the receiving status to the coding unit .
  • the coding mode used includes: CAVLC or CABAC.
  • the coding unit adopts the coding mode as CABAC, when encoding the media stream, one or any combination of the following settings is adopted:
  • the coding unit adjusts a coding manner of the media stream or adjusts a code rate of the media stream when adjusting coding of the media stream.
  • the receiving condition includes a packet loss rate
  • the coding unit When the coding unit adjusts the coding manner of the media stream according to the receiving condition, the coding unit specifically performs:
  • the coding mode of the media is adjusted from CAVLC to CABAC;
  • the coding mode of the media stream is adjusted from CABAC to CAVLC;
  • the first threshold is greater than the second threshold.
  • the receiving condition includes a packet loss rate
  • the coding unit adjusts the code rate of the media stream according to the reception status, specifically:
  • the third threshold is greater than the fourth threshold.
  • the media stream includes an audio and video stream
  • the coding unit only encodes and transmits the audio stream.
  • the apparatus further includes: a channel negotiation unit, configured to negotiate the RTSP transmission channel and the RTCP feedback channel by using a network connection between the first network device and the second network device.
  • the channel negotiation unit when the channel negotiation unit negotiates the RTSP transmission channel, the channel negotiation unit performs:
  • an RTSP SETUP request receives, by the network connection, an RTSP SETUP request, where the RTSP SETUP request carries a port number used by the second network device to establish an RTSP sending channel and a port number used to establish an RTCP feedback channel;
  • a port number and a session identifier used by the first network device to establish an RTSP transmission channel, and a port number and a session identifier for establishing an RTCP feedback channel.
  • the channel negotiation unit is further configured to: before negotiating the RTSP sending channel and the RTCP feedback channel:
  • the channel negotiation unit is further configured to: after receiving the RTSP TEARDOWN request sent by the second network device, stop encoding and sending the media stream, release the RTSP sending channel, and The RTCP feedback channel closes the network connection.
  • the invention also provides a decoding device for real-time media stream, which is set in the second network setting
  • the device includes:
  • a media stream receiving unit configured to receive a media stream by using an RTSP sending channel between the first network device and the second network device;
  • a decoding unit configured to decode the media stream
  • a feedback sending unit configured to send, by using an RTCP feedback channel between the first network device and the second network device, a receiving status of the media stream to the first network device, so that the first network device is configured according to the The reception status adjusts the encoding of the media stream.
  • the decoding manner adopted includes: CAVLC or CABAC.
  • the apparatus further includes: a channel negotiation unit, configured to negotiate the RTSP transmission channel and the RTCP feedback channel by using a network connection between the first network device and the second network device.
  • the channel negotiation unit when the channel negotiation unit negotiates the RTSP transmission channel, the channel negotiation unit performs:
  • RTSP SETUP request Sending, by the network connection, an RTSP SETUP request to the first network device, where the RTSP SETUP request carries a port number used by the second network device to establish an RTSP sending channel and a port number used to establish an RTCP feedback channel;
  • the port number and the session identifier of the first network device for establishing an RTSP sending channel receives, by the first network device, the port number and the session identifier of the first network device for establishing an RTSP sending channel, and a port number and a session identifier for establishing an RTCP feedback channel.
  • the channel negotiation unit is further configured to: before negotiating the RTSP sending channel and the RTCP feedback channel:
  • the channel negotiation unit is further configured to send an RTSP TEARDOWN request to the first network device by using the network connection, and release the RTSP The channel and the RTCP feedback channel are closed to close the network connection.
  • the present invention adopts a dynamic coding adjustment mechanism, and the first network device receives the feedback of the second network device to the media stream receiving status through the RTCP feedback channel, and dynamically adjusts the encoding of the media stream by using the receiving condition. To adjust the balance between the network environment and the media stream encoding, thereby improving the playback quality of the real-time media stream.
  • Figure 1a is a system frame diagram on which the present invention is based
  • FIG. 1b is a schematic diagram of a main schematic diagram provided by an embodiment of the present invention.
  • FIG. 3 is a structural diagram of an apparatus for encoding a real-time media stream according to an embodiment of the present invention
  • FIG. 4 is a structural diagram of a decoding apparatus for a real-time media stream according to an embodiment of the present invention.
  • the system framework on which the present invention is based may be as shown in FIG. 1a, and mainly includes a first network device and a second network device.
  • the first network device is a sending end of the media stream, and is responsible for encoding the media stream and sending the data stream to the second network device.
  • the second network device is a receiving end of the media stream, and is responsible for decoding the media stream, so as to decode the media stream.
  • the stream is played, that is, the second network device can simultaneously have the decoding and playing function of the media stream, or can only provide the decoding function, and provide the decoded media stream to other devices for playing.
  • the first network device can be a server and the second network device can be a network set top box or a smart TV.
  • the first network device may be a cloud box, and the second network device may be a regular set top box or a smart TV.
  • the core idea of the present invention is that the first network device sends the encoded media stream to the second network device by using an RTSP (Real Time Streaming Protocol) transmission channel with the second network device; Network device between the first network device and The RTCP (RTP Control Protocol) feedback channel transmits the reception status of the media stream; the first network device adjusts the encoding of the media stream according to the reception status.
  • RTSP Real Time Streaming Protocol
  • the RTCP RTP Control Protocol
  • the main functions of the first network device include:
  • the main functions of the second network device include:
  • the method may specifically include the following steps:
  • the second network device sends a connection request to the first network device, and after the first network device listens to the connection request, establishes a network connection with the second network device.
  • the second network device may send a connection request to the first network device according to the IP address and the port number of the first network device that is preset, and the first network device monitors the connection by using the port corresponding to the port number. After the request, the connection response is fed back to the second network device to establish a network session with the second network device.
  • the second network device sends an RTSP OPTION request to the first network device, where
  • the RTSP OPTION request is used to obtain an available method from the first network device to subsequently send a request to the first network device using the available method.
  • the methods available may include, but are not limited to, DESCRIBE, SETUP, PLAY, TEARDOWN, and the like.
  • the first network device responds to the RTSP OPTION request, returning an available method.
  • the second network device sends an RTSP DESCRIBE request to the first network device, the RTSP DESCRIBE requesting to obtain session description information from the first network device.
  • the first network device responds to the RTSP DESCRIBE request, and returns session description information, where the session description information includes media parameters.
  • the media parameter has meaning for the second network device to decode the media stream, and the media parameter may include coding mode information, SPS, PPS information, and the like.
  • SPS Sequence Parameter Set
  • PPS Image Parameter Set
  • the second network device sends an RTSP SETUP request to the first network device, the RTSP SETUP request for requesting to establish an RTSP transmission channel and an RTCP feedback channel with the first network device.
  • the RTSP SETUP request may carry a port number used by the second network device to establish an RTSP transmission channel and a port number used to establish an RTCP feedback channel.
  • the first network device responds to the RTSP SETUP request, returns a port number and session identifier for establishing the RTSP transmission channel, and a port number and session identifier for establishing the RTCP feedback channel to the second network device.
  • an RTSP PLAY request is sent to the first network device, where the identifier information of the requested playing media stream is carried in the RTSP PLAY request.
  • the first network device responds to the RTSP PLAY request, encodes the media stream requested by the second network device, and sends the encoded media stream to the RTSP sending channel.
  • Second network device responds to the RTSP PLAY request, encodes the media stream requested by the second network device, and sends the encoded media stream to the RTSP sending channel.
  • the coding mode used may include CAVLC (Context Adaptive Variable Length Coder) or CABAC (Context Adaptive Binary Arithmetic Code).
  • CAVLC uses Huffman entropy coding technology
  • CABAC uses arithmetic entropy coding technology.
  • CABAC has higher computational complexity, but the existing chip technology can make the encoder have high enough operation.
  • Speed, and CABAC has a higher compression ratio than the CAVLC in the same video quality, and can achieve an increase of 10% to 15%, so the CABAC coding method is preferred.
  • CABAC encoding one or any combination of the following settings can be used:
  • H.264 defines 4 different profiles: Baseline, Main, Extended, and High Profile. If CABAC is used, you can use Main or High Profile.
  • B-frames can be cancelled to avoid display reordering and system delay.
  • a preferred implementation manner is that the CABAC coding mode is adopted, the main profile is used, the B frame is cancelled, the number of reference frames is set to 1, and the In-Loop Deblocking Filter is set to be effective, and the code rate is set to 3.5 megabits/second.
  • the second network device receives the media stream through the RTSP sending channel, decodes the media stream, and sends the receiving status of the media stream to the first network device through the RTCP feedback channel.
  • the first network device acquires the receiving status of the media stream through the RTCP feedback channel, and adjusts the encoding of the media stream according to the receiving status.
  • the receiving status of the media stream may include a packet loss rate.
  • the encoding mode of the media stream may be adjusted, or the encoding of the media stream may be adjusted.
  • the code rate including increasing or decreasing the bit rate.
  • the coding mode may be adjusted from CAVLC to CABAC.
  • the coding mode may be kept unchanged, and the code rate used in the coding may be reduced.
  • the code rate can be lowered by a preset ratio, or the code rate can be lowered by a preset amplitude, or the code rate can be lowered to a specified value. Assuming that the initial coding mode is CABAC and the code rate is 3.5 megabits/second, if the packet loss rate fed back by the second network element is greater than 5%, the code rate can be reduced to 2 megabits/second.
  • the transmitted media stream is an audio and video stream
  • the code rate of the media stream is to a preset limit threshold
  • the packet loss rate is still greater than the third threshold, for example, if the code rate of the media stream is When the packet loss rate is still greater than 5%, the first network device can only encode the audio and send it to the second network device through the RTSP transmission channel.
  • the coding mode may be adjusted from CABAC to CAVLC. Or if the packet loss rate is less than the preset fourth threshold, the coding mode may be kept unchanged, and the code rate used in the coding is improved. You can increase the code rate by a preset rate, or increase the code rate by a preset amount, or increase the code rate to a specified value.
  • the fourth threshold is less than the third threshold.
  • the first network device can increase the code rate of the media stream to 2 megabits per second. If the packet loss rate is still less than 1%, the first network device can increase the code rate of the media stream to 3.5 megabits per second.
  • the second network device can send an RTSP TEARDOWN request to the first network device.
  • the first network device stops encoding and transmitting the media stream, releases the RTSP sending channel and the RTCP feedback channel with the second network device, and closes the network connection with the second network device.
  • the first network device releases the RTSP sending channel, the RTCP feedback channel, and the port occupied by the network connection, and the second network device also releases the RTSP sending channel and the RTCP feedback channel. And the port occupied by the above network connection.
  • all RTSP requests ie, RTSP OPTIONS request, RTSP DESCRIBE request, RTSP SETUP request, RTSP PLAY request, RTSP TEARDOWN request, etc., and responses to these requests are based on the first network device and the second network device. Between the network connection sent.
  • FIG. 3 is a structural diagram of an apparatus for encoding a real-time media stream according to an embodiment of the present invention.
  • the apparatus may be configured on a first network device for performing functions in the first network device.
  • the apparatus may include: an encoding unit 01, a media stream sending unit 02, and a feedback receiving unit 03, and may further include a channel negotiating unit 04.
  • the main functions of each component are as follows:
  • the encoding unit 01 is responsible for encoding the media stream; and adjusting the encoding of the media stream according to the reception status provided by the feedback receiving unit 03.
  • the media stream sending unit 02 sends the encoded media stream to the second network device by using an RTSP sending channel between the first network device and the second network device.
  • the feedback receiving unit 03 is responsible for receiving the receiving condition of the second network device for the media stream by using the RTCP feedback channel between the first network device and the second network device, and providing the receiving status to the encoding unit 01.
  • the coding unit used by the coding unit 01 when encoding the media stream may include: CAVLC or CABAC, preferably CABAC.
  • the coding mode adopted by the coding unit 01 is CABAC, one or any combination of the following settings may be adopted when encoding the media stream:
  • H.264 defines 4 different profiles: Baseline, Main, Extended, and High Profile. If CABAC is used, you can use Main or High Profile.
  • B-frames can be cancelled to avoid display reordering and system delay.
  • a preferred implementation manner is that the CABAC coding mode is adopted, the main profile is used, the B frame is cancelled, the number of reference frames is set to 1, and the In-Loop Deblocking Filter is set to be effective, and the code rate is set to 3.5 megabits/second.
  • the receiving status of the media stream by the encoding unit 01 may include a packet loss rate.
  • the encoding mode of the media stream may be adjusted, and the code rate used when encoding the media stream may be adjusted, including increasing or decreasing the code rate.
  • the encoding unit 01 adjusts the encoding mode of the media stream according to the receiving condition, if the packet loss rate is greater than the preset first threshold, the encoding mode of the media may be adjusted from CAVLC to CABAC; if the packet loss rate is less than the preset The second threshold adjusts the encoding mode of the media stream from CABAC to CAVLC; wherein the first threshold is greater than the second threshold.
  • the coding unit 01 adjusts the code rate of the encoded media stream according to the receiving condition, if the packet loss rate is greater than the preset third threshold, the code rate of the encoded media stream is decreased; if the packet loss rate is less than the preset fourth threshold, Increase the code rate of the encoded media stream.
  • the code rate can be lowered or increased by a preset ratio, or the code rate can be lowered or increased by a predetermined amount, or the code rate can be lowered or increased to a specified value.
  • the encoding unit 01 may only encode and transmit the audio stream.
  • the channel negotiation unit 04 in the device is responsible for negotiating the RTSP transmission channel and the RTCP feedback channel through the network connection between the first network device and the second network device.
  • the channel negotiating unit 04 Before negotiating the RTSP sending channel and the RTCP feedback channel, the channel negotiating unit 04 first receives an RTSP OPTION request sent by the second network device through the network connection, and returns an available method to the second network device for the RTSP OPTION request; the available method may include Not limited to: DESCRIBE, SETUP, PLAY, TEARDOWN, etc.
  • the channel negotiation unit 04 passes through the negotiation of the RTSP transmission channel and the RTCP feedback channel.
  • the network connection receives an RTSP SETUP request, the RTSP SETUP request carries a port number used by the second network device to establish an RTSP transmission channel and a port number used to establish an RTCP feedback channel; and returns a first network device to the second network device for establishing the RTSP The port number and session ID of the sending channel, and the port number and session ID used to establish the RTCP feedback channel.
  • the channel negotiation unit 04 receives the RTSP TEARDOWN request sent by the second network device, stops encoding and transmitting the media stream, releases the RTSP sending channel and the RTCP feedback channel, and closes the network connection.
  • FIG. 4 is a structural diagram of a decoding device for a real-time media stream according to an embodiment of the present invention.
  • the device may be configured on a second network device for performing the function of the second network device.
  • the device may include The media stream receiving unit 11, the decoding unit 12, and the feedback transmitting unit 13 may further include a channel negotiating unit 14.
  • the main functions of each component are as follows:
  • the media stream receiving unit 11 is responsible for receiving the media stream through the RTSP transmission channel between the first network device and the second network device.
  • the decoding unit 12 is responsible for decoding the media stream.
  • the feedback sending unit 13 is configured to send the receiving status of the media stream to the first network device by using an RTCP feedback channel between the first network device and the second network device, so that the first network device adjusts the encoding of the media stream according to the receiving condition. .
  • the decoding unit 12 may decode the media stream, such as CAVLC or CABAC, preferably CABAC.
  • the channel negotiation unit 14 is responsible for negotiating the RTSP transmission channel and the RTCP feedback channel for the network connection between the first network device and the second network device. Before negotiating the RTSP sending channel and the RTCP feedback channel, the channel negotiating unit 14 sends an RTSP OPTION request to the first network device through the network connection, and receives an available method returned by the first network device, where the available methods may include, but are not limited to, DESCRIBE, SETUP, PLAY, TEARDOWN, etc. The RTSP DESCRIBE request is then sent to the first network device over the network connection, and the session description information including the media parameters returned by the first network device is received. The session description information includes media parameters.
  • the media parameter has meaning for the second network device to decode the media stream
  • the media parameter may include coding mode information, SPS, PPS information, etc.
  • SPS Sequence Parameter Set
  • PPS Image Parameter Set
  • SPS and PPS are used to enhance the codec's error resilience.
  • the RTSP SETUP request may be sent to the first network device through the network connection, where the RTSP SETUP request carries the port number used by the second network device to establish the RTSP transmission channel, and And establishing a port number of the RTCP feedback channel; receiving, by the first network device, a port number and a session identifier used by the first network device to establish an RTSP sending channel, and a port number and a session identifier used to establish an RTCP feedback channel.
  • the channel negotiating unit 14 may send an RTSP TEARDOWN request to the first network device through the network connection, release the RTSP sending channel and the RTCP feedback channel, and close the network connection.
  • the server serves as the first network device, the set top box or the smart TV as the second network device, and the server transmits the video stream such as online live broadcast, online on-demand, and real-time broadcast to the set top box or the smart TV.
  • the personal computers act as a first network device and a second network device, and the personal computer encodes the audio and video input by the camera and the microphone to form an audio and video stream to be transmitted to other personal computers, thereby performing video conference.
  • the cloud box is used as the first network device, and the user equipment such as the set top box or the smart TV is used as the second network device.
  • the user equipment such as the set top box or the smart TV
  • the second network device For users who use a low-profile ordinary set-top box or smart TV, in order to enable this part of users to enjoy high-definition movie TV, somatosensory games and other network services, network service providers have introduced the concept of cloud boxes.
  • the network set-top box is placed in the cloud, and the cloud box system includes a server and multiple cloud boxes. The user only needs to install the cloud box APP in the lower-set ordinary set-top box to use the cloud box service.
  • the user installs various types of APPs to be installed in the cloud box, and does not need to be directly installed in the client device, and the cloud box interacts with the server of the APP to obtain the service content, and then pushes the interface content of the cloud box into the video stream to the video stream.
  • Client device when the cloud box is pushed to the user equipment in the form of a video stream, the cloud box is used as the first network device in the embodiment of the present invention, and the configuration is low.
  • the normal set top box is used as the second network device, and the video stream from the cloud box to the common set top box can be pushed by the manner provided by the embodiment of the present invention, and the code rate of the video stream can be adjusted according to the receiving condition of the video set by the ordinary set top box. To ensure the quality of the video stream playback.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division, and the actual implementation may have another division manner.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the above software functional unit is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to perform the methods of the various embodiments of the present invention. Part of the steps.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program codes. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明提供了一种实时媒体流的编解码方法和装置,其中方法包括:第一网络设备通过与第二网络设备之间的实时媒体流传输协议(RTSP)发送通道,将编码后的媒体流发送给第二网络设备;通过第一网络设备与第二网络设备之间的实时传输控制协议(RTCP)反馈通道,获取第二网络设备对媒体流的接收状况,根据所述接收状况调整对所述媒体流的编码。本发明采用了动态编码调整机制,利用媒体流接收状况动态调整对媒体流的编码,以调整网络环境与媒体流编码之间的平衡,从而提高实时媒体流的播放质量。

Description

一种实时媒体流的编解码方法和装置 【技术领域】
本发明涉及计算机应用技术领域,特别涉及一种实时媒体流的编解码方法和装置。
【背景技术】
目前智能移动设备已经逐渐成为人们获取信息、沟通、娱乐和工作的重要工具,并且随着网络带宽的不断提升,诸如在线直播,实时转播等实时媒体流的传输也越来越普遍。现有技术中,通常在编码媒体流的网络设备端采用固定的编码方式,然后对编码后的媒体流传输至解码服务器的网络设备端。然而,网络环境对于实时媒体流的播放质量有很大的影响,当丢包率大于一定数值的情况下,媒体流的播放质量几乎无法接受,目前的编解码方式并没有考虑到上述问题。
【发明内容】
有鉴于此,本发明提供了一种实时媒体流的编解码方法和装置,以便于提高实时媒体流的播放质量。
具体技术方案如下:
本发明提供了一种实时媒体流的编码方法,该方法包括:
第一网络设备通过与第二网络设备之间的实时媒体流传输协议RTSP发送通道,将编码后的媒体流发送给第二网络设备;
通过第一网络设备与第二网络设备之间的实时传输控制协议RTCP反馈通道,获取第二网络设备对媒体流的接收状况,根据所述接收状况调整对所述媒体流的编码。
根据本发明一可选实施方式,所述第一网络设备对所述媒体流进行编码时,采用的编码方式包括:基于上下文的自适应变长编码CAVLC或者基于上下文的二进制算术编码CABAC。
根据本发明一可选实施方式,如果所述采用的编码方式采用CABAC,则所述第一网络设备在编码所述媒体流时,采用以下设置中一种或任意组合:
采用主要类Main Profile或高端类High Profile;
取消B帧;
设置环路滤波器;
设置1个或多于1个的参考帧。
根据本发明一可选实施方式,调整对所述媒体流的编码包括:调整对所述媒体流的编码方式,或者调整编码所述媒体流的码率。
根据本发明一优选实施方式,所述接收状况包括丢包率;
根据所述接收状况调整对所述媒体流的编码方式包括:如果所述丢包率大于预设的第一阈值,则将对所述媒体的编码方式从CAVLC调整为CABAC;
如果所述丢包率小于预设的第二阈值,则将对所述媒体流的编码方式从CABAC调整为CAVLC;
所述第一阈值大于所述第二阈值。
根据本发明一优选实施方式,所述接收状况包括丢包率;
根据所述接收状况调整编码所述媒体流的码率包括:如果所述丢包率大于预设的第三阈值,则降低编码所述媒体流的码率;
如果所述丢包率小于预设的第四阈值,则提高编码所述媒体流的码率;
所述第三阈值大于所述第四阈值。
根据本发明一优选实施方式,所述媒体流包括音视频流;
如果所述媒体流的码率降至预设的极限阈值,丢包率仍大于所述第三阈值,则所述第一网络设备仅编码并发送音频流。
根据本发明一优选实施方式,该方法还包括:
所述第一网络设备通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
根据本发明一优选实施方式,所述RTSP发送通道和RTCP反馈通道的协商包括:
所述第一网络设备通过所述网络连接接收RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
所述第一网络设备向所述第二网络设备返回所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
根据本发明一优选实施方式,在协商所述RTSP发送通道和所述RTCP反馈通道之前,还包括:
所述第一网络设备通过所述网络连接接收所述第二网络设备发送的RTSP OPTION请求,针对所述RTSP OPTION请求向所述第二网络设备返回可用方法;
所述第一网络设备通过所述网络连接接收所述第二网络设备发送的RTSP DESCRIBE请求,针对所述RTSP DESCRIBE请求向所述第二网络设备返回包括媒体参数的会话描述信息。
根据本发明一优选实施方式,该方法还包括:
所述第一网络设备通过所述网络连接接收到所述第二网络设备发送的RTSP TEARDOWN请求后,停止对所述媒体流的编码和发送,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
根据本发明一可选实施方式,所述第一网络设备为服务器,所述第二网络设备为机顶盒或智能电视;或者,
所述第一网络设备为云盒,所述第二网络设备为机顶盒或智能电视;或者,所述第一网络设备和第二网络设备为视频会议中的终端设备。
本发明还提供了一种实时媒体流的解码方法,该方法包括:
第二网络设备通过与第一网络设备之间的RTSP发送通道接收媒体流,对所述媒体流进行解码;并通过与第一网络设备之间的RTCP反馈通道,将对所述媒体流的接收状况发送给所述第一网络设备,以便所述第一网络设备根据所述接收状况调整对所述媒体流的编码。
根据本发明一可选实施方式,所述第二网络设备在对所述媒体流进行解码 时,采用的解码方式包括:CAVLC或者CABAC。
根据本发明一优选实施方式,该方法还包括:
所述第二网络设备通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
根据本发明一优选实施方式,所述RTSP发送通道的协商包括:
所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
所述第二网络设备接收所述第一网络设备返回的所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
根据本发明一优选实施方式,在协商所述RTSP发送通道和所述RTCP反馈通道之前,还包括:
所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP OPTION请求,接收所述第一网络设备返回的可用方法;
所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP DESCRIBE请求,接收所述第一网络设备返回的包括媒体参数的会话描述信息。
根据本发明一优选实施方式,该方法还包括:
所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP TEARDOWN请求,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
根据本发明一可选实施方式,所述第一网络设备为服务器,所述第二网络设备为机顶盒或智能电视;或者,
所述第一网络设备为云盒,所述第二网络设备为机顶盒或智能电视;或者,
所述第一网络设备和第二网络设备为视频会议中的终端设备。
本发明还提供了一种实时媒体流的解码装置,该装置设置于第一网络设备,该装置包括:编码单元、媒体流发送单元和反馈接收单元;
所述编码单元,用于对媒体流进行编码;根据所述反馈接收单元提供的接收状况,调整对所述媒体流的编码;
所述媒体流发送单元,用于通过第一网络设备和第二网络设备之间的RTSP发送通道,将编码后的媒体流发送给第二网络设备;
所述反馈接收单元,用于通过第一网络设备和第二网络设备之间的RTCP反馈通道,接收所述第二网络设备对媒体流的接收状况,将所述接收状况提供给所述编码单元。
根据本发明一可选实施方式,所述编码单元在对所述媒体流进行编码时,采用的编码方式包括:CAVLC或者CABAC。
根据本发明一优选实施方式,如果所述编码单元采用的编码方式为CABAC,则在编码所述媒体流时,采用以下设置中一种或任意组合:
采用Main Profile或High Profile;
取消B帧;
设置环路滤波器;
设置1个或多于1个的参考帧。
根据本发明一可选实施方式,所述编码单元在调整对所述媒体流的编码时,调整对所述媒体流的编码方式,或者调整编码所述媒体流的码率。
根据本发明一优选实施方式,所述接收状况包括丢包率;
所述编码单元在根据所述接收状况调整对所述媒体流的编码方式时,具体执行:
如果所述丢包率大于预设的第一阈值,则将对所述媒体的编码方式从CAVLC调整为CABAC;
如果所述丢包率小于预设的第二阈值,则将对所述媒体流的编码方式从CABAC调整为CAVLC;
所述第一阈值大于所述第二阈值。
根据本发明一优选实施方式,所述接收状况包括丢包率;
所述编码单元根据所述接收状况调整编码所述媒体流的码率时,具体执行:
如果所述丢包率大于预设的第三阈值,则降低编码所述媒体流的码率;
如果所述丢包率小于预设的第四阈值,则提高编码所述媒体流的码率;
所述第三阈值大于所述第四阈值。
根据本发明一优选实施方式,所述媒体流包括音视频流;
如果所述媒体流的码率将至预设的极限阈值,丢包率仍大于所述第三阈值,则所述编码单元仅编码并发送音频流。
根据本发明一优选实施方式,该装置还包括:通道协商单元,用于通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
根据本发明一优选实施方式,所述通道协商单元在协商RTSP发送通道时,具体执行:
通过所述网络连接接收RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
向所述第二网络设备返回所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
根据本发明一优选实施方式,所述通道协商单元在协商所述RTSP发送通道和所述RTCP反馈通道之前,还用于:
通过所述网络连接接收所述第二网络设备发送的RTSP OPTION请求,针对所述RTSP OPTION请求向所述第二网络设备返回可用方法;
通过所述网络连接接收所述第二网络设备发送的RTSP DESCRIBE请求,针对所述RTSP DESCRIBE请求向所述第二网络设备返回包括媒体参数的会话描述信息。
根据本发明一优选实施方式,所述通道协商单元,还用于接收到所述第二网络设备发送的RTSP TEARDOWN请求后,停止对所述媒体流的编码和发送,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
本发明还提供了一种实时媒体流的解码装置,该装置设置于第二网络设 备,该装置包括:
媒体流接收单元,用于通过第一网络设备与第二网络设备之间的RTSP发送通道接收媒体流;
解码单元,用于对所述媒体流进行解码;
反馈发送单元,用于通过第一网络设备与第二网络设备之间的RTCP反馈通道,将对所述媒体流的接收状况发送给所述第一网络设备,以便所述第一网络设备根据所述接收状况调整对所述媒体流的编码。
根据本发明一可选实施方式,所述解码单元在对所述媒体流进行解码时,采用的解码方式包括:CAVLC或者CABAC。
根据本发明一优选实施方式,该装置还包括:通道协商单元,用于第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
根据本发明一优选实施方式,所述通道协商单元在协商所述RTSP发送通道时,具体执行:
通过所述网络连接向所述第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
接收所述第一网络设备返回的所述第一网络设备用于建立RTSP发送通道的端口号和会话标识、以及用于建立RTCP反馈通道的端口号和会话标识。
根据本发明一优选实施方式,所述通道协商单元在协商所述RTSP发送通道和所述RTCP反馈通道之前,还用于:
通过所述网络连接向所述第一网络设备发送RTSP OPTION请求,接收所述第一网络设备返回的可用方法;
通过所述网络连接向所述第一网络设备发送RTSP DESCRIBE请求,接收所述第一网络设备返回的包括媒体参数的会话描述信息。
根据本发明一优选实施方式,所述通道协商单元,还用于通过所述网络连接向所述第一网络设备发送RTSP TEARDOWN请求,释放所述RTSP发 送通道和RTCP反馈通道,关闭所述网络连接。
由以上技术方案可以看出,本发明采用了动态编码调整机制,第一网络设备通过RTCP反馈通道接收第二网络设备对媒体流接收状况的反馈,并利用该接收状况动态调整对媒体流的编码,以调整网络环境与媒体流编码之间的平衡,从而提高实时媒体流的播放质量。
【附图说明】
图1a为本发明所基于的系统框架图;
图1b为本发明实施例提供的主要原理图;
图2为本发明实施例提供的详细方法流程图;
图3为本发明实施例提供的实时媒体流的编码装置的结构图;
图4为本发明实施例提供的实时媒体流的解码装置的结构图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
本发明所基于的系统框架可以如图1a中所示,主要包括第一网络设备和第二网络设备。其中第一网络设备是媒体流的发送端,负责对媒体流进行编码后发送给第二网络设备;第二网络设备是媒体流的接收端,负责对媒体流进行解码,以便对解码后的媒体流进行播放,即第二网络设备可以同时具备媒体流的解码和播放功能,也可以仅具备解码功能,将解码后的媒体流提供给其他设备进行播放。例如,第一网络设备可以是服务器,第二网络设备可以是网络机顶盒或者智能电视。第一网络设备可以是云盒,第二网络设备可以是普通机顶盒或者智能电视。具体应用场景将在后续进行详细描述。
本发明的核心思想在于,第一网络设备通过与第二网络设备之间的RTSP(Real Time Streaming Protocol,实时流传输协议)发送通道,将编码后的媒体流发送给第二网络设备;第二网络设备通过与第一网络设备之间的 RTCP(RTP Control Protocol,实时流传输控制协议)反馈通道发送对媒体流的接收状况;第一网络设备根据该接收状况调整对媒体流的编码。该过程的主要原理如图1b中所示。
第一网络设备的主要功能包括:
1)通过第一网络设备与第二网络设备之间的RTSP发送通道,将编码后的媒体流发送给第二网络设备。
2)通过第一网络设备与第二网络设备之间的RTCP反馈通道,获取第二网络设备对媒体流的接收状况。
3)根据上述接收状况调整对媒体流的编码。
4)预先进行第一网络设备与第二网络设备之间RTSP发送通道和RTCP反馈通道的协商。
第二网络设备的主要功能包括:
1)通过第一网络设备与第二网络设备之间的RTSP发送通道接收媒体流,对接收到的媒体流进行解码。
2)通过第一网络设备与第二网络设备之间的RTCP反馈通道,将对媒体流的接收状况发送给第一网络设备。
3)预先进行第一网络设备与第二网络设备之间RTSP发送通道和RTCP反馈通道的协商。
上述第一网络设备和第二设备的主要功能的具体实现,将通过图2所示实现流程具体说明。如图2中所示,该方法可以具体包括以下步骤:
在201中,第二网络设备向第一网络设备发送连接请求,第一网络设备监听到该连接请求后,与第二网络设备建立网络连接。
在本发明实施例中,第二网络设备可以依据预先设置的第一网络设备的IP地址和端口号,向第一网络设备发送连接请求,第一网络设备通过上述端口号对应的端口监听到连接请求后,向第二网络设备反馈连接响应,与第二网络设备建立网络会话。
在202中,第二网络设备向第一网络设备发送RTSP OPTION请求,该 RTSP OPTION请求用于从第一网络设备获取可用的方法,以便利用该可用的方法在后续向第一网络设备发送请求。该可用的方法可以包括但不限于:DESCRIBE、SETUP、PLAY、TEARDOWN等。
在203中,第一网络设备针对所述RTSP OPTION请求进行响应,返回可用的方法。
在204中,第二网络设备向第一网络设备发送RTSP DESCRIBE请求,该RTSP DESCRIBE请求用于从第一网络设备获取会话描述信息。
在205中,第一网络设备针对所述RTSP DESCRIBE请求进行响应,返回会话描述信息,该会话描述信息中包括媒体参数。在本发明实施例中,该媒体参数对于第二网络设备解码媒体流具有意义,媒体参数可以包括编码方式信息、SPS、PPS信息等。SPS(序列参数集)包括包括与图像序列(定义为两个IDR图像间的所有图像)有关的所有信息,应用于已编码视频序列,PPS(图像参数集)包含所有属于该图像的片的相关信息,用于解码已编码视频序列中的1个或多个独立的图像。SPS和PPS用于增强编解码器的抗误码能力。
在206中,第二网络设备向第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求用于请求与第一网络设备建立RTSP发送通道和RTCP反馈通道。在该RTSP SETUP请求中可以携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号。
在207中,第一网络设备针对RTSP SETUP请求进行响应,向第二网络设备返回用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
当第二网络设备请求播放媒体流时,在208中,向第一网络设备发送RTSP PLAY请求,在该RTSP PLAY请求中携带所请求播放媒体流的标识信息。
在209中,第一网络设备针对RTSP PLAY请求进行响应,将第二网络设备请求的媒体流进行编码,通过RTSP发送通道将编码后的媒体流发送给 第二网络设备。
在本发明实施例中,采用的编码方式可以包括CAVLC(Context Adaptive Variable Length Coder,基于上下文的自适应变长编码)或者CABAC(Context Adaptive Binary Arithmetic Code,基于上下文的二进制算术编码)。CAVLC采用的是哈夫曼熵编码技术,而CABAC采用的是算术熵编码技术,CABAC相比较CAVLC而言,运算复杂度较高,但由于现有芯片技术已经能够使得编码器具有足够高的运算速度,并且,CABAC相比较CAVLC在同样视频质量情况下,具有更高的压缩率,能够达到10%~15%的提升,因此优选CABAC编码方式。
如果采用CABAC编码方式,则可以采用以下设置中的一种或任意组合:
1)H.264定义了4种不同的Profile(类):Baseline(基线类),Main(主要类),Extended(扩展类)和High Profile(高端类),如果采用CABAC编码方式,则可以采用Main或High Profile。
2)可以取消B帧(B Slice)来避免显示重排序产生系统延迟。
3)设置In-Loop Deblocking Filter(环路滤波器)生效,以消除块效应,提高媒体流的质量。
4)1个或者多于1个的参考帧。
一种优选的实施方式为,采用CABAC编码方式,采用Main Profile,取消B帧,设置参考帧的个数为1,设置In-Loop Deblocking Filter生效,码率设置为3.5兆/秒。
在210中,第二网络设备通过RTSP发送通道接收媒体流,对媒体流进行解码,并且将对媒体流的接收状况通过RTCP反馈通道发送给第一网络设备。
在211中,第一网络设备通过RTCP反馈通道获取媒体流的接收状况,根据该接收状况调整对媒体流的编码。
本发明实施例中,对媒体流的接收状况可以包括丢包率。在调整对媒体流的编码时,可以调整媒体流的编码方式,也可以调整对媒体流编码时采用 的码率,包括提高或者降低码率。
如果丢包率大于预设的第一阈值,例如丢包率大于5%,则如果当前编码方式采用的是CAVLC,则可以将编码方式从CAVLC调整为CABAC。
或者,如果丢包率大于预设的第三阈值,例如丢包率大于5%,则可以保持编码方式不变,降低编码时采用的码率。可以将码率降低预设的比率,或者将码率降低预设的幅度,或者将码率降低至指定值。假设初始采用的编码方式为CABAC,码率为3.5兆/秒,则如果第二网络单元反馈的丢包率大于5%,则可以将码率降低至2兆/秒。
更进一步地,如果传输的媒体流是音视频流,则如果对媒体流的编码码率将至预设的极限阈值时丢包率仍大于上述第三阈值,例如,如果媒体流的码率将至1.6兆/秒时,丢包率仍大于5%,则第一网络设备可以仅对音频进行编码后通过RTSP发送通道发送给第二网络设备。
如果丢包率小于预设的第二阈值,其中第二阈值小于上述第一阈值,例如如果丢包率小于1%,则可以将编码方式从CABAC调整至CAVLC。或者如果丢包率小于预设的第四阈值,则可以保持编码方式不变,提高编码时采用的码率。可以将码率提高预设的比率,或者将码率提高预设的幅度,或者将码率提高至指定值。上述第四阈值小于上述第三阈值。
例如,如果对媒体流的码率为1.6兆/秒时,丢包率小于1%,则第一网络设备可以将媒体流的码率提高至2兆/秒。丢包率如果仍小于1%,则第一网络设备可以将媒体流的码率提高至3.5兆/秒。
如果结束媒体流的播放,则在212中,第二网络设备可以向第一网络设备发送RTSP TEARDOWN请求。
在213中,第一网络设备停止对媒体流的编码和发送,释放与第二网络设备之间的RTSP发送通道和RTCP反馈通道,关闭与第二网络设备之间的网络连接。
第一网络设备释放RTSP发送通道、RTCP反馈通道以及上述网络连接所占用的端口,第二网络设备同样也释放RTSP发送通道、RTCP反馈通道 以及上述网络连接所占用的端口。
在上述实施例中,所有的RTSP请求,即RTSP OPTIONS请求、RTSP DESCRIBE请求、RTSP SETUP请求、RTSP PLAY请求、RTSP TEARDOWN请求等以及针对这些请求的响应,都基于第一网络设备与第二网络设备之间的网络连接发送的。
以上是对本发明提供的方法进行的详细描述,下面对本发明提供的装置进行详细描述。
图3为本发明实施例提供的实时媒体流的编码装置的结构图,该装置可以设置于第一网络设备,用于完成上述第一网络设备中的功能。如图3所示,该装置可以包括:编码单元01、媒体流发送单元02和反馈接收单元03,还可以包括通道协商单元04。其中各组成单元的主要功能如下:
编码单元01负责对媒体流进行编码;根据反馈接收单元03提供的接收状况,调整对媒体流的编码。
媒体流发送单元02通过第一网络设备和第二网络设备之间的RTSP发送通道,将编码后的媒体流发送给第二网络设备。
反馈接收单元03负责通过第一网络设备和第二网络设备之间的RTCP反馈通道,接收第二网络设备对媒体流的接收状况,将接收状况提供给编码单元01。
其中,编码单元01在对媒体流进行编码时,采用的编码方式可以包括:CAVLC或者CABAC,优选CABAC。
如果编码单元01采用的编码方式为CABAC,则在编码媒体流时,可以采用以下设置中一种或任意组合:
1)H.264定义了4种不同的Profile(类):Baseline(基线类),Main(主要类),Extended(扩展类)和High Profile(高端类),如果采用CABAC编码方式,则可以采用Main或High Profile。
2)可以取消B帧(B Slice)来避免显示重排序产生系统延迟。
3)设置In-Loop Deblocking Filter(环路滤波器)生效,以消除块效应, 提高媒体流的质量。
4)1个或者多于1个的参考帧。
一种优选的实施方式为,采用CABAC编码方式,采用Main Profile,取消B帧,设置参考帧的个数为1,设置In-Loop Deblocking Filter生效,码率设置为3.5兆/秒。
本发明实施例中,编码单元01对媒体流的接收状况可以包括丢包率。在调整对媒体流的编码时,可以调整媒体流的编码方式,也可以调整对媒体流编码时采用的码率,包括提高或者降低码率。
编码单元01在根据接收状况调整对媒体流的编码方式时,如果丢包率大于预设的第一阈值,则可以将对媒体的编码方式从CAVLC调整为CABAC;如果丢包率小于预设的第二阈值,则将对媒体流的编码方式从CABAC调整为CAVLC;其中,第一阈值大于第二阈值。
编码单元01在根据接收状况调整编码媒体流的码率时,如果丢包率大于预设的第三阈值,则降低编码媒体流的码率;如果丢包率小于预设的第四阈值,则提高编码媒体流的码率。在降低或提高编码媒体流的码率时,可以将码率降低或提高预设的比率,或者将码率降低或提高预设的幅度,或者将码率降低或提高至指定值。
如果传输的媒体流是音视频流,则如果媒体流的码率将至预设的极限阈值,丢包率仍大于第三阈值,则编码单元01可以仅编码并发送音频流。
本装置中的通道协商单元04负责通过第一网络设备与第二网络设备之间的网络连接协商RTSP发送通道和RTCP反馈通道。通道协商单元04在协商RTSP发送通道和RTCP反馈通道之前,首先通过网络连接接收第二网络设备发送的RTSP OPTION请求,针对RTSP OPTION请求向第二网络设备返回可用方法;该可用的方法可以包括但不限于:DESCRIBE、SETUP、PLAY、TEARDOWN等。通过网络连接接收第二网络设备发送的RTSP DESCRIBE请求,针对RTSP DESCRIBE请求向第二网络设备返回包括媒体参数的会话描述信息。
然后,通道协商单元04在协商RTSP发送通道和RTCP反馈通道时,通过 网络连接接收RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;向第二网络设备返回第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
当结束媒体流的播放时,通道协商单元04会接收到第二网络设备发送的RTSP TEARDOWN请求,停止对媒体流的编码和发送,释放RTSP发送通道和RTCP反馈通道,关闭网络连接。
图4为本发明实施例提供的实时媒体流的解码装置的结构图,该装置可以设置于第二网络设备,用于完成上述第二网络设备的功能,如图4所示,该装置可以包括:媒体流接收单元11、解码单元12和反馈发送单元13,还可以包括通道协商单元14。其中各组成单元的主要功能如下:
媒体流接收单元11负责通过第一网络设备与第二网络设备之间的RTSP发送通道接收媒体流。
解码单元12负责对媒体流进行解码。
反馈发送单元13负责通过第一网络设备与第二网络设备之间的RTCP反馈通道,将对媒体流的接收状况发送给第一网络设备,以便第一网络设备根据接收状况调整对媒体流的编码。
其中,解码单元12在对媒体流进行解码时,可以CAVLC或者CABAC等解码方式,优选CABAC。
通道协商单元14负责第一网络设备与第二网络设备之间的网络连接协商RTSP发送通道和RTCP反馈通道。在协商RTSP发送通道和RTCP反馈通道之前,通道协商单元14通过网络连接向第一网络设备发送RTSP OPTION请求,接收第一网络设备返回的可用方法,该可用的方法可以包括但不限于:DESCRIBE、SETUP、PLAY、TEARDOWN等。然后通过网络连接向第一网络设备发送RTSP DESCRIBE请求,接收第一网络设备返回的包括媒体参数的会话描述信息。该会话描述信息中包括媒体参数。在本发明实施例中,该媒体参数对于第二网络设备解码媒体流具有意义,媒体参数可以包括编码方式信息、SPS、 PPS信息等。SPS(序列参数集)包括包括与图像序列(定义为两个IDR图像间的所有图像)有关的所有信息,应用于已编码视频序列,PPS(图像参数集)包含所有属于该图像的片的相关信息,用于解码已编码视频序列中的1个或多个独立的图像。SPS和PPS用于增强编解码器的抗误码能力。
通道协商单元14在协商RTSP发送通道时和RTCP反馈通道时,可以通过网络连接向第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;接收第一网络设备返回的第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
另外,当第二网络设备要结束媒体流的播放时,通道协商单元14可以通过网络连接向第一网络设备发送RTSP TEARDOWN请求,释放RTSP发送通道和RTCP反馈通道,关闭网络连接。
本发明实施例提供的上述方法和装置可以适用于但不限于以下应用场景:
服务器作为上述第一网络设备,机顶盒或者智能电视作为上述第二网络设备,服务器将在线直播、在线点播、实时转播等视频流传输给机顶盒或者智能电视。个人计算机互相作为第一网络设备和第二网络设备,个人计算机将摄像头和麦克风输入的音视频进行编码,形成音视频流传输给其他个人计算机,从而进行视频会议。
云盒作为第一网络设备,机顶盒或智能电视等用户端设备作为第二网络设备。针对使用配置较低的普通机顶盒或者智能电视的用户,为了使得该部分用户也能够享受到高清电影电视、体感游戏等网络服务,网络服务提供商推出了云盒的概念。即将网络机顶盒放置于云端,云盒系统中包括服务器和多个云盒。用户仅需要在配置较低的普通机顶盒中安装云盒APP就可以使用云盒服务。用户把需要安装的各类APP安装于云盒,而不必直接安装于客户端设备中,由云盒与APP的服务器进行交互获取服务内容,然后将云盒的界面内容以视频流的形式推送至用户端设备。在这种场景下,云盒在将自身的界面内容以视频流的形式推送至用户端设备时,云盒作为本发明实施例中的第一网络设备,配置较低 的普通机顶盒作为第二网络设备,通过本发明实施例提供的方式就能够实现从云盒到普通机顶盒的视频流推送,并且能够根据普通机顶盒对视频流的接收状况调整对视频流编码的码率,从而保证视频流的播放质量。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (36)

  1. 一种实时媒体流的编码方法,其特征在于,该方法包括:
    第一网络设备通过与第二网络设备之间的实时媒体流传输协议RTSP发送通道,将编码后的媒体流发送给第二网络设备;
    通过第一网络设备与第二网络设备之间的实时传输控制协议RTCP反馈通道,获取第二网络设备对媒体流的接收状况,根据所述接收状况调整对所述媒体流的编码。
  2. 根据权利要求1所述的方法,其特征在于,所述第一网络设备对所述媒体流进行编码时,采用的编码方式包括:基于上下文的自适应变长编码CAVLC或者基于上下文的二进制算术编码CABAC。
  3. 根据权利要求2所述的方法,其特征在于,如果所述采用的编码方式采用CABAC,则所述第一网络设备在编码所述媒体流时,采用以下设置中一种或任意组合:
    采用主要类Main Profile或高端类High Profile;
    取消B帧;
    设置环路滤波器;
    设置1个或多于1个的参考帧。
  4. 根据权利要求1所述的方法,其特征在于,调整对所述媒体流的编码包括:调整对所述媒体流的编码方式,或者调整编码所述媒体流的码率。
  5. 根据权利要求4所述的方法,其特征在于,所述接收状况包括丢包率;
    根据所述接收状况调整对所述媒体流的编码方式包括:如果所述丢包率大于预设的第一阈值,则将对所述媒体的编码方式从CAVLC调整为CABAC;
    如果所述丢包率小于预设的第二阈值,则将对所述媒体流的编码方式从CABAC调整为CAVLC;
    所述第一阈值大于所述第二阈值。
  6. 根据权利要求4所述的方法,其特征在于,所述接收状况包括丢包率;
    根据所述接收状况调整编码所述媒体流的码率包括:如果所述丢包率大于预设的第三阈值,则降低编码所述媒体流的码率;
    如果所述丢包率小于预设的第四阈值,则提高编码所述媒体流的码率;
    所述第三阈值大于所述第四阈值。
  7. 根据权利要求6所述的方法,其特征在于,所述媒体流包括音视频流;
    如果所述媒体流的码率降至预设的极限阈值,丢包率仍大于所述第三阈值,则所述第一网络设备仅编码并发送音频流。
  8. 根据权利要求1至7任一权项所述的方法,其特征在于,该方法还包括:
    所述第一网络设备通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
  9. 根据权利要求8所述的方法,其特征在于,所述RTSP发送通道和RTCP反馈通道的协商包括:
    所述第一网络设备通过所述网络连接接收RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
    所述第一网络设备向所述第二网络设备返回所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
  10. 根据权利要求8所述的方法,其特征在于,在协商所述RTSP发送通道和所述RTCP反馈通道之前,还包括:
    所述第一网络设备通过所述网络连接接收所述第二网络设备发送的RTSP OPTION请求,针对所述RTSP OPTION请求向所述第二网络设备返回可用方法;
    所述第一网络设备通过所述网络连接接收所述第二网络设备发送的RTSP DESCRIBE请求,针对所述RTSP DESCRIBE请求向所述第二网络设备返回包括媒体参数的会话描述信息。
  11. 根据权利要求8所述的方法,其特征在于,该方法还包括:
    所述第一网络设备通过所述网络连接接收到所述第二网络设备发送的RTSP  TEARDOWN请求后,停止对所述媒体流的编码和发送,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
  12. 根据权利要求1至7任一权项所述的方法,其特征在于,所述第一网络设备为服务器,所述第二网络设备为机顶盒或智能电视;或者,
    所述第一网络设备为云盒,所述第二网络设备为机顶盒或智能电视;或者,所述第一网络设备和第二网络设备为视频会议中的终端设备。
  13. 一种实时媒体流的解码方法,其特征在于,该方法包括:
    第二网络设备通过与第一网络设备之间的RTSP发送通道接收媒体流,对所述媒体流进行解码;并通过与第一网络设备之间的RTCP反馈通道,将对所述媒体流的接收状况发送给所述第一网络设备,以便所述第一网络设备根据所述接收状况调整对所述媒体流的编码。
  14. 根据权利要求13所述的方法,其特征在于,所述第二网络设备在对所述媒体流进行解码时,采用的解码方式包括:CAVLC或者CABAC。
  15. 根据权利要求13或14所述的方法,其特征在于,该方法还包括:
    所述第二网络设备通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
  16. 根据权利要求15所述的方法,其特征在于,所述RTSP发送通道的协商包括:
    所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
    所述第二网络设备接收所述第一网络设备返回的所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
  17. 根据权利要求15所述的方法,其特征在于,在协商所述RTSP发送通道和所述RTCP反馈通道之前,还包括:
    所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP  OPTION请求,接收所述第一网络设备返回的可用方法;
    所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP DESCRIBE请求,接收所述第一网络设备返回的包括媒体参数的会话描述信息。
  18. 根据权利要求15所述的方法,其特征在于,该方法还包括:
    所述第二网络设备通过所述网络连接向所述第一网络设备发送RTSP TEARDOWN请求,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
  19. 根据权利要求13或14所述的方法,其特征在于,所述第一网络设备为服务器,所述第二网络设备为机顶盒或智能电视;或者,
    所述第一网络设备为云盒,所述第二网络设备为机顶盒或智能电视;或者,
    所述第一网络设备和第二网络设备为视频会议中的终端设备。
  20. 一种实时媒体流的解码装置,该装置设置于第一网络设备,其特征在于,该装置包括:编码单元、媒体流发送单元和反馈接收单元;
    所述编码单元,用于对媒体流进行编码;根据所述反馈接收单元提供的接收状况,调整对所述媒体流的编码;
    所述媒体流发送单元,用于通过第一网络设备和第二网络设备之间的RTSP发送通道,将编码后的媒体流发送给第二网络设备;
    所述反馈接收单元,用于通过第一网络设备和第二网络设备之间的RTCP反馈通道,接收所述第二网络设备对媒体流的接收状况,将所述接收状况提供给所述编码单元。
  21. 根据权利要求20所述的装置,其特征在于,所述编码单元在对所述媒体流进行编码时,采用的编码方式包括:CAVLC或者CABAC。
  22. 根据权利要求21所述的装置,其特征在于,如果所述编码单元采用的编码方式为CABAC,则在编码所述媒体流时,采用以下设置中一种或任意组合:
    采用Main Profile或High Profile;
    取消B帧;
    设置环路滤波器;
    设置1个或多于1个的参考帧。
  23. 根据权利要求20所述的装置,其特征在于,所述编码单元在调整对所述媒体流的编码时,调整对所述媒体流的编码方式,或者调整编码所述媒体流的码率。
  24. 根据权利要求23所述的装置,其特征在于,所述接收状况包括丢包率;
    所述编码单元在根据所述接收状况调整对所述媒体流的编码方式时,具体执行:
    如果所述丢包率大于预设的第一阈值,则将对所述媒体的编码方式从CAVLC调整为CABAC;
    如果所述丢包率小于预设的第二阈值,则将对所述媒体流的编码方式从CABAC调整为CAVLC;
    所述第一阈值大于所述第二阈值。
  25. 根据权利要求23所述的装置,其特征在于,所述接收状况包括丢包率;
    所述编码单元根据所述接收状况调整编码所述媒体流的码率时,具体执行:
    如果所述丢包率大于预设的第三阈值,则降低编码所述媒体流的码率;
    如果所述丢包率小于预设的第四阈值,则提高编码所述媒体流的码率;
    所述三阈值大于所述第四阈值。
  26. 根据权利要求25所述的装置,其特征在于,所述媒体流包括音视频流;
    如果所述媒体流的码率将至预设的极限阈值,丢包率仍大于所述第三阈值,则所述编码单元仅编码并发送音频流。
  27. 根据权利要求20至26任一权项所述的装置,其特征在于,该装置还包括:通道协商单元,用于通过第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
  28. 根据权利要求27所述的装置,其特征在于,所述通道协商单元在协商RTSP发送通道时,具体执行:
    通过所述网络连接接收RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口 号;
    向所述第二网络设备返回所述第一网络设备用于建立RTSP发送通道的端口号和会话标识,以及用于建立RTCP反馈通道的端口号和会话标识。
  29. 根据权利要求27所述的装置,其特征在于,所述通道协商单元在协商所述RTSP发送通道和所述RTCP反馈通道之前,还用于:
    通过所述网络连接接收所述第二网络设备发送的RTSP OPTION请求,针对所述RTSP OPTION请求向所述第二网络设备返回可用方法;
    通过所述网络连接接收所述第二网络设备发送的RTSP DESCRIBE请求,针对所述RTSP DESCRIBE请求向所述第二网络设备返回包括媒体参数的会话描述信息。
  30. 根据权利要求27所述的装置,其特征在于,所述通道协商单元,还用于接收到所述第二网络设备发送的RTSP TEARDOWN请求后,停止对所述媒体流的编码和发送,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
  31. 一种实时媒体流的解码装置,该装置设置于第二网络设备,其特征在于,该装置包括:
    媒体流接收单元,用于通过第一网络设备与第二网络设备之间的RTSP发送通道接收媒体流;
    解码单元,用于对所述媒体流进行解码;
    反馈发送单元,用于通过第一网络设备与第二网络设备之间的RTCP反馈通道,将对所述媒体流的接收状况发送给所述第一网络设备,以便所述第一网络设备根据所述接收状况调整对所述媒体流的编码。
  32. 根据权利要求31所述的装置,其特征在于,所述解码单元在对所述媒体流进行解码时,采用的解码方式包括:CAVLC或者CABAC。
  33. 根据权利要求31或32所述的装置,其特征在于,该装置还包括:通道协商单元,用于第一网络设备与第二网络设备之间的网络连接协商所述RTSP发送通道和所述RTCP反馈通道。
  34. 根据权利要求33所述的装置,其特征在于,所述通道协商单元在协商所述RTSP发送通道时,具体执行:
    通过所述网络连接向所述第一网络设备发送RTSP SETUP请求,该RTSP SETUP请求携带第二网络设备用于建立RTSP发送通道的端口号以及用于建立RTCP反馈通道的端口号;
    接收所述第一网络设备返回的所述第一网络设备用于建立RTSP发送通道的端口号和会话标识、以及用于建立RTCP反馈通道的端口号和会话标识。
  35. 根据权利要求33所述的装置,其特征在于,所述通道协商单元在协商所述RTSP发送通道和所述RTCP反馈通道之前,还用于:
    通过所述网络连接向所述第一网络设备发送RTSP OPTION请求,接收所述第一网络设备返回的可用方法;
    通过所述网络连接向所述第一网络设备发送RTSP DESCRIBE请求,接收所述第一网络设备返回的包括媒体参数的会话描述信息。
  36. 根据权利要求33所述的装置,其特征在于,所述通道协商单元,还用于通过所述网络连接向所述第一网络设备发送RTSP TEARDOWN请求,释放所述RTSP发送通道和RTCP反馈通道,关闭所述网络连接。
PCT/CN2016/078603 2015-05-05 2016-04-06 一种实时媒体流的编解码方法和装置 Ceased WO2016177248A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510223471.3A CN106210925A (zh) 2015-05-05 2015-05-05 一种实时媒体流的编解码方法和装置
CN201510223471.3 2015-05-05

Publications (1)

Publication Number Publication Date
WO2016177248A1 true WO2016177248A1 (zh) 2016-11-10

Family

ID=57217564

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/078603 Ceased WO2016177248A1 (zh) 2015-05-05 2016-04-06 一种实时媒体流的编解码方法和装置

Country Status (2)

Country Link
CN (1) CN106210925A (zh)
WO (1) WO2016177248A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112533074A (zh) * 2020-12-01 2021-03-19 国家电网有限公司 数据传输方法及装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108347579B (zh) * 2017-01-23 2021-01-05 北京中创视讯科技有限公司 带宽控制方法和装置
CN107222781B (zh) * 2017-06-30 2020-05-01 深圳市九洲电器有限公司 智能网关动态转换码率的方法及系统
CN109495768A (zh) * 2017-09-11 2019-03-19 优酷网络技术(北京)有限公司 一种视频内容下发方法、服务器及限速器
CN111105778A (zh) * 2018-10-29 2020-05-05 阿里巴巴集团控股有限公司 语音合成方法、装置、计算设备和存储介质
CN113162895B (zh) * 2020-12-22 2023-04-07 咪咕文化科技有限公司 动态编码方法、流媒体质量确定方法及电子设备
CN114245105A (zh) * 2021-12-14 2022-03-25 咪咕音乐有限公司 视频播放质量探测方法、系统、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050120128A1 (en) * 2003-12-02 2005-06-02 Wilife, Inc. Method and system of bandwidth management for streaming data
CN103873948A (zh) * 2012-12-10 2014-06-18 中国电信股份有限公司 流媒体自适应匹配传输方法、系统和服务器
CN103986941A (zh) * 2014-05-28 2014-08-13 深圳市智英实业发展有限公司 一种无线音视频传输系统
CN104038844A (zh) * 2014-06-25 2014-09-10 浙江工业大学 一种基于mpeg-2标准的移动直播系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1468001A (zh) * 2002-06-27 2004-01-14 上海汉唐科技有限公司 基于因特网的媒体流自适应传输方法
CN1764184B (zh) * 2005-10-20 2010-07-07 中兴通讯股份有限公司 一种实时流媒体通讯传输方法
US8711929B2 (en) * 2006-11-01 2014-04-29 Skyfire Labs, Inc. Network-based dynamic encoding
CN101511010A (zh) * 2009-03-27 2009-08-19 北京中星微电子有限公司 一种媒体流发送方法及装置
CN101986708A (zh) * 2010-10-29 2011-03-16 北京中星微电子有限公司 一种视频解码方法及解码器

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050120128A1 (en) * 2003-12-02 2005-06-02 Wilife, Inc. Method and system of bandwidth management for streaming data
CN103873948A (zh) * 2012-12-10 2014-06-18 中国电信股份有限公司 流媒体自适应匹配传输方法、系统和服务器
CN103986941A (zh) * 2014-05-28 2014-08-13 深圳市智英实业发展有限公司 一种无线音视频传输系统
CN104038844A (zh) * 2014-06-25 2014-09-10 浙江工业大学 一种基于mpeg-2标准的移动直播系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112533074A (zh) * 2020-12-01 2021-03-19 国家电网有限公司 数据传输方法及装置
CN112533074B (zh) * 2020-12-01 2023-08-11 国家电网有限公司 数据传输方法及装置

Also Published As

Publication number Publication date
CN106210925A (zh) 2016-12-07

Similar Documents

Publication Publication Date Title
WO2016177248A1 (zh) 一种实时媒体流的编解码方法和装置
CN112738644B (zh) 一种基于WebRTC的视频流传输方法和装置
CN105025327B (zh) 一种移动终端现场直播的方法及系统
US9351020B2 (en) On the fly transcoding of video on demand content for adaptive streaming
US9106887B1 (en) Adjusting encoding parameters at a mobile device based on a change in available network bandwidth
EP2863632B1 (en) System and method for real-time adaptation of a conferencing system to current conditions of a conference session
JP4558802B2 (ja) アダプティブバッファリングのための方法と装置
CN104967872B (zh) 基于动态自适应码率传输协议hls流媒体的直播方法和服务器
US10944973B2 (en) Estimation of video quality of experience on media servers
US11451864B2 (en) Dynamically adaptive bitrate streaming
CN104685873B (zh) 编码控制设备以及编码控制方法
CN107872721A (zh) 一种多媒体数据传输方法、终端及计算机可读介质
CN106817354A (zh) 一种视频流传输方法、设备和系统
CN107566855B (zh) 频道快速切换的方法、服务器和机顶盒
CN106791860B (zh) 一种自适应视频编码控制系统及方法
TW202143740A (zh) 可調適視訊串流系統與方法
CN103916678A (zh) 多媒体数据转码方法、转码设备及多媒体数据播放系统
WO2018044385A1 (en) Intra-coded video frame caching for video telephony sessions
US20170026650A1 (en) Switching display devices in video telephony
CN108366044B (zh) 一种VoIP远程音视频共享方法
CN105872537A (zh) 视频播放方法、装置及系统
CN105049955B (zh) 一种实时传屏的方法和系统
Wang et al. A study of live video streaming system for mobile devices
JP6756212B2 (ja) 情報配信装置、中継装置、情報配信プログラム、中継プログラム、情報配信方法、中継方法及び情報配信システム
CN116962613A (zh) 数据传输方法及装置、计算机设备、存储介质

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

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

Country of ref document: EP

Kind code of ref document: A1