CN108063955A - The code check switching method of dynamic self-adapting transmission of video based on state machine - Google Patents

The code check switching method of dynamic self-adapting transmission of video based on state machine Download PDF

Info

Publication number
CN108063955A
CN108063955A CN201711344574.0A CN201711344574A CN108063955A CN 108063955 A CN108063955 A CN 108063955A CN 201711344574 A CN201711344574 A CN 201711344574A CN 108063955 A CN108063955 A CN 108063955A
Authority
CN
China
Prior art keywords
code rate
level
video
rate
bitrate
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.)
Granted
Application number
CN201711344574.0A
Other languages
Chinese (zh)
Other versions
CN108063955B (en
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.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
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 Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN201711344574.0A priority Critical patent/CN108063955B/en
Publication of CN108063955A publication Critical patent/CN108063955A/en
Application granted granted Critical
Publication of CN108063955B publication Critical patent/CN108063955B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

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

Abstract

The invention belongs to field of multimedia communication, the code check switching method of the dynamic self-adapting transmission of video specially based on state machine, including:Server-side cuts into slices the video of storage, and each video segment is respectively provided with K code check grade;Client is according to N number of video segment of newest download, average bit rate, mean square deviation and the average bandwidth of calculating N number of video segment;It obtains code-frequency offset rate and k-th of video segment downloads the broadcasting caching of client when completing;According to the different range of the different range and code-frequency offset rate for playing caching, code check switching is carried out according to code check state switching formula;The present invention is using contacting as state jump condition between video code rate and the numerical value change of influence factor, ensureing to play caching and code-frequency offset rate is under conditions of certain threshold value and code check is switched on video quality and the relatively optimal code check grade of playing fluency overall performance, so as to reach preferable user's viewing experience.

Description

State machine based code rate switching method for dynamic self-adaptive video transmission
Technical Field
The invention belongs to the field of multimedia communication, and particularly relates to a code rate switching method for dynamic self-adaptive video transmission based on a state machine.
Background
The traditional Streaming media technology, such as Real-Time Transport Protocol (RTP) and Real-Time Streaming Protocol (RTSP), has the problems of firewall, network Address Translation (NAT) traversal, high installation and deployment cost, and the like. Dynamic Adaptive Streaming over HTTP (DASH) technology based on hypertext Transfer Protocol (HTTP) has been produced. The HTTP protocol is adopted as the transmission protocol because the HTTP data packet can well solve the problems of firewall and network address conversion and traversal, and meanwhile, the existing network service system architecture can be effectively utilized, so that the existing HTTP server can provide good video service, and the deployment cost is greatly reduced. The MPEG-DASH is used as a unified international standard to solve the compatibility problem among the prior HTTP dynamic self-adaptation technologies, and the principle is to encode the original video content into a plurality of Media streams with different code rates, equally divide each Media stream into a plurality of data segments according to time axis information and store the data segments in a server, and uniformly describe all the Media streams and the data segment information thereof by using a Media Presentation Description (MPD) file, so that a client can automatically select the Media data segments with proper code rates to download and play according to the network environment of the client during playing.
Various technologies of the MPEG-DASH standard are developed all the time, various applications and extensions appear, and a code rate adaptive switching algorithm, which is a core technology of dynamic adaptive streaming media transmission, does not always have a standard, so that the code rate adaptive algorithm based on the MPEG-DASH becomes a research hotspot in the field of streaming media transmission. Due to the dynamic nature of the network situation, it is difficult to maintain satisfactory user experience in the whole session process of requesting video, and if there is no efficient code rate adaptive switching algorithm, the user may encounter the situations of frequent code rate switching, buffering, code rate step and the like in the watching process. For example, when the video bitrate is higher than the network bandwidth, it may cause network congestion, thereby consuming the play-out buffer, causing buffering; if the video bitrate is lower than the bandwidth, the video quality cannot reach the best quality allowed by the bandwidth, resulting in a poor viewing experience. The existing code rate adaptive method is mainly considered from three aspects of transmission bandwidth, play cache and Quality of Experience (QoE). The method based on bandwidth mainly carries out certain smoothing treatment on the estimated value of the available bandwidth according to the available bandwidth of the network, so that the video clip code rate is adaptively switched according to the estimated value of the bandwidth, however, the algorithm has lower bandwidth utilization rate after smoothing treatment is carried out on the estimated bandwidth; the code rate self-adaptive control algorithm based on the play cache has the main idea that the play cache of a client is controlled within a certain range by requesting video segments with different code rates, so that the continuous play of videos is ensured, and although the method can ensure the continuous play of the videos, the problems of frequent code rate switching and the like exist; CN103945245A discloses that by dynamically monitoring the buffer interval state, when the video buffer is not in the set buffer interval, the code rate is switched; however, the bandwidth utilization rate of the method is not high, and the switching times and the average video code rate cannot be comprehensively considered in the selection of the buffer interval; the QoE-based code rate adaptive control algorithm has the main idea that the QoE is theoretically analyzed and defined, and a certain control method is used for controlling the requested video code rate, so that the best QoE is achieved; and the algorithm adopted by the method has higher time complexity.
Disclosure of Invention
In view of this, the method of the present invention is directed to the problem that the video bitrate adaptive algorithm of the existing HTTP dynamic adaptive streaming media transmission technology cannot solve the contradiction between the fluency of playing and the video quality well; the invention aims to provide a code rate switching method for video transmission, which can fully consider the bandwidth utilization rate and the code rate switching amplitude, in particular to a Dynamic self-Adaptive video code rate switching method (State machine based Dynamic Adaptive Streaming over HTTP (hyper text transport protocol, SDASH)) based on a State machine, and the method can provide better QoE for a client in the process of requesting videos.
In order to achieve the purpose, the invention provides the following technical scheme: a code rate switching method for dynamic self-adaptive video transmission based on a state machine comprises the following steps:
the server side slices the stored video, and each video clip has K different code rate grades;
the client calculates the average code rate m of N video clips which have finished downloading k Sum mean square error σ k And an average bandwidth b of the N video segments N
Obtaining the code rate deviation rate theta k And the playing buffer q of the client when the kth video clip is downloaded k
According to the playing buffer q of the client when the kth video clip is downloaded k Different range of (2) and code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video clip ki Performing code rate switching according to a code rate state switching formula;
wherein the K different code rate levels comprise:
{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK },L ki represents the bitrate level of the ith video clip, i.e. the bitrate level i e {1, 2.. Multidata, K }, L of the kth video clip k1 <...<L k(i-1) <L ki <L k(i+1) <....<L kK
Wherein, preferably, the code rate level L of the k +1 th video clip is (k+1)j Comprises the following steps: l is a radical of an alcohol (k+1)j ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };L (k+1)j Represents the jth bitrate level of the (K + 1) th video clip, wherein j belongs to {1, 2., K }.
Further, preferably, the buffer q is cached according to the play of the client when the kth video clip is downloaded completely k Different range of (a) and code rate offset rate theta k The code rate switching according to the code rate state switching formula comprises:
the playing buffer q of the client terminal when the downloading according to the kth video clip is completed k And the code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video segment ki The code rate switching according to the code rate state switching formula comprises the following steps:
s1, judging a playing cache q of a client when the downloading of the kth video clip is finished k Whether the first play buffer is larger than the second play buffer or not, and the code rate offset rate theta k Whether the code rate deviation rate is larger than the first code rate deviation rate and smaller than the second code rate deviation rate or not is judged, if yes, the QoE influence factor maximum value Q of the code rate of the (k + 1) th video clip is calculated k+1_max Corresponding code rate level L max The code rate level L of the k +1 th segment code rate (k+1)j Switching to code rate level L max If not, turning to the step S2;
s2, judging the playing cache q of the client when the kth video clip is downloaded k If the number of the first play cache is smaller than the first play cache, turning to the step S3 if the number of the first play cache is smaller than the first play cache, and turning to the step S5 if the number of the first play cache is smaller than the first play cache;
s3, converting the code rate level L of the kth video clip ki Two levels are decreased to obtain a transition code rate level L kt Judging whether the conditional transition code rate level L is satisfied kt ≥L k1 If yes, calculating the (k + 1) th video clip code rate and setting the code rate as a transitional code rate level L kt Then, the obtained play buffer estimated value q is calculated k+1_t And turning to the step S4, otherwise, judging the code rate level L of the (k + 1) th fragment code rate (k+1)j Is set to L k1 (ii) a The process is over, wherein the code rate level L is transited kt Representing the transitional code rate level of the kth video clip;
s4, judging the playing cache q of the client when the kth video clip is completely downloaded k Whether or not it is smaller than the play buffer estimation value q k+1_t If the bit rate is less than the preset value, the code rate level L of the (k + 1) th fragment code rate is judged (k+1)j Cut into transition code rate level L kt If the flow is finished, otherwise, turning to the step S3;
s5, judging whether the code rate offset rate of the play cache is larger than the second code rate offset rate or not, and judging the play cache q of the client when the kth video clip is downloaded k If the bit rate is greater than the first play cache and less than the second play cache, the bit rate level L of the (k + 1) th segment code rate is determined (k+1)j Switch to target state L kb If not, continuing; wherein the target state L kb Representing the target bitrate level of the kth video segment, i.e. the bitrate level closest to the average bandwidth, L kb ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };
S6, carrying out pause request operation with pause time tau s And the code rate level L of the (k + 1) th fragment code rate is calculated (k+1)i Rate level L for switching to k-th video segment ki
Further, the maximum value Q of QoE influence factors of the (k + 1) th fragment code rate k+1_max The method comprises the following steps:
wherein,indicating the QoE influencing factor when the bitrate level of the (k + 1) th video clip is kept unchanged, i.e. the bitrate level of the (k + 1) th video clip is kept at L ki QoE impact factor of time;representing a code rate level of L k(i+1) The QoE of the user may be affected by,representing a code rate level of L k(i-1) QoE influencing factor of (1), wherein L k(i+1) Representing the rate level of the (i + 1) th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i belongs to {1,2,. So, K }, and correspondingly, the maximum value Q of the QoE influence factors of the (K + 1) th video clip code rate k+1_max Corresponding code rate level L max May correspond to L ki 、L k(i+1) Or L k(i-1)
Preferably, the QoE impact includes:
Q k =a*Q_m-b*Q_σ
where { a, b | a + b =1, a > -0, b > -0 } is a coefficient of two influencing factors, Q _ m represents the influence of video quality on QoE, and Q _ σ represents the influence of fluency of playback on QoE.
Preferably, the Q _ m represents the influence of the video quality on the QoE and includes:
Q_m=ln(m k +ε)
the Q _ σ represents the influence of the fluency of the play on the QoE, including:
wherein ε andfor constant coefficients, the above formula can know that the higher the video code rate, the smaller the mean square error, the better the video playing fluency, and m k And σ k Are directly related to the bitrate of the video segment.
Preferably, the average code rate m k The method comprises the following steps:
wherein v is i Representing a code rate level L ki The corresponding code rate;
preferably, the code rate offset rate θ k The method comprises the following steps:
wherein, b N Mean bandwidth, m, representing the latest N video segments downloaded k Indicating the average bitrate of the latest N downloaded video segments.
Further, the play buffer estimation value q k+1_t The method comprises the following steps:
wherein, tau s Representing pause time, T representing duration of a video segment, v k+1 Indicating the bitrate of the (k + 1) th video segment.
Further, the code rate state switching formula corresponds to a code rate grade state; the code rate level state comprises: a code rate level transition state, a code rate level target state, a code rate level holding state, a code rate level plus one state, a code rate level minus one state and a code rate level pause request state.
Preferably, the code rate state switching formula includes:
wherein L is ki Indicates the bitrate level, L, of the kth video clip kt Indicating a transitional code rate level, L kb Indicating the target state, i.e. the code rate level closest to the average bandwidth, L (k+1)j Indicates the code rate level, L, of the k +1 th video segment k(i+1) Representing the bitrate level of the i +1 th of the k-th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i ∈ {1, 2.., K }.
Definition of theta max Is the maximum threshold value of the code rate deviation, i.e. the second code rate deviation rate theta of the present invention max Preferably, the first bitrate offset rate is 0, so that the bitrate offset rate is kept within a certain range, and when the video bitrate and the network bandwidth are kept consistent within a certain range, a stabilizing effect on the play cache can be exerted, so that the bitrate is prevented from being periodically switched as much as possible, and the limiting condition is expressed by the following formula:
0≤θ k ≤θ max
definition of q min 、q max Buffer memory q for playing respectively k I.e. the first play buffer q of the present invention min Second play buffer q max (ii) a In order to play the cache of the client after the kth video clip is requested, the playing cache stored by the client cannot directly correspond to the duration of the playable content due to different code rates of the video clips, so that the playable duration of the video clip cached by the client is directly adopted to represent the playing cache, and q is ensured to be q k The problems of playing pause or buffer overflow and the like caused by insufficient buffer can be avoided by keeping the buffer within a certain range.
When q is k When the two threshold ranges are exceeded, the code rate needs to be switched according to a certain criterion so as to keep the code rate within the threshold. Since the play pause condition will occur due to insufficient play buffer, and the influence of play pause on the viewing process of the client is most intuitive, the method first needs to make q k Satisfies the formula q min <q k <q max . Meanwhile, the video quality and the playing fluency can be intuitively felt by the client in the watching process, so that the Q needs to be maximized when the next bitrate segment is requested k+1
The invention has the beneficial effects that: providing a code rate self-adaptive algorithm based on a state machine, analyzing QoE influence factors in the video watching process, analyzing and controlling the code rate self-adaptive process by adopting the state machine according to a certain ruleThe rule takes the relation between the numerical value change of the influencing factors and the code rate as the condition of state transition, provides higher video code rate for clients under the condition of ensuring less code rate switching times, and avoids the conditions of code rate step, sudden drop and the like as much as possible, but the code rate offset rate theta is k The initial code rate can be switched to the high code rate quickly, and meanwhile, the lower initial playing time delay can be ensured, so that better QoE is provided.
Drawings
FIG. 1 is a flow chart of the present invention;
FIG. 2 is a state transition diagram of video bitrate of the present invention;
FIG. 3 is a graph of the bandwidth variation of the present invention;
fig. 4 is a schematic diagram of code rate switching and play buffer according to the present invention.
Detailed Description
In the following, embodiments of the present invention will be described in detail with reference to the accompanying drawings, as shown in fig. 1, in the bit rate switching method for dynamic adaptive video transmission based on a state machine of the present invention, a server stores a video slice of a certain video content, and a server cuts a stored video into a plurality of video segments, where each video segment has K bit rate levels;
calculating the average code rate m of N video clips which are downloaded by the client terminal latest k Mean square error σ k And average bandwidth b N (ii) a Obtaining the code rate deviation rate theta k And the playing buffer q of the client when the kth video clip is downloaded k (ii) a According to the play cache q of the client when the kth video clip is downloaded k And the code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video clip ki And carrying out code rate switching according to a code rate state switching formula.
Further, the method can be used for preparing a novel materialPreferably, the buffer memory q is cached according to the playing of the client when the downloading of the kth video clip is completed k Different range of (2) and code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video segment ki Performing code rate switching according to a code rate state switching formula, which specifically comprises:
s1, judging a playing cache q of a client when the kth video clip is completely downloaded k Whether the first play buffer is larger than the second play buffer or not, and the code rate offset rate theta k Whether the code rate deviation rate is larger than the first code rate deviation rate and smaller than the second code rate deviation rate or not is judged, if yes, the maximum QoE influence factor Q of the code rate of the (k + 1) th video clip is calculated k+1_max Corresponding code rate level L max The code rate level L of the (k + 1) th segment code rate (k+1)j Switching to code rate level L max If the flow is finished, otherwise, turning to the step S2;
s2, judging the playing cache q of the client when the kth video clip is downloaded k If the number of the first play cache is smaller than the first play cache, turning to the step S3 if the number of the first play cache is smaller than the first play cache, and turning to the step S5 if the number of the first play cache is smaller than the first play cache;
s3, the code rate level L of the kth video clip ki Two levels are decreased to obtain a transition code rate level L kt Judging whether the conditional transition code rate level L is satisfied kt ≥L k1 If yes, calculating the k +1 th video clip code rate and setting the k +1 th video clip code rate as a transition code rate level L kt Then, the obtained play buffer estimated value q is calculated k+1_t And step S4 is repeated, otherwise, the code rate level L of the (k + 1) th fragment code rate is calculated (k+1)j Is set to L k1 (ii) a The flow ends, wherein the code rate level L is transited kt Representing the transitional code rate level of the kth video clip; l is kt ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };
S4, judging the playing cache q of the client when the kth video clip is downloaded k Whether or not it is smaller than the play buffer evaluation value q k+1_t If the bit rate is less than the preset value, the code rate level L of the (k + 1) th fragment code rate is judged (k+1)j Switch to transitional code rate level L kt If the flow is finished, otherwise, turning to the step S3;
s5, judging whether the playing cache code rate offset rate is larger than the second code rate offset rate or not, and judging the playing cache q of the client when the kth video clip is downloaded k If the bit rate is greater than the first play cache and less than the second play cache, the bit rate level L of the (k + 1) th segment code rate is determined (k+1)j Switch to target state L kb If the code rate is higher than the preset code rate, ending the process, otherwise, continuing; wherein the target state L kb Representing the target bitrate level of the kth video segment, i.e. the bitrate level closest to the average bandwidth, L kb ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };
S6, carrying out pause request operation with pause time tau s The code rate level L of the k +1 th segment code rate (k+1)j Rate level L for switching to k-th video segment ki
Preferably, when i =1 or i = K, the code rate level of the K +1 th segment code rate cannot be decreased or increased, and the code rate level of the K +1 th segment code rate is kept unchanged, that is, kept at the code rate level of the K-th segment code rate.
Further, Q of k +1 th segment code rate k+1_max The method comprises the following steps:
wherein,represents the QoE influencing factor when the bitrate level of the (k + 1) th video clip is kept unchanged,indicating a code rate level of L k(i+1) The QoE of the user's mobile terminal,indicating a code rate level of L k(i-1) QoE influencing factor of (1), wherein L k(i+1) Representing the bitrate level of the i +1 th of the k-th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i ∈ {1, 2.., K }.
Preferably, the QoE impact includes:
Q k =aQ_m-bQ_σ
where { a, b | a + b =1, a > -0, b > -0 } is a coefficient of two influencing factors, Q _ m represents the influence of video quality on QoE, and Q _ σ represents the influence of fluency of playback on QoE.
Preferably, the Q _ m indicating the impact of the video quality on the QoE includes:
Q_m=ln(m k +ε)
the Q _ σ represents the influence of the fluency of the play on the QoE, including:
wherein ε andthe above formula shows that the higher the video code rate, the smaller the mean square error, the better the video playing fluency, and m is k And σ k Are directly related to the bitrate of the video segment.
Further, the play buffer estimation value q k+1_t The method comprises the following steps:
wherein, tau s Representing pause time, T representing duration of a video segment, v k+1 Indicating the bitrate of the (k + 1) th video segment.
q k+1 Representing that the playing buffer when the (k + 1) th segment is downloaded is the playing buffer when the (k + 1) th segment is downloadedAdding the segment length T to the cache, and then subtracting the time required for downloading the (k + 1) th segment; wherein q is k+1 I.e. the buffer time consumed by the player during the download. In addition, if the bandwidth is too high and there is a possibility of overflow of the play-out buffer, a pause request mechanism is needed to prevent buffer overflow, and the pause time is τ s
Further, the code rate state switching formula corresponds to a code rate grade state; the code rate level state comprises: a code rate level transition state, a code rate level target state, a code rate level holding state, a code rate level plus one state, a code rate level minus one state and a code rate level pause request state.
Preferably, the code rate state switching formula includes:
wherein L is ki Indicates the bitrate level, L, of the kth video segment kt Representing the transitional code rate level, L kb Indicating the target state, i.e. the code rate level closest to the average bandwidth, L (k+1)j Indicates the code rate level, L, of the k +1 th video segment k(i+1) Representing the bitrate level of the i +1 th of the k-th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i ∈ {1, 2.., K }.
Selecting Q under the condition of meeting the requirements of play cache and code rate offset rate at a certain threshold value k+1_max The corresponding code rate. A video bitrate level state transition diagram of the dynamic adaptive video bitrate switching method based on the state machine is shown in fig. 2. On the premise of meeting the total switching criterion, the code rate level after the ascending or descending operation is required to belong to a code rate level set { L ] which is preset to represent the k-th video clip k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK In which L is k1 <...<L k(i-1) <L ki <L k(i+1) <....<L kK The state transition conditions 1 to 5 in fig. 2 can be expressed as:
condition 1:that is, the play cache q of the client when the kth video clip is downloaded k Greater than the first play buffer q min And is smaller than the second play buffer q max And rate offset ratio theta k Greater than the first code rate offset rate and less than the second code rate offset rate theta max And QoE influence factor maximum of k +1 th video segment code rateAt this time, L (k+1)j =L ki Switching the code rate grade of the k +1 th video segment to the code rate grade of the k video segment;
condition 2:that is, the play cache q of the client when the kth video clip is downloaded k Greater than the first play buffer q min And is smaller than the second play buffer q max And rate offset ratio theta k Greater than the first code rate offset rate and less than the second code rate offset rate theta max And QoE impact factor maximum Q of k +1 th video segment code rate k+1_max Is composed ofMeanwhile, the code rate grade of the (i + 1) th video clip is less than or equal to the code rate grade of the Kth video clip, and at the moment, L (k+1)j =L k(i+1) Switching the code rate grade of the k +1 th video clip to the code rate grade of the i +1 th video clip;
condition 3:namely, the playing of the client is slowed down when the download of the kth video clip is completedStore q k Greater than the first play buffer q min And is smaller than the second play buffer q max And rate offset ratio theta k Is greater than the first code rate offset rate and less than the second code rate offset rate theta max And QoE impact factor maximum Q of k +1 th video segment code rate k+1_max Is composed ofAt the same time, the code rate grade of the (i-1) th video segment is less than or equal to the code rate grade of the 1 st video segment, and at the moment, L (k+1)j =L k(i-1) Switching the code rate grade of the (k + 1) th video segment to the code rate grade of the (i-1) th video segment;
next, the analysis is performed for the condition 4 when θ kmax &&q min <q k <q max When the play buffer is within the specific threshold, that is, when the play buffer is smaller than the second play buffer and larger than the first play buffer, the situation of buffer overflow or play pause caused by buffer shortage will not occur, but the shift of the average code rate of the N segments relative to the average bandwidth is large, so that the L is divided into L segments ki Switch to be closest to b N Code rate level L of kb . Thus, condition 4 is:
condition 4: theta kmax &&q min <q k <q max
In addition, in the initial stage of video request, in order to ensure the lowest possible initial playing time delay T s Setting the initial code rate to L k1 When the play cache reaches the first play cache q min When the formula 0 is not more than theta k ≤θ max Can directly get the initial code rate from L k1 Is lifted to L kb The method does not need to go through the stage of gradually increasing the code rate, thereby providing the high code rate segment for the client as soon as possible, and at the moment, L (k+1)j =L kb That is, the bitrate level of the (k + 1) th video segment is switched to the target bitrate level of the kth video segment.
Condition 5:q k ≤q min
If condition 5 is satisfied, and L ki When the corresponding code rate is high, in order to avoid the great negative effect of code rate sudden drop on the QoE as much as possible, a transition code rate needs to be set to reduce the amplitude of code rate drop. Let { L kt |L kt =L k(i-2n) And i-2n&gt, 0, n =1,2,3. } is the transition code rate grade, q k+1_t In order to calculate the playing buffer estimated value after setting the k +1 th segment code rate as the transition code rate, when q is k ≤q k+1_t When the current k-th video clip is in the code rate level L, the code rate of the current k-th video clip is determined according to the code rate level L, namely the estimated playing cache of the next clip after the code rate is reduced by 2n levels is larger than the current playing cache, and the operation can enable the playing cache to show an ascending trend ki Switch to transitional rate level L kt (ii) a Otherwise, the current code rate grade L ki Down to the initial code rate level L k1
Condition 6: q. q.s k ≥q max
In the case that the play cache satisfies the condition 6, an operation of a pause request is required, when q is k <q max Then, the client can continue to request the video clip from the server, at this time, L (k+1)j =L ki That is, the bitrate level of the k +1 th video segment is still equal to the bitrate level L of the k-th video segment ki
The invention adopts the design idea of a state machine to analyze and control the code rate switching process; the state machine controls code rate switching by monitoring the numerical value change of the QoE influence factor and fully utilizing the relation between the influence factor and each code rate state, so that the switching process has better QoE. In DASH-based video transmission systems, the main influencing factors of QoE are the following four: video quality, fluency of playing, playing pause times and pause duration, and initial playing time delay.
Setting a transitional code rate level L kt In order to avoid the code rate from being suddenly reduced under the condition of bandwidth fluctuation or insufficient playing cache of a client so as to avoid negative influence on QoE, the code rate L is set kb The level is to improve the bandwidth utilization rate in the video clip request process, and the purpose of setting the pause request state is to avoid wasting the bandwidth and overflowing the buffer after the play buffer reaches a certain threshold. Assume that the code rate level of the k-th slice is L ki
Preferably, the average code rate m k The method comprises the following steps:
wherein v is i Code rate L of expression grade ki The corresponding code rate.
Preferably, the fluency of the playing is represented by a mean square error σ k A characterization comprising:
however, only q will be used when making rate switch decisions min <q k <q max As a premise, the k +1 th segment rate is set as Q k+1_max The corresponding code rate often causes frequent switching of the code rate; q k+1_max Most likely to be obtained under the condition of code rate grade maintenance or code rate grade plus one, and after a certain time of high code rate, the play buffer is lower than q min Then, a code rate reduction operation is required, the code rate is gradually increased after a certain time, and the process is repeated. Aiming at the problem, the invention introduces the code rate offset rate theta k I.e. the absolute value of the shift rate of the average code rate of the N video segments with respect to the average bandwidth, preferably, the rate shift rate θ k The method comprises the following steps:
wherein, b N Representing the average bandwidth of N video segments, m k Representing the average code rate of N video segments。
The invention considers the play fluency in QoE influence factors, the code rate switching amplitude is taken as one of important influence factors, especially when the play cache is lower than a certain threshold, play pause can be caused, the play pause can be intuitively felt by a user, the code rate reduction operation is needed at the moment, but the code rate is suddenly reduced when the code rate is directly switched to the initial code rate, so that a corresponding transition state L is needed to be set for code rate switching kt . Simultaneously, considering the network bandwidth utilization rate in the video transmission process, the code rate level L closest to the average bandwidth kb Set to one of the target states.
Definition of theta max Is the maximum threshold of code rate deviation, i.e. the second code rate deviation rate theta of the present invention max Preferably, the first bitrate offset rate is 0, so that the bitrate offset rate is kept within a certain range, and when the video bitrate and the network bandwidth are kept consistent within a certain range, a stabilizing effect can be exerted on the play cache, so that the bitrate is prevented from being periodically switched as much as possible, and the limiting condition is expressed by the following formula:
0≤θ k ≤θ max
video quality in QoE impact factor by average bitrate m of N video segments k To quantitatively describe, the fluency of the playing, namely the code rate switching frequency and amplitude, can be described by the mean square deviation sigma of the code rates of the N segments k To quantify the description.
Definition of q min 、q max Buffer storage q for playing respectively k I.e. the first play buffer q of the present invention min Second play buffer q max (ii) a In order to play the cache of the client after the kth video clip is requested, the playing cache stored by the client cannot directly correspond to the duration of the playable content due to different code rates of the video clips, so that the playable duration of the video clip cached by the client is directly adopted to represent the playing cache, and q is ensured to be q k The problems of playing pause or buffer overflow and the like caused by insufficient buffer can be avoided by keeping the buffer within a certain range.
When q is k When the range of the two thresholds is exceeded, the code rate needs to be switched according to a certain criterion to keep the code rate within the threshold. Because the condition of playing pause is caused by insufficient playing buffer, and the influence of playing pause on the watching process of a client is most intuitive, the method adopted by the invention firstly needs to enable q to be the most k Satisfies the formula q min <q k <q max . Meanwhile, the video quality and the playing fluency can be intuitively felt by the client in the watching process, so that the Q needs to be maximized when the next bitrate segment is requested k+1
As an alternative, the present invention assumes a video bitrate level { L } stored in the server k1 ,L k2 ,...,L k5 |L k1 <L k2 <...<L k5 The video clips are 300Kbps,700Kbps,1500Kbps,2500Kbps and 3500Kbps, the fixed length T of each video clip is 2 seconds, the length of the whole video is 500 seconds, epsilon isTake 1 and both influencers a and b take 0.5. Definition b N Average transmission bandwidth of N video clips recently requested when the kth video clip is downloaded, b k Average transmission bandwidth for downloading the kth video segment, q k For the play cache of the client when the kth video clip is downloaded k Code rate of the k-th segment, L ki Is the code rate v k And the corresponding code rate grade, wherein the most recently requested N video clips in the kth video clip are the kth-N +1 video clip to the kth video clip. Assuming that the network bandwidth changes during video transmission as shown in fig. 4, the bandwidth is in rapid change during the whole transmission.
In order to reduce the initial time delay as much as possible, the initial code rate of the client request is set to be L k1 =300Kbps, i.e. the initial state of the state machine is set to 300Kbps, three thresholds q in the state transition condition are set min 、q max And theta max Average code rate and average bandwidth are calculated for 10 seconds, 90 seconds and 0.25 respectivelyThe number of required video segments N is set to 6 and the pause time tau s It was 10 seconds. Assuming that the video segments are continuously requested, the average bitrate m k Mean square error σ k And average bandwidth b N Can be calculated by the following formula:
wherein v is i Code rate L of expression grade ki Corresponding code rate, b p Representing the bandwidth of the p-th video segment;
as shown in fig. 3, the initial network bandwidth is set to 2000Kbps, and the initial bitrate level is set to 300Kbps, so the play buffer rises rapidly in the initial stage, when the play buffer reaches the set first play buffer q min Then, the rate offset ratio theta at this time k A second code rate deviation rate theta larger than a set threshold value max According to the state transition condition 4, the state machine directly changes the code rate from the initial code rate L k1 Is lifted to L kb The stage of gradually increasing the code rate is not needed, so that the high code rate segment is provided for the client as soon as possible. As can be seen from fig. 4, when the play buffer reaches 10 seconds, according to the state transition condition 4, the bit rate offset rate θ is equal to k Greater than a set second code rate offset rate theta max I.e. 0.25 later, the client requested rate segment quickly rises from the initial rate level of 300Kbps to the nearest average bandwidth b N Code rate level L of kb I.e. 1500Kbps.
When the transmission is carried out for 285 seconds, the playing cache of the client is lower than the first playing cache q min Switching the code rate according to the state transition condition 5To transition code rate L kt 。L kt The specific value of (b) requires the calculation of q k+1_t Judging whether the condition q is satisfied k ≤q k+1_t . At 285 s, the code rate is 2500Kbps, and according to the state transition condition 5, the code rate is firstly reduced by two levels, namely 700Kbps, and q is obtained by calculation k+1_t Satisfies the condition q k ≤q k+1_t Then the code rate is switched to 700Kbps. When the play cache is promoted, the formula q is satisfied again min <q k <q max Then, the code rate deviation rate satisfies 0 ≦ theta k ≤θ max Then L will be k(i-1) 、L ki And L k(i+1) That is, qoE is calculated for 300Kbps,700Kbps and 1500Kbps, respectively, and Q is calculated k+1 Thus, when the code rate is 1500Kbps, Q can be obtained k+1_max So the code rate is switched to 1500Kbps.
And respectively satisfying the state transition condition 1, the condition 2 and the condition 3 at different time, and performing corresponding code rate switching operation. Because the client play cache does not exceed the second play cache q in the whole process of requesting the video max I.e. the length of the video segment does not exceed the second play buffer q max The set time is 90 seconds, so that the playback is not tentative.
The invention analyzes QoE influence factors in the video watching process, analyzes and controls the code rate self-adaption process by adopting a state machine, takes the relation between the numerical value change of the influence factors and the code rate as the condition of state transition according to a certain criterion, provides higher video code rate for customers under the condition of ensuring less code rate switching times, avoids the conditions of code rate step, sudden drop and the like as much as possible, and has the code rate offset rate theta k The initial code rate can be switched to the high code rate quickly by introducing the method, and meanwhile, the lower initial playing time delay can be ensured, so that better QoE is provided.
The invention can provide higher video code rate for the client under the condition of ensuring less code rate switching times, avoids the conditions of code rate step, sudden drop and the like as much as possible, can quickly switch the initial code rate to high code rate in the initial stage of the fragment request, and can ensure lower initial playing time delay, thereby providing better QoE.
Furthermore, the terms "first", "second", "third", "fourth" are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated, whereby the features defined as "first", "second", "third", "fourth" may explicitly or implicitly include at least one such feature.
Finally, it is noted that the above-mentioned preferred embodiments illustrate rather than limit the invention, and that, although the invention has been described in detail with reference to the above-mentioned preferred embodiments, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the scope of the invention as defined by the appended claims.

Claims (7)

1. A code rate switching method for dynamic self-adaptive video transmission based on a state machine is characterized by comprising the following steps:
the server side slices the stored video, and each video slice has K different code rate grades;
the client calculates the average code rate m of N video clips which have finished downloading k Mean square error σ k And average bandwidth b N
Obtaining a code rate offset rate theta k And the playing buffer q of the client when the kth video clip is downloaded k
According to the playing buffer q of the client when the kth video clip is downloaded k Different range of (a) and code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video segment ki Performing code rate switching according to a code rate state switching formula, wherein the K different code rate levels include:
{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK },L ki representing the bitrate grade of the ith video clip, namely the bitrate grade of the kth video clip, wherein i belongs to {1, 2.. Multidata, K }, and j belongs to {1, 2.. Multidata, K }; l is a radical of an alcohol k1 <...<L k(i-1) <L ki <L k(i+1) <....<L kK The N video segments that have completed downloading include: from the k-N +1 video segment to the k video segment.
2. The method of claim 1, wherein the bitrate offset rate θ is higher than the bitrate offset rate θ k The method comprises the following steps:
wherein, b N Mean bandwidth, m, representing the latest N video segments downloaded k Representing the average bitrate of the latest downloaded N video segments.
3. The method of claim 1, wherein the buffer q is buffered according to a playback time of the client when the kth video segment is downloaded k And the code rate offset rate theta k The (k + 1) th video segment is positioned in the code rate level L (k+1)j From the bitrate level L of the kth video clip ki The code rate switching according to the code rate state switching formula comprises the following steps:
s1, judging a playing cache q of a client when the kth video clip is completely downloaded k Whether the bit rate is greater than the first play buffer and less than the second play buffer, and the bit rate offset rate theta k Whether the code rate deviation rate is larger than the first code rate deviation rate and smaller than the second code rate deviation rate or not is judged, if yes, the maximum value Q of the QoE influence factors of the code rate of the (k + 1) th video clip is calculated k+1_max Corresponding code rate level L max The code rate level L of the k +1 th segment code rate (k+1)j HandoverIs the code rate level L max If the flow is finished, otherwise, turning to the step S2;
s2, judging the playing cache q of the client when the kth video clip is downloaded k If the number of the first play cache is smaller than the first play cache, turning to the step S3 if the number of the first play cache is smaller than the first play cache, and turning to the step S5 if the number of the first play cache is smaller than the first play cache;
s3, the code rate level L of the kth video clip ki Two levels are reduced to obtain a transitional code rate level L kt Judging whether the conditional transitional code rate level L is satisfied kt ≥L k1 If yes, calculating the k +1 th video clip code rate and setting the k +1 th video clip code rate as a transition code rate level L kt Then, the obtained play buffer estimated value q is calculated k+1_t And step S4 is repeated, otherwise, the code rate level L of the (k + 1) th fragment code rate is calculated (k+1)j Is set to L k1 The process ends, wherein the code rate level L is transited kt Representing the transitional code rate grade of the kth video clip; l is kt ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };
S4, judging the playing cache q of the client when the kth video clip is downloaded k Whether or not it is smaller than the play buffer estimation value q k+1_t If the bit rate is less than the preset value, the code rate level L of the (k + 1) th fragment code rate is judged (k+1)j Switch to transitional code rate level L kt If the flow is finished, otherwise, turning to the step S3;
s5, judging whether the playing cache code rate offset rate is larger than the second code rate offset rate or not, and judging the playing cache q of the client when the kth video clip is downloaded k If the bit rate is greater than the first play cache and less than the second play cache, the bit rate level L of the (k + 1) th segment code rate is determined (k+1)j Switch to target state L kb If the code rate is higher than the preset code rate, ending the process, otherwise, continuing; wherein the target state L kb Representing the target rate level of the kth video segment, i.e. the rate level closest to the average bandwidth, L kb ∈{L k1 ,...,L k(i-1) ,L ki ,L k(i+1) ,....,L kK };
S6, performing pause request operation, wherein the pause time is tau s Code of k +1 th segment code rateRate class L (k+1)j Switching to code rate level L of the k video clip ki
4. The method of claim 3, wherein the QoE impact factor maximum Q for calculating the bitrate of the (k + 1) th video segment is calculated k+1_max Corresponding code rate level L max The method comprises the following steps:
wherein,the QoE influence factor when the bitrate level of the (k + 1) th video clip is kept unchanged, namely, the bitrate level of the (k + 1) th video clip is kept to be L ki QoE impact factor of time;representing a code rate level of L k(i+1) The QoE of the user's mobile terminal,representing a code rate level of L k(i-1) The QoE influence factor of (k + 1) th video clip code rate, the QoE influence factor maximum value Q k+1_max Corresponding code rate level L max The method comprises the following steps: l is max ∈{L ki ,L k(i+1) ,L k(i-1) }; wherein L is k(i+1) Representing the bitrate level of the i +1 th of the k-th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i ∈ {1, 2.., K }.
5. The method of claim 3, wherein the playback buffer estimate q is derived from the bit rate of the video stream k+1_t The method comprises the following steps:
wherein, tau s Representing pause time, T representing duration of a video segment, v k+1 Indicating the bitrate of the (k + 1) th video segment.
6. The method of claim 1, wherein the bitrate state switching formula corresponds to a bitrate level state; the code rate level state comprises: a code rate level transition state, a code rate level target state, a code rate level holding state, a code rate level plus one state, a code rate level minus one state and a code rate level pause request state.
7. The method according to any of claims 1-6, wherein the bitrate state switching formula comprises:
wherein L is ki Indicates the bitrate level, L, of the kth video clip kt Representing the transitional code rate level, L kb Indicating the target state, i.e. the code rate level closest to the average bandwidth, L (k+1)j Indicates the code rate level, L, of the k +1 th video segment k(i+1) Representing the bitrate level of the i +1 th of the k-th video segment, L k(i-1) Representing the rate level of the i-1 th video segment; i ∈ {1, 2.., K }.
CN201711344574.0A 2017-12-15 2017-12-15 State machine based code rate switching method for dynamic self-adaptive video transmission Active CN108063955B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711344574.0A CN108063955B (en) 2017-12-15 2017-12-15 State machine based code rate switching method for dynamic self-adaptive video transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711344574.0A CN108063955B (en) 2017-12-15 2017-12-15 State machine based code rate switching method for dynamic self-adaptive video transmission

Publications (2)

Publication Number Publication Date
CN108063955A true CN108063955A (en) 2018-05-22
CN108063955B CN108063955B (en) 2020-02-11

Family

ID=62138946

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711344574.0A Active CN108063955B (en) 2017-12-15 2017-12-15 State machine based code rate switching method for dynamic self-adaptive video transmission

Country Status (1)

Country Link
CN (1) CN108063955B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833995A (en) * 2018-06-08 2018-11-16 西安交通大学 The transmission method of adaptive stream media in a kind of wireless network environment
CN108924667A (en) * 2018-08-03 2018-11-30 阳雨哲 A kind of maximized available bandwidth adaptive video fragment request method of support QoE
CN109040855A (en) * 2018-09-03 2018-12-18 重庆邮电大学 A kind of wireless DASH streaming media bit rate smooth adaptive transmission method
CN109348265A (en) * 2018-11-27 2019-02-15 湖南国科微电子股份有限公司 Based on the live broadcasting method and system under HLS multi-code stream mode
CN109379632A (en) * 2018-10-25 2019-02-22 中国地质大学(武汉) A kind of progressive switching method of code rate and system of dynamic self-adapting HTTP stream
CN109996087A (en) * 2019-03-21 2019-07-09 武汉大学 A kind of code rate adaptive approach and device towards net cast based on finite state machine
CN110087109A (en) * 2019-04-19 2019-08-02 中国科学院信息工程研究所 Video code rate adaptive approach and device
CN110267100A (en) * 2019-07-12 2019-09-20 北京达佳互联信息技术有限公司 Code rate switching method, device, electronic equipment and the storage medium of FLV video
CN110460875A (en) * 2019-08-05 2019-11-15 北京达佳互联信息技术有限公司 A kind of switching method of video code rate, device, electronic equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101330352A (en) * 2008-05-06 2008-12-24 华中科技大学 Method for controlling self-adaption code rate for flow media transmission
CN102957672A (en) * 2011-08-25 2013-03-06 中国电信股份有限公司 Method, client side and system for self-adaptive playing of FLV (flash video) media streams
CN104159109A (en) * 2014-05-28 2014-11-19 百视通网络电视技术发展有限责任公司 Bit rate control method and system based on VBR video encoding
CN105263037A (en) * 2014-07-18 2016-01-20 中国科学院声学研究所 Self-adaptive streaming method based on client cache
CN105872615A (en) * 2016-06-27 2016-08-17 北京邮电大学 Method and device for adjusting video transmission code rates
US20160360285A1 (en) * 2008-06-27 2016-12-08 Microsoft Technology Licensing, Llc System for adaptive video switching for variable network conditions
CN106507024A (en) * 2016-11-17 2017-03-15 北京数码视讯技术有限公司 A kind of self-adaption code rate method of adjustment and device
CN106993237A (en) * 2017-04-13 2017-07-28 中北大学 Dynamic self-adapting code rate selection method based on MPEG DASH agreements

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101330352A (en) * 2008-05-06 2008-12-24 华中科技大学 Method for controlling self-adaption code rate for flow media transmission
US20160360285A1 (en) * 2008-06-27 2016-12-08 Microsoft Technology Licensing, Llc System for adaptive video switching for variable network conditions
CN102957672A (en) * 2011-08-25 2013-03-06 中国电信股份有限公司 Method, client side and system for self-adaptive playing of FLV (flash video) media streams
CN104159109A (en) * 2014-05-28 2014-11-19 百视通网络电视技术发展有限责任公司 Bit rate control method and system based on VBR video encoding
CN105263037A (en) * 2014-07-18 2016-01-20 中国科学院声学研究所 Self-adaptive streaming method based on client cache
CN105872615A (en) * 2016-06-27 2016-08-17 北京邮电大学 Method and device for adjusting video transmission code rates
CN106507024A (en) * 2016-11-17 2017-03-15 北京数码视讯技术有限公司 A kind of self-adaption code rate method of adjustment and device
CN106993237A (en) * 2017-04-13 2017-07-28 中北大学 Dynamic self-adapting code rate selection method based on MPEG DASH agreements

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
朱晓晨,沈苏彬: ""基于HTTP的动态自适应流技术综总数"", 《系统仿真学报》 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108833995A (en) * 2018-06-08 2018-11-16 西安交通大学 The transmission method of adaptive stream media in a kind of wireless network environment
CN108924667A (en) * 2018-08-03 2018-11-30 阳雨哲 A kind of maximized available bandwidth adaptive video fragment request method of support QoE
CN108924667B (en) * 2018-08-03 2021-01-15 阳雨哲 Available bandwidth self-adaptive video fragment request method supporting QoE maximization
CN109040855A (en) * 2018-09-03 2018-12-18 重庆邮电大学 A kind of wireless DASH streaming media bit rate smooth adaptive transmission method
CN109379632A (en) * 2018-10-25 2019-02-22 中国地质大学(武汉) A kind of progressive switching method of code rate and system of dynamic self-adapting HTTP stream
CN109348265A (en) * 2018-11-27 2019-02-15 湖南国科微电子股份有限公司 Based on the live broadcasting method and system under HLS multi-code stream mode
CN109996087A (en) * 2019-03-21 2019-07-09 武汉大学 A kind of code rate adaptive approach and device towards net cast based on finite state machine
CN110087109A (en) * 2019-04-19 2019-08-02 中国科学院信息工程研究所 Video code rate adaptive approach and device
CN110267100A (en) * 2019-07-12 2019-09-20 北京达佳互联信息技术有限公司 Code rate switching method, device, electronic equipment and the storage medium of FLV video
CN110460875A (en) * 2019-08-05 2019-11-15 北京达佳互联信息技术有限公司 A kind of switching method of video code rate, device, electronic equipment and storage medium

Also Published As

Publication number Publication date
CN108063955B (en) 2020-02-11

Similar Documents

Publication Publication Date Title
CN108063955B (en) State machine based code rate switching method for dynamic self-adaptive video transmission
CN109040855B (en) Wireless DASH streaming media code rate smooth self-adaptive transmission method
EP3022884B1 (en) Quality optimization with buffer and horizon constraints in adaptive streaming
CN108833996B (en) Service node selection, update and code rate self-adaption method in distributed DASH system
KR102472155B1 (en) How to Broadcast Streaming Content in a Peer to Peer (P2P) Network
CN109302623B (en) QoE model-based dynamic adaptive video transmission method
CN110198495B (en) Method, device, equipment and storage medium for downloading and playing video
Zhou et al. A control-theoretic approach to rate adaption for DASH over multiple content distribution servers
KR101982290B1 (en) Streaming system and method based on contents characteristic for improving perceived quality of adaptive streaming service
CN106686409B (en) Streaming media code rate self-adaption method and device, server and terminal
KR20150042191A (en) Methods and devices for bandwidth allocation in adaptive bitrate streaming
CN109714631A (en) One kind being based on HTTP video flowing dynamic self-adaptation bit-rate selection method
Zhou et al. Buffer-based smooth rate adaptation for dynamic HTTP streaming
Zhou et al. TFDASH: A fairness, stability, and efficiency aware rate control approach for multiple clients over DASH
CN106453270B (en) Adaptive Transmission algorithm based on PI control Streaming Media
CN108833350B (en) Data transmission method suitable for multi-server self-adaptive streaming media system
Zhang et al. LAPAS: Latency-aware playback-adaptive streaming
Koffka et al. A DASH Survey: the ON-OFF Traffic Problem and Contemporary Solutions
Kreuzberger et al. Modelling the impact of caching and popularity on concurrent adaptive multimedia streams in information-centric networks
KR20210042051A (en) Multipath-based block transmission system and streaming method for adaptive streaming service
Kim et al. Content-aware rate adaptation scheme to improve stability in HTTP Adaptive Streaming
Khan et al. What happens when stochastic adaptive video streaming players share a bottleneck link?
Togou et al. An elastic DASH-based bitrate adaptation scheme for smooth on-demand video streaming
Martín et al. Q-learning based control algorithm for HTTP adaptive streaming
Park et al. Client-side rate adaptation scheme for HTTP adaptive streaming based on playout buffer model

Legal Events

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