CN112584204A - Dynamic code rate self-adaption method for playing terminal in weak network environment - Google Patents

Dynamic code rate self-adaption method for playing terminal in weak network environment Download PDF

Info

Publication number
CN112584204A
CN112584204A CN202011392653.0A CN202011392653A CN112584204A CN 112584204 A CN112584204 A CN 112584204A CN 202011392653 A CN202011392653 A CN 202011392653A CN 112584204 A CN112584204 A CN 112584204A
Authority
CN
China
Prior art keywords
bandwidth
stream
streaming media
path
media data
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.)
Pending
Application number
CN202011392653.0A
Other languages
Chinese (zh)
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.)
SHANGHAI ULUCU ELECTRONIC TECHNOLOGY CO LTD
Original Assignee
SHANGHAI ULUCU ELECTRONIC TECHNOLOGY CO LTD
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHANGHAI ULUCU ELECTRONIC TECHNOLOGY CO LTD filed Critical SHANGHAI ULUCU ELECTRONIC TECHNOLOGY CO LTD
Priority to CN202011392653.0A priority Critical patent/CN112584204A/en
Publication of CN112584204A publication Critical patent/CN112584204A/en
Pending 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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • 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]

Landscapes

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

Abstract

The invention provides a dynamic code rate self-adaptive method of a playing end in a weak network environment.A video and audio acquisition module sends streaming media data to a trun server through a bandwidth detection sending module, and the trun server comprises a bandwidth detection receiving module and a transcoding module; the audio and video coding rate and the error correction coding algorithm are based on the actual network condition between the audio and video acquisition end and the trun server, so that the high-quality transmission of the streaming media data to the trun server is ensured; when the trun server sends streaming media data to a playing end, monitoring the bandwidth in real time, and when a certain path is in a weak network environment, encoding a path of new code rate, wherein the new code rate is calculated based on the original code rate; if the one path of playing end is in the grade bandwidth again, sharing the path of subcode stream; and if not, stopping transcoding of the sub-code stream. When the invention is used for multi-path forwarding, different code rates are coded in real time according to the bandwidth of the playing end, and the playing experience is improved.

Description

Dynamic code rate self-adaption method for playing terminal in weak network environment
Technical Field
The invention belongs to a data transmission system of a real-time streaming media transmission system, and relates to a client dynamic code rate self-adaption method in a weak network environment.
Background
When supporting multiple playing ends, the network architecture of the existing real-time streaming media transmission system based on the UDP protocol is composed of a video acquisition end, a forwarding server (turn), and a playing end. As shown in fig. 1.
Taking the most popular webrtc approach as an example, whether it is an open-source Kurento server, or a unicode, Mediasoup, streaming media data thereof is transmitted in this way.
The streaming media transmission part is provided with a network bandwidth control module (congestion avoidance module), and when network congestion is detected, the streaming media transmission part informs an audio and video acquisition end to perform code rate control of audio and video coding and increase the fec error correction function, so that the streaming media transmission part is suitable for the current network bandwidth and packet loss rate, and the network real-time property is improved.
When only one path of playing end exists, the encoding code rate and the fec parameter of the audio and video acquisition end adopt the lowest bandwidth (the minimum value of the two bandwidths from the acquisition end to the trun server and from the trun server to the playing end) of the whole network, so that the optimal playing experience can be achieved.
When there are only multiple paths of playing terminals, the network bandwidth from the trun server to the playing terminal, and the network bandwidth control module thereof can actually detect that the bandwidth changes, when the bandwidth between the acquisition terminal and the trun server is sufficient, and the bandwidth from the trun server of a certain path (or some paths) to the playing terminal is in a weak network environment, some problems may be brought:
1. the bandwidth from the collection end to the trun server is directly used as the coding bandwidth instead of the coding bandwidth, so that the bandwidth from the trun server to the playing end is in a weak network environment, and the playing experience is very poor. Most open source trun servers use this approach.
2. The worst network bandwidth is adopted as the encoding bandwidth of the acquisition end, so that the experience of the playing end under the worst bandwidth can be really improved, but the playing experience of the playing end with good network conditions is reduced.
Disclosure of Invention
The invention aims to overcome the defects of the prior art and solve the playing experience of a certain path or a plurality of paths of playing end networks in a weak network environment under the condition of a plurality of paths of playing ends of a real-time streaming media transmission system based on a UDP protocol.
The invention provides a dynamic code rate self-adapting method of a playing end under a weak network environment to solve the problem,
step 1, an audio and video acquisition module sends streaming media data to a trun server through a bandwidth detection sending module, and the trun server comprises a bandwidth detection receiving module and a transcoding module; the audio and video coding rate and the error correction coding algorithm are based on the actual network condition between the audio and video acquisition end and the trun server, so that the high-quality transmission of the streaming media data to the trun server is ensured;
step 2, the trun server forwards the streaming media data through a transcoding module; judging whether the grade of the forwarding broadband needs to be modified or not by calculating the grade of the bandwidth; the trun server starts subcode stream coding and performs hierarchical processing on subcode stream coding rate according to the bandwidth of the playing end in real time when the bandwidth of the playing end is in a weak network environment; if the forwarding broadband level does not need to be modified, the trun server directly forwards the streaming media data through the transcoding module; if the forwarding broadband level needs to be modified, further judging whether the level subcode is established; if the equal-level subcode is created, adding the equal-level subcode stream, forwarding the streaming media data through a transcoding module by the trunk server, and deleting the atomic stream code when the original-level subcode stream is not used; if the equal-level subcode is not created, the equal-level subcode stream is added, the trun server forwards the streaming media data through the transcoding module, the original-level subcode stream is not used any more, and the atomic stream code is deleted;
step 3, when the trun server sends the streaming media data to the playing end, monitoring the bandwidth in real time, and when the code rate changes, switching to the sub-code stream of the corresponding code rate when the key frame is coded;
and 4, stopping encoding the sub-code stream of the path when the sub-code stream of the path is not needed.
Further, when the trun server sends streaming media data to the playing end, the bandwidth is monitored in real time, when a certain path is in a weak network environment, a new code rate is coded, the new code rate is calculated based on the original code rate, for example, three-level sub-code streams, 1/4, 1/2 and 3/4 of the original code rate, if the certain path is between 1/4 and 1/2, 1/4 of the original code rate is created as the coding bandwidth and is forwarded to the playing end of the path, and if the playing end of the path is in the level bandwidth again, the path of sub-code streams are shared. And if not, stopping transcoding of the sub-code stream. If the bandwidth of the playing end of a certain path is changed from between 1/4 and 1/2 to between 3/4 and the original code rate, 3/4 of the original code rate is started to serve as the coding bandwidth, the path is forwarded, and the forwarding coding quality of the path is improved.
The method has the following advantages:
1. and when the multi-path forwarding is carried out, different code rates are coded in real time according to the bandwidth of the playing end, so that the playing experience is improved.
2. When a certain path of subcode stream is not needed, the corresponding code is released in real time, and the pressure of the server is reduced.
Drawings
Fig. 1 is a schematic diagram of a real-time streaming media transmission system in the prior art.
FIG. 2 is a schematic representation of the process of the present invention.
FIG. 3 is a detailed schematic of the process of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and specific embodiments.
Example 1
As shown in fig. 2 and fig. 3, a method for adapting a dynamic bit rate of a playing terminal in a weak network environment includes the following steps:
step 1, an audio and video acquisition module sends streaming media data to a trun server through a bandwidth detection sending module, and the trun server comprises a bandwidth detection receiving module and a transcoding module; the audio and video coding rate and the error correction coding algorithm are based on the actual network condition between the audio and video acquisition end and the trun server, so that the high-quality transmission of the streaming media data to the trun server is ensured;
step 2, the trun server forwards the streaming media data through a transcoding module; judging whether the grade of the forwarding broadband needs to be modified or not by calculating the grade of the bandwidth; the trun server starts subcode stream coding and performs hierarchical processing on subcode stream coding rate according to the bandwidth of the playing end in real time when the bandwidth of the playing end is in a weak network environment; if the forwarding broadband level does not need to be modified, the trun server directly forwards the streaming media data through the transcoding module; if the forwarding broadband level needs to be modified, further judging whether the level subcode is established; if the equal-level subcode is created, adding the equal-level subcode stream, forwarding the streaming media data through a transcoding module by the trunk server, and deleting the atomic stream code when the original-level subcode stream is not used; if the equal-level subcode is not created, the equal-level subcode stream is added, the trun server forwards the streaming media data through the transcoding module, the original-level subcode stream is not used any more, and the atomic stream code is deleted;
step 3, when the trun server sends the streaming media data to the playing end, monitoring the bandwidth in real time, and when the code rate changes, switching to the sub-code stream of the corresponding code rate when the key frame is coded;
and 4, stopping encoding the sub-code stream of the path when the sub-code stream of the path is not needed.
When the trun server sends streaming media data to a playing end, monitoring bandwidth in real time, when a certain path is in a weak network environment, encoding a new code rate, wherein the new code rate is calculated based on an original code rate, such as three-level sub-code streams, 1/4, 1/2 and 3/4 of the original code rate, if the certain path is between 1/4 and 1/2, creating 1/4 of the original code rate as an encoding bandwidth and forwarding the encoding bandwidth to the playing end of the path, and if the playing end of the path is in the level bandwidth again, sharing the sub-code stream of the path. And if not, stopping transcoding of the sub-code stream. If the bandwidth of the playing end of a certain path is changed from between 1/4 and 1/2 to between 3/4 and the original code rate, 3/4 of the original code rate is started to serve as the coding bandwidth, the path is forwarded, and the forwarding coding quality of the path is improved.

Claims (2)

1. A dynamic code rate self-adaptive method for a playing end in a weak network environment is characterized by comprising the following steps:
step 1, an audio and video acquisition module sends streaming media data to a trun server through a bandwidth detection sending module, and the trun server comprises a bandwidth detection receiving module and a transcoding module; the audio and video coding rate and the error correction coding algorithm are based on the actual network condition between the audio and video acquisition end and the trun server, so that the high-quality transmission of the streaming media data to the trun server is ensured;
step 2, the trun server forwards the streaming media data through a transcoding module; judging whether the grade of the forwarding broadband needs to be modified or not by calculating the grade of the bandwidth; the trun server starts subcode stream coding and performs hierarchical processing on subcode stream coding rate according to the bandwidth of the playing end in real time when the bandwidth of the playing end is in a weak network environment; if the forwarding broadband level does not need to be modified, the trun server directly forwards the streaming media data through the transcoding module; if the forwarding broadband level needs to be modified, further judging whether the level subcode is established; if the equal-level subcode is created, adding the equal-level subcode stream, forwarding the streaming media data through a transcoding module by the trunk server, and deleting the atomic stream code when the original-level subcode stream is not used; if the equal-level subcode is not created, the equal-level subcode stream is added, the trun server forwards the streaming media data through the transcoding module, the original-level subcode stream is not used any more, and the atomic stream code is deleted;
step 3, when the trun server sends the streaming media data to the playing end, monitoring the bandwidth in real time, and when the code rate changes, switching to the sub-code stream of the corresponding code rate when the key frame is coded;
and 4, stopping encoding the sub-code stream of the path when the sub-code stream of the path is not needed.
2. The method according to claim 1, wherein the trunk server monitors the bandwidth in real time when sending streaming media data to the playing end, and when a path is in the weak network environment, encodes a new path of code rate, and the new code rate is calculated based on the original code rate; if the one path of playing end is in the grade bandwidth again, sharing the path of subcode stream; and if not, stopping transcoding of the sub-code stream.
CN202011392653.0A 2020-12-03 2020-12-03 Dynamic code rate self-adaption method for playing terminal in weak network environment Pending CN112584204A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011392653.0A CN112584204A (en) 2020-12-03 2020-12-03 Dynamic code rate self-adaption method for playing terminal in weak network environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011392653.0A CN112584204A (en) 2020-12-03 2020-12-03 Dynamic code rate self-adaption method for playing terminal in weak network environment

Publications (1)

Publication Number Publication Date
CN112584204A true CN112584204A (en) 2021-03-30

Family

ID=75126952

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011392653.0A Pending CN112584204A (en) 2020-12-03 2020-12-03 Dynamic code rate self-adaption method for playing terminal in weak network environment

Country Status (1)

Country Link
CN (1) CN112584204A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766169A (en) * 2021-09-16 2021-12-07 江苏三步科技股份有限公司 Audio and video data transmission system, optimization equipment and method in weak network environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113766169A (en) * 2021-09-16 2021-12-07 江苏三步科技股份有限公司 Audio and video data transmission system, optimization equipment and method in weak network environment

Similar Documents

Publication Publication Date Title
US6745364B2 (en) Negotiated/dynamic error correction for streamed media
US10374865B2 (en) System for processing streaming media service and method and network device thereof
US9282133B2 (en) Communicating control information within a real-time stream
US20090216897A1 (en) Method and system for controlling streaming rates
CN101174995B (en) Method and system for monitoring multimedia service performance
JP2008527862A (en) Adaptive information delivery system using FEC feedback
CN1886968B (en) Device and method for the preparation of sending data and corresponding products
CN113207017B (en) Streaming media data transmission system for cloud game
CN110224793B (en) Self-adaptive FEC method based on media content
KR100994521B1 (en) Information processing device and method, and computer-readable recording medium recording thereon a computer program
US8873590B2 (en) Apparatus and method for correcting jitter
CN111741248B (en) Data transmission method, device, terminal equipment and storage medium
KR100652574B1 (en) Streaming system and adaptive bandwidth allocation method
CN111935485A (en) RS code forward error correction method and device
KR20050071568A (en) System and method for providing error recovery for streaming fgs encoded video over an ip network
CN112584204A (en) Dynamic code rate self-adaption method for playing terminal in weak network environment
JP2009296164A (en) Data transmitting device, control method therefor, and program
Karande et al. Analysis and modeling of errors at the 802.11 b link layer
Tsugawa et al. TCP-AFEC: An adaptive FEC code control for end-to-end bandwidth guarantee
US8644138B2 (en) Method, computer program product, and apparatus for deriving intelligence from format change requests
CN113301387B (en) Data encoding and decoding method, related equipment and system
CN113905026A (en) Streaming media video data processing method, device and storage medium
CN114286132A (en) Method for video transmission fault tolerance in wireless network
WO2009155773A1 (en) A method, system, media gateway controller and media gateway for transmitting multi-media service in the next generation network
JP3730977B2 (en) Data transmission method and data processing method

Legal Events

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