CN108668146A - A kind of method and apparatus of adjustment streaming media bit rate - Google Patents

A kind of method and apparatus of adjustment streaming media bit rate Download PDF

Info

Publication number
CN108668146A
CN108668146A CN201710190142.2A CN201710190142A CN108668146A CN 108668146 A CN108668146 A CN 108668146A CN 201710190142 A CN201710190142 A CN 201710190142A CN 108668146 A CN108668146 A CN 108668146A
Authority
CN
China
Prior art keywords
code check
fragment
terminal device
candidate
server
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
CN201710190142.2A
Other languages
Chinese (zh)
Other versions
CN108668146B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710190142.2A priority Critical patent/CN108668146B/en
Publication of CN108668146A publication Critical patent/CN108668146A/en
Application granted granted Critical
Publication of CN108668146B publication Critical patent/CN108668146B/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/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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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
    • 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)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A kind of method and apparatus of adjustment streaming media bit rate, this method may include:The resource request of server receiving terminal equipment, the resource request include the caching duration of smoothing code rate and the terminal device buffer area, and the smooth code check is the matched code check of downloading rate with the current foradownloaded video film source of the terminal device;The server determines target fragment from the current video film source to be played of the terminal device, the target fragment is sent to the terminal device, the code check of the target fragment is less than the smooth code check, and the prediction downloading duration of the target fragment is less than the caching duration.By using the program, server can provide the fragment adapted to terminal device for terminal device in real time, ensure the broadcasting continuity of Streaming Media.

Description

A kind of method and apparatus of adjustment streaming media bit rate
Technical field
This application involves live video processing technology field more particularly to a kind of method adjusting streaming media bit rate and set It is standby.
Background technology
In internet and multimedia technology application, user can be set by video playing terminals such as smart television, mobile phones It is standby to obtain video online from internet, since the video obtained from internet is carried out data transmission by public network, work as net When network shake, network delay, which fluctuate phenomena such as bigger, causes network transmission speed to be shaken, terminal device just needs continual Buffered video just leads to the continuous interim card of video pictures in this way.Adaptive stream media transmission technology is mainly used at present, adaptive In Transmission system, same a video is weaved into different code checks by server, and video is cut into multiple fragments.In the biography of video flowing Can be according to factors such as network bandwidth, cache sizes during defeated, dynamic adjustresources bit rate provides and is worked as terminal device The video stream transmission velocity that preceding network state adapts to so that the also attainable best broadcasting experience when network environment is poor.Eventually End equipment can ask the fragment of different code checks to server, for example, terminal device according to current network bandwidth code check and local After caching calculates smooth code check, the fragment close to smooth code check is downloaded to server request, to realize that dynamic code rate switches.
But the actual bit rate error of the broadcasting fragment for the smooth code check value and actual download that terminal device calculates is very big, causes Underload occurs for the broadcasting caching of client, occurs playing interim card, influences user experience.Since the piece source encoder of current mainstream is adopted Media coding is carried out with VBR patterns, i.e. the media code rate by utilizing of film source is not fixed, and the film source code check issued in server describes file In media code rate by utilizing be fragment average bit rate.Client can compare the average bit rate of calculated smooth code check and fragment Compared with, if smooth code check is more than average bit rate, client will carry out code check on cut (referring to that code check is turned up), to be obtained from server Take the fragment of higher code check.But if the actual bit rate of original fragment is far above average bit rate, client carries out cutting again, Thus will appear client it is data cached exhaust after, the case where completion has not yet been downloaded in fragment, eventually lead to broadcasting interim card, when After interim card, client can may be triggered again and carries out code check incision, in this way, being cut on after incision, above cut because of interim card incision again, This kind of phenomenon can be referred to as ping-pong.
Invention content
This application provides a kind of method and apparatus of adjustment streaming media bit rate, can solve to use in the prior art adaptive The problem of ping-pong when streaming media transmission technique being answered to be broadcast live video.
The application first aspect provides a kind of method of adjustment streaming media bit rate, and this method includes:
Terminal device sends resource request after calculating smooth code check to server, and the resource request includes mainly flat The caching duration of slip rate and the terminal device buffer area, the smooth code check are and the current foradownloaded video of the terminal device The matched code check of downloading rate of film source, the smooth code check can adapt to current bandwidth, be present terminal device plays piece of video The best ideal code check in source, terminal device plays video using the smooth code check, then is not in Caton phenomenon.
Server can find the terminal device and currently wait broadcasting in the database after the resource request of receiving terminal apparatus The video film source put, then determines target fragment from the current video film source to be played of the terminal device, then by the mesh Mark fragment is sent to the terminal device.Wherein, the code check of the target fragment is less than the smooth code check, the target fragment Prediction downloading duration be less than the caching duration.
In current mechanism, smooth code check can only be compared by client with the average bit rate of fragment, eventually lead to code check The ping-pong of switching.What to be then server compared with current mechanism, in the application sent in receiving terminal apparatus includes smooth After the resource request of code check and caching duration, target fragment is determined from video film source, then the server divides the target Piece is sent to the terminal device.As it can be seen that since the code check that server is sent to the target fragment of terminal device is less than described put down Slip rate, and the prediction downloading duration of the target fragment is less than the caching duration, so being ultimately sent to terminal device Target fragment is the condition for meeting current smooth playing, can provide point adapted to terminal device in real time for terminal device Piece, ensures the broadcasting continuity of Streaming Media, can also reduce and carry out being caused when dynamic code rate switching during streaming media playing Broadcasting interim card the problem of, to greatest extent utilize network bandwidth resources.
In some possible designs, the server is determined from the current video film source to be played of the terminal device Target fragment, the detailed process that the target fragment is sent to the terminal device can be grasped with reference to described in following 1-3 Make:
1, the server selects candidate code check from code check set, and the code check set refers to low in burst information set In the set of the code check of the smooth code check, the burst information set includes the burst information of at least two fragments, it is described extremely Few two fragments belong to current same video film source to be played, and burst information includes the code check of fragment size and fragment.
Optionally, the code check set can be by the instruction of instruction information that the resource request carries or the code check collection Close can by the server according to the smooth code check from the set of the code check of the burst information Resource selection.Separately below into Row explanation:
(a), code check set is provided by terminal device
Terminal device can obtain above-mentioned burst information set, then terminal is set before sending resource request from server It is standby to calculate smooth code check, then smooth code check is compared with each code check in burst information set, it may finally determine Less than the code check set of the code check of the smooth code check, finally by the information for indicating the code check set or the code check set It carries in resource request.
As it can be seen that providing above-mentioned code check set by terminal device for server, server side can be reduced and determining target point When piece, it is only necessary to traverse the code check in code check set.Certainly, if determining above-mentioned code check set by server, then, (a) in kind mode, if directly being provided by terminal device, there is no need to go from burst information set to compare one time by server .It can be seen that using this programme, the operand of server can be effectively reduced, and then improve operation efficiency, it is final so that service Device can quickly navigate to target fragment.
(b), code check set is provided by server
If above-mentioned code check set is determined by server, then, server only needs the smoothing code obtained from terminal device Rate is assured that out above-mentioned code check set, and server determines that the mode of code check set is identical as terminal device, does not make herein It repeats.
Server is after determining code check set, so that it may to determine target fragment by traversing code check set, pass through contracting The search range of small code check, in this way when determining target fragment, there is no need to by smooth code check respectively in burst information set Each code check traverse one time, it is only necessary to traverse the code check in code check set.It can be seen that using this programme, can have Effect reduces the operand of server, and then improves operation efficiency, finally enables the server to quickly navigate to target fragment.
2, the server, can be according to Mean Speed and the candidate code check pair after selecting candidate code check in code check set The fragment size for the target fragment answered obtains the prediction downloading duration of the candidate fragment, and the Mean Speed is that the terminal is set The Mean Speed of standby current downloading slicing.Optionally, the Mean Speed can be carried in the resource request, or by the clothes Business device counts to obtain.
3, after the prediction downloading duration for obtaining the candidate fragment, the server judges the prediction of the candidate fragment Whether downloading duration is more than the caching duration, if the prediction downloading duration, more than the caching duration, server is from institute The code check for selecting code check in code check set less than the candidate fragment is stated as the candidate code check, and is repeated foregoing " calculate the prediction downloading duration of candidate fragment and judge whether the prediction downloading duration of candidate fragment is more than the caching duration " Operation, until find prediction downloading duration be less than caching duration candidate fragment.
If correspondingly, the prediction downloading duration of candidate's fragment is less than the caching duration, the server is by institute It states candidate fragment and is sent to the terminal device as the target fragment.
In some possible designs, when having many terminal devices to ask video film source resource to server at the same time, it is The judgement duration of server side is reduced, if the prediction downloading duration of candidate's fragment is more than the caching duration, server can It directly selects at least one to belong to identical with candidate's fragment and regard from the current video film source to be played of the terminal device Frequency film source and code check are less than the fragment of the candidate fragment.Then, request response is sent to the terminal and set by the server It is standby, wherein the request response carries and the candidate fragment belongs to same video film source and code check is less than the candidate fragment Fragment download address, so that terminal device directly downloads.Optionally, it can be carried in request response and the candidate fragment The download address of the minimum fragment of code check in affiliated video film source can ensure that the broadcasting that terminal equipment side can be smooth should in this way Fragment.By this treatment mechanism, response of the server side to multiple terminal devices can be advanced optimized, clothes can be improved in this way The treatment effeciency of business device, while also reducing the waiting time of terminal equipment side.
In some possible designs, the resource request further includes being used to indicate whether the server is switched to code check The field of adaptive model, in a kind of embodiment, which can be dynamic requests (dynamic-request).If Dynamic-request instruction value be 1 when, then it represents that currently employed code check adaptive model, then server just need into Mobile state code check switches, and can extend header field by the first two of resource request and identify that currently the downloading rate with terminal device is most Matched fragment, and the fragment is returned into terminal device.If the value of dynamic-request instructions is 0, then it represents that when It is preceding not use code check adaptive model (such as user closes the adaptive work(of code check manually in the client of terminal device Can), then server, after receiving the resource request, there is no need to carry out dynamic code rate switching.
In some possible designs, it is contemplated that terminal device sends out resource request to server and calculates the pre- of candidate fragment During surveying downloading duration, the caching of the buffer area of terminal device can have some consumption, so, determine mesh to improve server side Mark the accuracy of fragment, it is also necessary to consider the caching consumption of this period terminal device buffer area.Terminal device can be in institute as a result, The field that resource request carries instruction caching offset is stated, the caching offset refers to sending the money from the terminal device During source request receives the resource request to the server, the estimation of the caching consumption of the terminal device buffer area Value.The estimated value can be empirical value, can also be terminal device and calculated according to current playback rate dynamic, specific the application It is not construed as limiting, such server subtracts the caching offset when comparison prediction downloading duration is with caching duration.
The application second aspect provides a kind of method of adjustment streaming media bit rate, the method includes:
Terminal device obtains current smooth code check and burst information set, and the smooth code check is and the terminal device The matched code check of downloading rate of current foradownloaded video film source, the burst information set include the fragment letter of few two fragments Breath, at least two fragment belong to current same video film source to be played, and burst information includes fragment size and fragment Code check;
The terminal device determines target bit rate from the burst information set, and resource request is sent to the service Device, the target bit rate are less than the smooth code check, and the prediction downloading duration of the corresponding target fragment of the target bit rate is less than The current caching duration of the terminal device buffer area, the resource request download the corresponding mesh of the target bit rate for asking Mark fragment.
In current mechanism, smooth code check can only be compared by client with the average bit rate of fragment, eventually lead to code check The ping-pong of switching.Compared with current mechanism, in scheme provided herein, terminal device obtains smooth code check and fragment After information aggregate, the target bit rate less than the smooth code check can be selected from burst information set, when the determining target chosen When the prediction downloading duration of the corresponding target fragment of code check is less than current caching duration, it is current to mean that the target bit rate adapts to Bandwidth, so terminal device can carry the target bit rate be sent to server in resource request, it is suitable to finally obtain Target fragment.It can be seen that terminal device by by the prediction downloading duration of target fragment with caching duration be compared, Neng Gouzhun True judges whether the target fragment corresponding to itself calculated target bit rate meets the condition of current smooth playing, with housecoat Business device can provide the fragment adapted to terminal device for terminal device in real time, ensure the broadcasting continuity of Streaming Media, can also subtract The problem of few broadcasting interim card caused when progress dynamic code rate switching during streaming media playing, network is utilized to greatest extent Bandwidth resources.
In some possible designs, the terminal device obtain current smooth code check and burst information set it Afterwards, for the terminal device before determining target bit rate in the burst information set, the terminal device can also be from described point The code check set less than the smooth code check is determined in piece information aggregate, after determining code check set, terminal device can be true Set the goal fragment, and by reducing the search range of code check, in this way when determining target fragment, there is no need to divide smooth code check It is not traversed one time with each code check in burst information set, it is only necessary to traverse the code check in code check set.Thus may be used See, using this programme, operand can be effectively reduced, can also improve operation efficiency.
In some possible designs, the terminal device determines target bit rate from the burst information set, will provide Source request is sent to the server, it may include:
The terminal device selects candidate code check from the code check set, then according to the corresponding time of candidate's code check The fragment size and the Mean Speed for selecting fragment obtain the prediction downloading duration of the candidate fragment.
After the prediction downloading duration for obtaining the candidate fragment, the terminal device judges the prediction of the candidate fragment Whether downloading duration is more than the caching duration, if the prediction downloading duration of candidate's fragment is more than the caching duration, The code check less than the candidate fragment is selected to repeat above-mentioned " calculate as the candidate code check from the fragment set The prediction downloading duration of candidate fragment and judge the prediction downloading duration of candidate fragment whether more than the caching duration " behaviour Make, until finding the corresponding target bit rate of candidate fragment that prediction downloading duration is less than caching duration.
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as described in The resource request is sent to the server by target bit rate, and the resource request downloads the target bit rate for asking The corresponding target fragment.
In some possible designs, in addition to terminal device voluntarily determines target fragment, it can also be determined by server, So, terminal device just needs to provide for server and determines the relevant parameter of target fragment.Specifically, the terminal device After code check of the selection less than the smooth code check in burst information set, another resource can be sent to the server and asked It asks, another resource request may include the caching duration of the smooth code check and the terminal device buffer area.
Later, the server is after receiving above-mentioned another resource request, and selection is less than institute from burst information set The code check for stating smooth code check, when the prediction downloading duration of the determining corresponding fragment of code check chosen is cached less than the terminal device When the current caching duration in area, the server will predict that downloading duration is less than the fragment of the caching duration and is sent to the end End equipment.
For server, how another resource request sent according to terminal device determines the specific behaviour of target fragment The technical solution described in above-mentioned first aspect is can refer to, is not repeated herein.
It should be noted that for whether by terminal device to determine target fragment, or target determined by server Fragment preferentially can determine target fragment by terminal device, can effectively reduce the computational load of server in this way, also can Improve the accuracy rate determined with the target fragment of actual download rate-matched.Terminal device can actively execute determining target bit rate Operation;Can also be that the parameter of operation is provided for server when user closes the function of code check switching at runtime, finally by Server determines target fragment;It is also possible that not considering whether user closes the function of code check switching at runtime, terminal device is all The parameter that operation can be actively provided for server, finally determines target fragment by server;Can certainly be set in terminal For when can not correctly determine target bit rate, above-mentioned another resource request is sent out to server.
Optionally, in order to reduce the operation of server, terminal device can also be carried in another resource request for referring to Show the information of the code check set in the burst information set less than the smooth code check so that server small-scale can be gone It determines candidate's code check, reduce the prediction downloading duration for judging candidate fragment whether less than operations such as the numbers of caching duration, finally It enables the server to quickly navigate to target fragment.
Optionally, another resource request further includes the Mean Speed of the current downloading slicing of the terminal device, described Mean Speed calculates the prediction downloading duration of fragment for the server.
Optionally, it is contemplated that terminal device is sent out under the prediction that above-mentioned another resource request to server calculates candidate fragment During carrying duration, the caching of the buffer area of terminal device can have some consumption, so, determine target point to improve server side The accuracy of piece, it is also necessary to consider the caching consumption of this period terminal device buffer area.Terminal device can be above-mentioned another as a result, One resource request carries the field of instruction caching offset, and the caching offset refers to above-mentioned another from terminal device transmission During one resource request receives another resource request to the server, the caching of the terminal device buffer area consumes Estimated value.The estimated value can be empirical value, can also be terminal device and calculated according to current playback rate dynamic, specifically The application is not construed as limiting, and such server subtracts the caching offset when comparison prediction downloading duration is with caching duration.
The application third aspect provides a kind of server, has the adjustment stream matchmaker for realizing and corresponding to the offer of above-mentioned first aspect The function of the method for body code check.The function can also execute corresponding software realization by hardware realization by hardware. Hardware or software include one or more modules corresponding with above-mentioned function, and the module can be software and/or hardware.
In a kind of possible design, the server may include:
Transceiver module is used for the resource request of receiving terminal apparatus, and the resource request includes smoothing code rate and the end The caching duration of end equipment buffer area, the smooth code check are the downloading rate with the current foradownloaded video film source of the terminal device Matched code check;
Processing module passes through institute for determining target fragment from the current video film source to be played of the terminal device It states transceiver module and the target fragment is sent to the terminal device, the code check of the target fragment is less than the smoothing code The prediction downloading duration of rate, the target fragment is less than the caching duration.
Optionally, the processing module is specifically used for:
It refers to being less than the smoothing code in burst information set that candidate code check, the code check set are selected from code check set The set of the code check of rate, the burst information set include the burst information of at least two fragments, at least two fragments category In current same video film source to be played, burst information includes the code check of fragment size and fragment;
The candidate fragment is obtained according to the fragment size of Mean Speed and the corresponding target fragment of the candidate code check Predict that downloading duration, the Mean Speed are the Mean Speed of the current downloading slicing of the terminal device;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if the prediction downloading duration More than the caching duration, then select code check less than the code check of the candidate fragment as the candidate from the code check set Code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, will be described by the transceiver module Candidate fragment is sent to the terminal device as the target fragment.
Optionally, the instruction of instruction information or the code check set that the code check set is carried by the resource request By the server according to the smooth code check from the set of the code check of the burst information Resource selection.
Optionally, the Mean Speed is carried in the resource request, or is obtained by the server statistics.
Optionally, the processing module is additionally operable to:
If the prediction downloading duration of candidate's fragment is more than the caching duration, will be asked by the transceiver module Response is sent to the terminal device, and the request response carrying belongs to same video film source with the candidate fragment and code check is low In the download address of the fragment of the candidate fragment.
Optionally, the resource request further includes being used to indicate whether the server is switched to code check adaptive model Field, and/or, the resource request further includes the field of instruction caching offset, and the caching offset refers to from the end During the end equipment transmission resource request receives the resource request to the server, the terminal device buffer area Cache the estimated value of consumption.
In alternatively possible design, the server includes:
At least one processor, memory and transceiver;
Wherein, the memory is used to call the program in the memory for storing program code, the processor Code executes following operation:
By the resource request of the transceiver receiving terminal apparatus, the resource request includes smoothing code rate and the end The caching duration of end equipment buffer area, the smooth code check are the downloading rate with the current foradownloaded video film source of the terminal device Matched code check;
Target fragment is determined from the current video film source to be played of the terminal device, it will be described by the transceiver Target fragment is sent to the terminal device, and the code check of the target fragment is less than the smooth code check, the target fragment Predict that downloading duration is less than the caching duration.
Optionally, the processor is specifically used for:
It refers to being less than the smoothing code in burst information set that candidate code check, the code check set are selected from code check set The set of the code check of rate, the burst information set include the burst information of at least two fragments, at least two fragments category In current same video film source to be played, burst information includes the code check of fragment size and fragment;
The candidate fragment is obtained according to the fragment size of Mean Speed and the corresponding target fragment of the candidate code check Predict that downloading duration, the Mean Speed are the Mean Speed of the current downloading slicing of the terminal device;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if the prediction downloading duration More than the caching duration, then select code check less than the code check of the candidate fragment as the candidate from the code check set Code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, by the transceiver by the time Fragment is selected to be sent to the terminal device as the target fragment.
Optionally, the instruction of instruction information or the code check set that the code check set is carried by the resource request By the server according to the smooth code check from the set of the code check of the burst information Resource selection.
Optionally, the Mean Speed is carried in the resource request, or is obtained by the server statistics.
Optionally, the processor is additionally operable to:
If the prediction downloading duration of candidate's fragment is more than the caching duration, request is rung by the transceiver It should be sent to the terminal device, the request response carrying belongs to same video film source with the candidate fragment and code check is less than The download address of the fragment of candidate's fragment.
Optionally, the resource request further includes being used to indicate whether the server is switched to code check adaptive model Field, and/or, the resource request further includes the field of instruction caching offset, and the caching offset refers to from the end During the end equipment transmission resource request receives the resource request to the server, the terminal device buffer area Cache the estimated value of consumption.
The application fourth aspect provides a kind of terminal device, has the adjustment stream realized and correspond to the offer of above-mentioned second aspect The function of the method for media code rate by utilizing.The function it is real can also to execute corresponding software by hardware realization by hardware It is existing.Hardware or software include one or more modules corresponding with above-mentioned function, and the module can be software and/or firmly Part.
In a kind of possible design, the terminal device may include:
Transceiver module, for obtaining current smooth code check and burst information set, the smooth code check is and the end The matched code check of downloading rate of the current foradownloaded video film source of end equipment, the burst information set include point of few two fragments Piece information, at least two fragment belong to current same video film source to be played, and burst information includes fragment size and divides The code check of piece;
Processing module passes through for determination target bit rate in the burst information set that is obtained from the transceiver module Resource request is sent to the server by the transceiver module, and the target bit rate is less than the smooth code check, the target The prediction downloading duration of the corresponding target fragment of code check is less than the current caching duration of the terminal device buffer area, the resource Request downloads the corresponding target fragment of the target bit rate for asking.
Optionally, the processing module the transceiver module obtain current smooth code check and burst information set it Afterwards, it before determining target bit rate in the burst information set, is additionally operable to:
The code check set less than the smooth code check is determined from the burst information set.
Optionally, the processing module is specifically used for:
Candidate code check is selected from the code check set;
Described candidate point is obtained according to the fragment size of the corresponding candidate fragment of candidate's code check and the Mean Speed The prediction downloading duration of piece;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if candidate's fragment is pre- It surveys downloading duration and is more than the caching duration, then select the code check less than the candidate fragment as institute from the fragment set State candidate code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as described in The resource request is sent to the server by target bit rate by the transceiver module, and the resource request is for asking Download the corresponding target fragment of the target bit rate.
In alternatively possible design, the terminal device includes:
At least one processor, memory and transceiver;
Wherein, the memory is used to call the program in the memory for storing program code, the processor Code executes following operation:
Current smooth code check and burst information set are obtained by the transceiver, the smooth code check is and the end The matched code check of downloading rate of the current foradownloaded video film source of end equipment, the burst information set include point of few two fragments Piece information, at least two fragment belong to current same video film source to be played, and burst information includes fragment size and divides The code check of piece;
Target bit rate is determined from the burst information set obtained by the transceiver, it will by the transceiver Resource request is sent to the server, and the target bit rate is less than the smooth code check, the corresponding target of the target bit rate The prediction downloading duration of fragment is less than the current caching duration of the terminal device buffer area, under the resource request is for asking Carry the corresponding target fragment of the target bit rate.
Optionally, the processor is after the transceiver obtains current smooth code check and burst information set, Before determining target bit rate in the burst information set, it is additionally operable to:
The code check set less than the smooth code check is determined from the burst information set.
Optionally, the processing processor is specifically used for:
Candidate code check is selected from the code check set;
Described candidate point is obtained according to the fragment size of the corresponding candidate fragment of candidate's code check and the Mean Speed The prediction downloading duration of piece;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if candidate's fragment is pre- It surveys downloading duration and is more than the caching duration, then select the code check less than the candidate fragment as institute from the fragment set State candidate code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as described in The resource request is sent to the server, under the resource request is for asking by target bit rate by the transceiver Carry the corresponding target fragment of the target bit rate.
The another aspect of the application provides a kind of computer readable storage medium, in the computer readable storage medium It is stored with instruction, when run on a computer so that computer executes the method described in above-mentioned various aspects.
Compared to the prior art, in scheme provided by the present application, what server was sent in receiving terminal apparatus includes smooth After the resource request of code check and caching duration, target fragment is determined from video film source, then the server divides the target Piece is sent to the terminal device.As it can be seen that since the code check that server is sent to the target fragment of terminal device is less than described put down Slip rate, and the prediction downloading duration of the target fragment is less than the caching duration, so being ultimately sent to terminal device Target fragment is the condition for meeting current smooth playing, can provide point adapted to terminal device in real time for terminal device Piece, ensures the broadcasting continuity of Streaming Media, can also reduce and carry out being caused when dynamic code rate switching during streaming media playing Broadcasting interim card the problem of, to greatest extent utilize network bandwidth resources.
Description of the drawings
Fig. 1 is a kind of network topology structure schematic diagram in the embodiment of the present invention;
Fig. 2 is a kind of flow diagram of the adjustment streaming media bit rate in the embodiment of the present invention;
Fig. 3 is another flow diagram of the adjustment streaming media bit rate in the embodiment of the present invention;
Fig. 4 is another flow diagram of the adjustment streaming media bit rate in the embodiment of the present invention;
Fig. 5 is another flow diagram of the adjustment streaming media bit rate in the embodiment of the present invention;
Fig. 6 is a kind of structural schematic diagram of the device of the adjustment streaming media bit rate in the embodiment of the present invention;
Fig. 7 is a kind of structural representation of the entity apparatus of the device of the execution adjustment streaming media bit rate in the embodiment of the present invention Figure.
Specific implementation mode
Term " first ", " second " in the description and claims of this application and above-mentioned attached drawing etc. are for distinguishing Similar object, without being used to describe specific sequence or precedence.It should be appreciated that the data used in this way are in appropriate feelings It can be interchanged under condition, so that the embodiments described herein can be real with the sequence other than the content for illustrating or describing herein It applies.In addition, term " comprising " and " having " and their any deformation, it is intended that cover it is non-exclusive include, for example, packet Contained series of steps or module process, method, system, product or equipment those of be not necessarily limited to clearly to list step or Module, but may include not listing clearly or for the intrinsic other steps of these processes, method, product or equipment or Module, the division of the module appeared in the application, only a kind of division in logic can have when realizing in practical application Other dividing mode, such as multiple modules can be combined into or are integrated in another system, or some features can be ignored, Or do not execute, in addition, shown or discussion mutual coupling, direct-coupling or communication connection can be by one A little interfaces, INDIRECT COUPLING or communication connection between module can be electrical or other similar forms, not make in the application It limits.Also, the module or submodule illustrated as separating component can be the separation that may not be physically, can be Physical module is can not be, or can be distributed in multiple circuit modules, portion therein can be selected according to the actual needs Point or whole module realize the purpose of application scheme.
The application has supplied a kind of method and apparatus of adjustment streaming media bit rate, can be used for direct seeding technique field.It carries out below It is described in detail.Fig. 1 is a kind of network topological diagram of streaming media, and server end stores various video film sources, each piece of video Source includes the fragment of multiple and different code checks, and server can be used for creating client, the various information for configuring client and processing The various requests of client are directed on terminal device, in addition, it may also be used for preserve the operation data of the user using client.Eventually It is mounted with to hand over client in end equipment, may be in response to the various operational orders that user is directed to client, can be carried out with server Interaction.
In the application, terminal device can send resource request to ask the fragment of different code checks, then at end to server It is played in the client installed in end equipment.
Wherein, it should be strongly noted that this application involves server can be proxy server, web page server Deng.This application involves terminal device, can refer to the equipment for providing a user voice and/or data connectivity, have wireless The portable equipment of linkage function or other processing equipments for being connected to radio modem.Wireless terminal can be through wireless Access net (full name in English:Radio Access Network, English abbreviation:RAN it) is communicated with one or more core net, Wireless terminal can be mobile terminal, such as mobile phone (or be " honeycomb " phone) and the computer with mobile terminal, example Such as, it can be portable, pocket, hand-held, built-in computer or vehicle-mounted mobile device, they and wireless access network Exchange voice and/or data.For example, personal communication service (full name in English:Personal Communication Service, English abbreviation:PCS) phone, wireless phone, Session initiation Protocol (SIP) phone, wireless local loop (Wireless Local Loop, English abbreviation:WLL it) stands, personal digital assistant (full name in English:Personal Digital Assistant, English letter Claim:The equipment such as PDA).Wireless terminal is referred to as system, subscriber unit (Subscriber Unit), subscriber station (Subscriber Station), movement station (Mobile Station), mobile station (Mobile), distant station (Remote Station), access point (Access Point), remote terminal (Remote Terminal), access terminal (Access Terminal), user terminal (User Terminal), terminal device, user agent (User Agent), user equipment (User ) or user equipment (User Equipment) Device.
When due to being broadcast live video using adaptive stream media transmission technology, the selected code check to be switched of client Accuracy it is not high, will produce code check switching ping-pong.In order to solve the above technical problems, the application mainly provides following skill Art scheme:
Scheme one:The gentle caching duration and terminal for depositing area of smooth code check provided according to terminal device by server The Mean Speed of the current downloading slicing of equipment, to predict whether the code check of fragment to be downloaded of selection can be in ruing out of buffer area It completes to download before caching.
Scheme two:After calculating smooth code check peace rate by terminal device, the fragment to be downloaded of selection is voluntarily predicted Code check whether can be cached in ruing out of buffer area before complete download.
Through the above scheme one and scheme two, ping-pong when can solve the problems, such as to be broadcast live video improves dynamic The accuracy and terminal device of state switching code rate play the stability of fragment, scheme one and scheme two can also replace into Row, specific the application are not construed as limiting.
It is understood that the server and terminal device in the application can be described as the dress for adjusting streaming media bit rate It sets, which can be provided in device end, under some scenes, can also be arranged to be used as to have to adjust in terminal device and flow Following embodiments of the client of media code rate by utilizing function, the application are mainly set to server end and terminal device with the device For end is respectively as server-side, if the device is the client being set in terminal device, then, in adjustment streaming media bit rate When, adjusting the operation of streaming media bit rate can be completed by the client, the equipment which type the specific device is set to, this Shen It please be not construed as limiting.
With reference to Fig. 2, the angle of target fragment is determined from server below, to adjustment streaming media bit rate provided by the present application Method is illustrated, and this method embodiment includes mainly:
201, terminal device calculates the caching duration of smooth code check and present terminal equipment buffer area.
The smooth code check is the matched code check of downloading rate with the current foradownloaded video film source of the terminal device, this is flat Slip rate can adapt to current bandwidth, be the best ideal code check of present terminal device plays video film source, and terminal device uses The smooth code check plays video, then is not in Caton phenomenon.
The caching duration refers to then the remaining data buffer storage capacity in present terminal equipment buffer area, is referred to as Data duration, playable duration or data buffer storage amount.It should be noted that super text can be used in the resource request in the application This transport protocol (full name in English:HyperText Transfer Protocol, English abbreviation:HTTP it) downloads and divides as request The agreement of piece, terminal device can send HTTP GET requests to server, two extensions can be carried in the HTTP GET requests Head file:Avg-download-rate (Mean Speed for indicating present terminal device downloads fragment) and buffer- Length (the caching duration for indicating present terminal equipment buffer area).It is data cached in the buffer area of terminal device in the application It refer to the video data of the currently playing video film source of client.
202, terminal device sends resource request to server.
The resource request mainly includes the caching duration of smooth code check and the terminal device buffer area.
203, it is currently to be played to find the terminal device in the database for the resource request of server receiving terminal equipment Video film source.
204, server determines target fragment from the current video film source to be played of the terminal device, then by the mesh Mark fragment is sent to the terminal device.
Wherein, the code check of the target fragment is less than the smooth code check, and the prediction downloading duration of the target fragment is small In the caching duration.
205, terminal device receives the target fragment that server is sent.
In current mechanism, smooth code check can only be compared by client with the average bit rate of fragment, eventually lead to code check The ping-pong of switching.What to be then server compared with current mechanism, in the application sent in receiving terminal apparatus includes smooth After the resource request of code check and caching duration, target fragment is determined from video film source, then the server divides the target Piece is sent to the terminal device.As it can be seen that since the code check that server is sent to the target fragment of terminal device is less than described put down Slip rate, and the prediction downloading duration of the target fragment is less than the caching duration, so being ultimately sent to terminal device Target fragment is the condition for meeting current smooth playing, can provide point adapted to terminal device in real time for terminal device Piece, ensures the broadcasting continuity of Streaming Media, can also reduce and carry out being caused when dynamic code rate switching during streaming media playing Broadcasting interim card the problem of, to greatest extent utilize network bandwidth resources.
Optionally, in some inventive embodiments, it is contemplated that the computational complexity and computational load of server are determining mesh Before marking fragment, the server also acquirable code rate set is to improve operation efficiency.In some embodiments, the code check collection Conjunction can be indicated by the instruction information that the resource request carries or the code check set can be by the server according to described flat Set of the slip rate from the code check of the burst information Resource selection.It illustrates separately below:
(a), code check set is provided by terminal device
Terminal device can obtain above-mentioned burst information set, then terminal is set before sending resource request from server It is standby to calculate smooth code check, then smooth code check is compared with each code check in burst information set, it may finally determine Less than the code check set of the code check of the smooth code check, finally by the information for indicating the code check set or the code check set It carries in resource request.
As it can be seen that providing above-mentioned code check set by terminal device for server, server side can be reduced and determining target point When piece, it is only necessary to traverse the code check in code check set.Certainly, if determining above-mentioned code check set by server, then, (a) in kind mode, if directly being provided by terminal device, there is no need to go from burst information set to compare one time by server .It can be seen that using this programme, the operand of server can be effectively reduced, and then improve operation efficiency, it is final so that service Device can quickly navigate to target fragment.
(b), code check set is provided by server
If above-mentioned code check set is determined by server, then, server only needs the smoothing code obtained from terminal device Rate is assured that out above-mentioned code check set, and server determines that the mode of code check set is identical as terminal device, does not make herein It repeats.
Server is after determining code check set, so that it may to determine target fragment by traversing code check set, pass through contracting The search range of small code check, in this way when determining target fragment, there is no need to by smooth code check respectively in burst information set Each code check traverse one time, it is only necessary to traverse the code check in code check set.It can be seen that using this programme, can have Effect reduces the operand of server, and then improves operation efficiency, finally enables the server to quickly navigate to target fragment.
After obtaining above-mentioned code check set, server can start to execute the operation of determining target fragment, above-mentioned steps 204 In, the server determines target fragment from the current video film source to be played of the terminal device, by the target fragment The described operations of following 1-3 can be referred to by being sent to the detailed process of the terminal device.
1, server can select candidate code check from code check set, and the code check set refers to being less than in burst information set The set of the code check of the smooth code check, the burst information set include the burst information of at least two fragments, it is described at least Two fragments belong to current same video film source to be played, and burst information includes the code check of fragment size and fragment.
2, the server, can be according to Mean Speed and the candidate code check pair after selecting candidate code check in code check set The fragment size for the target fragment answered obtains the prediction downloading duration of the candidate fragment, and the Mean Speed is that the terminal is set The Mean Speed of standby current downloading slicing.Optionally, the Mean Speed can be carried in the resource request, or by the clothes Business device counts to obtain.
3, after the prediction downloading duration for obtaining the candidate fragment, the server judges the prediction of the candidate fragment Whether downloading duration is more than the caching duration, if the prediction downloading duration, more than the caching duration, server is from institute The code check for selecting code check in code check set less than the candidate fragment is stated as the candidate code check, and is repeated foregoing " the candidate code check of selection calculates the prediction downloading duration of candidate fragment and judges whether the prediction downloading duration of candidate fragment is more than The operation of the caching duration ", until finding the candidate fragment that prediction downloading duration is less than caching duration.
If correspondingly, the prediction downloading duration of candidate's fragment is less than the caching duration, the server is by institute It states candidate fragment and is sent to the terminal device as the target fragment.
It can be seen that be then server in the application receiving terminal apparatus send to include that smooth code check is gentle deposit duration Resource request after, the candidate code check less than the smooth code check can be selected from code check set, when determining the Candidate key chosen When the prediction downloading duration of the corresponding candidate fragment of rate is less than the terminal device buffer area current caching duration, server will Candidate's fragment is sent to the terminal device as target fragment.When invisible service device is by downloading the prediction of candidate fragment It is long to be compared with caching duration, it can accurately judge that terminal device is asked the fragment of switching whether to meet current smoothness and broadcast The condition put can provide the fragment adapted to terminal device for terminal device in real time, ensure the broadcasting continuity of Streaming Media, It the problem of broadcasting interim card that the when of carrying out dynamic code rate switching during streaming media playing is caused can be reduced, utilizes to greatest extent Network bandwidth resources.
Optionally, in some inventive embodiments, there are many terminal devices to server request video film source money at the same time When source, to reduce the judgement duration of server side, if the prediction downloading duration of candidate's fragment is more than the caching duration, clothes Business device can directly select at least one with candidate's fragment to belong to from the current video film source to be played of the terminal device Same video film source and code check are less than the fragment of the candidate fragment.Then, request response is sent to described by the server Terminal device, wherein the request response carries and the candidate fragment belongs to same video film source and code check is less than the time The download address for selecting the fragment of fragment, so that terminal device directly downloads.Optionally, it can be carried and the time in request response The download address for selecting the minimum fragment of code check in the affiliated video film source of fragment can ensure what terminal equipment side can be smooth in this way Play the fragment.By this treatment mechanism, response of the server side to multiple terminal devices can be advanced optimized, it in this way can be with The treatment effeciency of server is improved, while also reducing the waiting time of terminal equipment side.
Optionally, in some inventive embodiments, the resource request further includes being used to indicate whether the server is cut Change to the field of code check adaptive model, in a kind of embodiment, which can be dynamic requests (dynamic- request).If the value of dynamic-request instructions is 1, then it represents that currently employed code check adaptive model, then taking Business device just needs to carry out dynamic code rate switching, can extend header field by the first two of resource request and identify currently and terminal device The most matched fragment of downloading rate, and the fragment is returned into terminal device.If the value of dynamic-request instructions is When 0, then it represents that not using code check adaptive model currently, (such as user closes code check manually in the client of terminal device Adaptive function), then server, after receiving the resource request, there is no need to carry out dynamic code rate switching.
Optionally, in some inventive embodiments, it is contemplated that terminal device sends out resource request to server and calculates candidate During the prediction downloading duration of fragment, the caching of the buffer area of terminal device can have some consumption, so, to improve server Side determines the accuracy of target fragment, it is also necessary to consider the caching consumption of this period terminal device buffer area.Terminal is set as a result, The standby field that instruction caching offset can be carried in the resource request, the caching offset refers to being sent out from the terminal device During sending the resource request to receive the resource request to the server, the caching of the terminal device buffer area consumes Estimated value.The estimated value can be empirical value, can also be terminal device and calculated according to current playback rate dynamic, specifically The application is not construed as limiting, and such server subtracts the caching offset when comparison prediction downloading duration is with caching duration.
For ease of understanding, Fig. 3 of the application also provides a kind of detailed flow chart, operation specific as follows:
In terminal equipment side, then terminal device is calculated from the corresponding burst information set of server foradownloaded video film source The code check of next fragment to be played is sending the resource request for downloading the fragment to server, is being carried in the resource request The code check of calculated next fragment to be played can also carry the header field word for being used to indicate whether switching dynamic self-adapting pattern The value of section dynamic-switch, the dynamic-switch can be 1 or 0.
In server side, after server receives the resource request of terminal device transmission, it is according to resource request Dynamic-switch judges whether to need to carry out fragment switching.When the value of dynamic-switch is 1, then whether entrance needs The operation that fragment switching calculates is carried out, if so, so server calculates the fragment for needing to return to terminal device, calculating needs After the fragment wanted, which is issued into terminal device so that the fragment received is put into broadcasting buffer area by terminal device, to wait for It plays.If the operation that fragment switching calculates need not be carried out, then server can directly be read according to resource request from database Corresponding fragment content is taken, the fragment is then issued into terminal device so that the fragment received is put into broadcasting and delayed by terminal device Deposit area, with etc. it is to be played.
When dynamic-switch value be 0, then ignore the resource request.
With reference to Fig. 4, the angle of target fragment is determined from terminal device below, to adjustment streaming media bit rate provided by the present application Method be illustrated, client is mounted on terminal device, the client can be used for play download video, this method Embodiment includes mainly:
401, terminal device obtains current smooth code check burst information collection corresponding with current video film source to be played It closes.
Wherein, the smooth code check is the matched code of downloading rate with the current foradownloaded video film source of the terminal device Rate.The smooth code check can be dependent on the parameters such as the code check of current network bandwidth and the expanded state of terminal device buffer area to count It calculates, other new parameters is added on the basis that can also be calculated in current mechanism, specific the application is not construed as limiting.
The burst information set includes the burst information of few two fragments, and at least two fragment, which belongs to, currently to be waited broadcasting The same video film source put, burst information include the code check of fragment size and fragment.The burst information set can be from server It obtains, can also be obtained by other approach, for example, mail, short message or network data base etc., this Shen of specific acquiring way It please be not construed as limiting.
The burst information set can be described as media description file, film source code check list etc., if the fragment of video film source Dynamic self-adapting stream (full name in English based on HTTP:Dynamic Adaptive Streaming over HTTP, English letter Claim:DASH it) transmits, then the burst information collection downloaded is combined into display advertising description (full name in English:Media Presentation Description, English abbreviation:MPD) file after terminal device obtains MPD file, can be obtained by parsing MPD file Then the relevant information of video uses HTTP request can the corresponding fragment of press piece acquisition;If the fragment of video film source is based on Hypertext transfer protocol live TV stream (full name in English:HTTP Live Streaming, English abbreviation:HLS it) transmits, then downloading Burst information collection be combined into m3u8 files.Such as some Streaming Media can support that the video of 2 kinds of code checks, the video of each code check include 3 fragments divide the burst information of the fragment of various code checks included in so above-mentioned burst information set that can pass through one Table is presented, as shown in table 1 below:
Code check Fragment size
Code check 1 (2Mbps) Fragment 1 (30000Byte)
Fragment 2 (25000Byte)
Fragment 3 (32000Byte)
Code check 2 (4Mbps) Fragment 1 (50000Byte)
Fragment 2 (60000Byte)
Fragment 3 (55000Byte)
Table 1
402, terminal device determines target bit rate from the burst information set.
Wherein, the target bit rate is less than the smooth code check, under the prediction of the corresponding target fragment of the target bit rate It carries duration and is less than the current caching duration of the terminal device buffer area.
403, resource request is sent to the server by terminal device.
The resource request downloads the corresponding target fragment of the target bit rate for asking, and may indicate that in the resource request Target bit rate.
404, target fragment is handed down to terminal device by server.
405, terminal device receives the target fragment that server is sent.
In current mechanism, smooth code check can only be compared by client with the average bit rate of fragment, eventually lead to code check The ping-pong of switching.Compared with current mechanism, in scheme provided herein, on the one hand, terminal device obtains smoothing code After rate and burst information set, the target bit rate less than the smooth code check can be selected from burst information set, selected when determining In the corresponding target fragment of target bit rate prediction downloading duration be less than current caching duration when, mean that the target bit rate Current bandwidth is adapted to, so terminal device can carry the target bit rate is sent to server in resource request, finally Obtain suitable target fragment.It can be seen that terminal device is by comparing the prediction downloading duration of target fragment and caching duration Compared with can accurately judge whether the target fragment corresponding to itself calculated target bit rate meets the item of current smooth playing Part ensures that the broadcasting of Streaming Media is continuous so that server can provide the fragment adapted to terminal device for terminal device in real time Property, can also reduce during streaming media playing carry out dynamic code rate switching when caused broadcasting interim card the problem of, maximum limit Degree utilizes network bandwidth resources.
On the other hand, it is contemplated that network bandwidth fluctuation, the factors such as local consumption of caching duration can all influence currently Smooth code check, it is possible to even if occurring calculated smooth code check being sent to server, and server determines target fragment It needs to consume operation duration, during server operation, the smooth code check that may be currently provided to server may not The network bandwidth of present terminal equipment side is adapted to, such server is according to the gentle target deposited duration and determined of smooth code check Code check may be inaccurate, and especially in the case where network bandwidth reduces, the calculated target bit rate of server institute is substantially height In the new calculated smooth code check of terminal equipment side at this time.The target fragment that server finally determines in this way may be inaccurate, Terminal equipment side can be caused to occur playing Caton phenomenon.And in the application, it is gone to determine target fragment by terminal device, due to smooth Code check be calculated from Mobile state by terminal device, then, the calculated smooth code check of terminal device institute be can represent it is current Network bandwidth adapts to the true smooth code check that terminal device plays.So said program is implemented by terminal device, it can be effective Exclusion be transmitted to caused by the network fluctuation phenomenon being likely to occur during server inaccurate problem.
Optionally, in some inventive embodiments, current smooth code check and burst information are obtained in the terminal device After set, for the terminal device before determining target bit rate in the burst information set, the terminal device can also be from The code check set less than the smooth code check is determined in the burst information set, after determining code check set, terminal device is just It can determine target fragment, by reducing the search range of code check, in this way when determining target fragment, there is no need to will be smooth Code check traverses one time with each code check in burst information set respectively, it is only necessary to traverse the code check in code check set. It can be seen that using this programme, operand can be effectively reduced, can also improve operation efficiency.
After obtaining code check set, the terminal device determines target bit rate from the burst information set, by resource Request is sent to the server, it may include:
The terminal device selects candidate code check from the code check set, then according to the corresponding time of candidate's code check The fragment size and the Mean Speed for selecting fragment obtain the prediction downloading duration of the candidate fragment.
After the prediction downloading duration for obtaining the candidate fragment, the terminal device judges the prediction of the candidate fragment Whether downloading duration is more than the caching duration, if the prediction downloading duration of candidate's fragment is more than the caching duration, The code check less than the candidate fragment is selected to repeat above-mentioned " calculate as the candidate code check from the fragment set The prediction downloading duration of candidate fragment and judge the prediction downloading duration of candidate fragment whether more than the caching duration " behaviour Make, until finding the corresponding target bit rate of candidate fragment that prediction downloading duration is less than caching duration.
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as described in The resource request is sent to the server by target bit rate, and the resource request downloads the target bit rate for asking The corresponding target fragment.
For example, a length of Q when the caching in terminal device current cache area, calculated smooth code check are 3 megabits every Second (full name in English:Million bits per second, English abbreviation:Mbps), terminal device current downloading slicing is averaged Rate is P byte per seconds, and the code check that video film source is supported is respectively 1Mbps, 2Mbps, 4Mbps.So meet in the video film source The code check of terminal device smooth playing has 1Mbps, 2Mbps, wherein the code check closest to smooth code check is 2Mbps, then optional 2Mbps is selected as target bit rate.Then, terminal device is to the corresponding fragment sizes of 2Mbps according to burst information collection query X, then the prediction downloading duration for the fragment 1 that terminal device calculates is T, T=X/P.If T≤Q, that is, indicate that terminal device is downloaded During the fragment, the caching of buffer area will not be depleted, then terminal device can download the fragment.If T >=Q, i.e., During indicating that terminal device downloads the fragment, the caching of buffer area can be depleted, then terminal device does not download this point Piece, then come back to the candidate code check of selection, and judge T whether the operation less than Q, behind the code check that selects every time will be less than Last selected candidate code check, until finding the fragment for meeting T≤Q.
For ease of understanding, Fig. 5 of the application also provides a kind of detailed flow chart, operation specific as follows:
In terminal equipment side, terminal device calculates smooth from the corresponding burst information set of server foradownloaded video film source Then code check selects a code check closest to smooth code check (namely to be calculated as candidate code check from burst information set The code check of next fragment to be played).
Then, terminal device finds the size X of the fragment to be downloaded, then root according to candidate code check from burst information set Prediction the downloading duration T, T=X/P of the fragment are calculated according to the size X of Mean Speed P and fragment.
It is compared after calculating T, then by the T buffer data size Qs current with terminal device, if T≤Q, then, it indicates The fragment currently selected can guarantee the broadcasting of terminal device smoothness, so terminal device can directly send the code check of the fragment To server, to download the fragment, to ensure to play the continuity of fragment.
If T >=Q, then, indicate that the fragment currently selected does not ensure that the broadcasting of terminal device smoothness, so terminal is set When for needing the code check of the selection level-one lower than the code check selected before from code check list again, then recalculate primary prediction download It is long, and judge the magnitude relationship of T and Q, after finding the fragment of T≤Q, then the code check hair of the fragment of smooth playing will be met Server is given, to download the fragment.
It optionally,, can also be by server in addition to terminal device voluntarily determines target fragment in some inventive embodiments It determines, then, terminal device just needs to provide for server and determines the relevant parameter of target fragment.Specifically, described Terminal device can be sent another after code check of the selection less than the smooth code check in burst information set to the server One resource request, another resource request may include the caching duration of the smooth code check and the terminal device buffer area.
Later, the server is after receiving above-mentioned another resource request, and selection is less than institute from burst information set The code check for stating smooth code check, when the prediction downloading duration of the determining corresponding fragment of code check chosen is cached less than the terminal device When the current caching duration in area, the server will predict that downloading duration is less than the fragment of the caching duration and is sent to the end End equipment.
For server, how another resource request sent according to terminal device determines the specific behaviour of target fragment The technical solution described in above-mentioned first aspect is can refer to, is not repeated herein.
It should be noted that for whether by terminal device to determine target fragment, or target determined by server Fragment preferentially can determine target fragment by terminal device, can effectively reduce the computational load of server in this way, also can Improve the accuracy rate determined with the target fragment of actual download rate-matched.Terminal device can actively execute determining target bit rate Operation;Can also be that the parameter of operation is provided for server when user closes the function of code check switching at runtime, finally by Server determines target fragment;It is also possible that not considering whether user closes the function of code check switching at runtime, terminal device is all The parameter that operation can be actively provided for server, finally determines target fragment by server;Can certainly be set in terminal For when can not correctly determine target bit rate, above-mentioned another resource request is sent out to server.
Optionally, in order to reduce the operation of server, terminal device can also be carried in another resource request for referring to Show the information of the code check set in the burst information set less than the smooth code check so that server small-scale can be gone It determines candidate's code check, reduce the prediction downloading duration for judging candidate fragment whether less than operations such as the numbers of caching duration, finally It enables the server to quickly navigate to target fragment.
Optionally, another resource request further includes the Mean Speed of the current downloading slicing of the terminal device, described Mean Speed calculates the prediction downloading duration of fragment for the server.
Optionally, it is contemplated that terminal device is sent out under the prediction that above-mentioned another resource request to server calculates candidate fragment During carrying duration, the caching of the buffer area of terminal device can have some consumption, so, determine target point to improve server side The accuracy of piece, it is also necessary to consider the caching consumption of this period terminal device buffer area.Terminal device can be above-mentioned another as a result, One resource request carries the field of instruction caching offset, and the caching offset refers to above-mentioned another from terminal device transmission During one resource request receives another resource request to the server, the caching of the terminal device buffer area consumes Estimated value.The estimated value can be empirical value, can also be terminal device and calculated according to current playback rate dynamic, specifically The application is not construed as limiting, and such server subtracts the caching offset when comparison prediction downloading duration is with caching duration.
The arbitrary smooth code check, Mean Speed, caching duration, prediction downloading duration and resource in above-mentioned Fig. 2-Fig. 5 The features such as request, and with the relevant any each reality described corresponding to Fig. 6 for being applied equally in the application of these features Example is applied, follow-up similar place repeats no more.
A kind of method of adjustment streaming media bit rate in the application is illustrated above, below to being used to adjust Streaming Media code The device (including server and terminal device) of rate is described, and server and terminal device have structure as shown in FIG. 6, under Face illustrates respectively.
One, with reference to Fig. 6, the server may include:
Transceiver module is used for the resource request of receiving terminal apparatus, and the resource request includes smoothing code rate and the end The caching duration of end equipment buffer area, the smooth code check are the downloading rate with the current foradownloaded video film source of the terminal device Matched code check.
Processing module passes through institute for determining target fragment from the current video film source to be played of the terminal device It states transceiver module and the target fragment is sent to the terminal device, the code check of the target fragment is less than the smoothing code The prediction downloading duration of rate, the target fragment is less than the caching duration.
In the embodiment of the present invention, duration is deposited in easing up including smooth code check for transceiver module receiving terminal apparatus transmission Resource request after, target fragment is determined from video film source, then the target fragment is sent to described by the processing module Terminal device.As it can be seen that since the code check that server is sent to the target fragment of terminal device is less than the smooth code check, and should The prediction downloading duration of target fragment is less than the caching duration, so the target fragment for being ultimately sent to terminal device is to meet The condition of current smooth playing, can the fragment adapted to terminal device be provided for terminal device in real time, ensure Streaming Media Continuity is played, asking for the broadcasting interim card that the when of carrying out dynamic code rate switching during streaming media playing is caused can be also reduced Topic.
Optionally, the processing module is specifically used for:
It refers to being less than the smoothing code in burst information set that candidate code check, the code check set are selected from code check set The set of the code check of rate, the burst information set include the burst information of at least two fragments, at least two fragments category In current same video film source to be played, burst information includes the code check of fragment size and fragment;
The candidate fragment is obtained according to the fragment size of Mean Speed and the corresponding target fragment of the candidate code check Predict that downloading duration, the Mean Speed are the Mean Speed of the current downloading slicing of the terminal device;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if the prediction downloading duration More than the caching duration, then select code check less than the code check of the candidate fragment as the candidate from the code check set Code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, will be described by the transceiver module Candidate fragment is sent to the terminal device as the target fragment.
Optionally, the instruction of instruction information or the code check set that the code check set is carried by the resource request By the server according to the smooth code check from the set of the code check of the burst information Resource selection.
Optionally, the Mean Speed is carried in the resource request, or is obtained by the server statistics.
Optionally, the processing module is additionally operable to:
If the prediction downloading duration of candidate's fragment is more than the caching duration, will be asked by the transceiver module Response is sent to the terminal device, and the request response carrying belongs to same video film source with the candidate fragment and code check is low In the download address of the fragment of the candidate fragment.
Optionally, the resource request further includes being used to indicate whether the server is switched to code check adaptive model Field, and/or, the resource request further includes the field of instruction caching offset, and the caching offset refers to from the end During the end equipment transmission resource request receives the resource request to the server, the terminal device buffer area Cache the estimated value of consumption.
Two, with reference to Fig. 6, the terminal device may include:
Transceiver module, for obtaining current smooth code check and burst information set, the smooth code check is and the end The matched code check of downloading rate of the current foradownloaded video film source of end equipment, the burst information set include point of few two fragments Piece information, at least two fragment belong to current same video film source to be played, and burst information includes fragment size and divides The code check of piece;
Processing module passes through for determination target bit rate in the burst information set that is obtained from the transceiver module Resource request is sent to the server by the transceiver module, and the target bit rate is less than the smooth code check, the target The prediction downloading duration of the corresponding target fragment of code check is less than the current caching duration of the terminal device buffer area, the resource Request downloads the corresponding target fragment of the target bit rate for asking.
In the embodiment of the present invention, after obtaining smooth code check and burst information set by transceiver module, processing module can Selection is less than the target bit rate of the smooth code check from burst information set, when processing module determines the target bit rate pair chosen When the prediction downloading duration for the target fragment answered is less than current caching duration, mean that the target bit rate adapts to current band Width, so, target bit rate carrying can be sent to server by processing module by transceiver module in resource request, final to obtain To suitable target fragment.It can be seen that terminal device by by the prediction downloading duration of target fragment with caching duration be compared, It can accurately judge whether the target fragment corresponding to itself calculated target bit rate meets the condition of current smooth playing, So that server can provide the fragment adapted to terminal device for terminal device in real time, ensure the broadcasting continuity of Streaming Media, Also the problem of broadcasting interim card that the when of carrying out dynamic code rate switching during streaming media playing is caused can be reduced.
Optionally, the processing module the transceiver module obtain current smooth code check and burst information set it Afterwards, it before determining target bit rate in the burst information set, is additionally operable to:
The code check set less than the smooth code check is determined from the burst information set.
Optionally, the processing module is specifically used for:
Candidate code check is selected from the code check set;
Described candidate point is obtained according to the fragment size of the corresponding candidate fragment of candidate's code check and the Mean Speed The prediction downloading duration of piece;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if candidate's fragment is pre- It surveys downloading duration and is more than the caching duration, then select the code check less than the candidate fragment as institute from the fragment set State candidate code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as described in The resource request is sent to the server by target bit rate by the transceiver module, and the resource request is for asking Download the corresponding target fragment of the target bit rate.
It should be noted that the corresponding entity device of transceiver module in each embodiment corresponding to the application Fig. 6 can Think that transceiver, the corresponding entity device of processing module can be processor.Each device shown in fig. 6 can have such as Fig. 7 Shown in structure, when one of which device has structure as shown in Figure 7, processor and transceiver in Fig. 7 are realized aforementioned Correspond to the processing module and the same or analogous function of transceiver module that the device embodiment of the device provides, the memory in Fig. 7 Storage processor needs the program code called when executing the method for above-mentioned adjustment streaming media bit rate.Wherein, processor can be used for The operation described in the step 201- steps 204 in the corresponding embodiments of above-mentioned Fig. 2 is executed, and executes the corresponding realities of Fig. 3 Apply the operation described in example, it may also be used for execute the behaviour described in step 401- steps 404 in the embodiment corresponding to Fig. 4 Make, and execute the operation described in the corresponding embodiments of Fig. 5, specifically refers to earlier figures 2- arbitrary implementations shown in fig. 5 Example..
In the above-described embodiments, it all emphasizes particularly on different fields to the description of each embodiment, there is no the portion being described in detail in some embodiment Point, it may refer to the associated description of other embodiment.
It is apparent to those skilled in the art that for convenience and simplicity of description, the system of foregoing description, The specific work process of device and module, can refer to corresponding processes in the foregoing method embodiment, and details are not described herein.
In several embodiments provided herein, it should be understood that disclosed system, device and method can be with It realizes by another way.For example, the apparatus embodiments described above are merely exemplary, for example, the module It divides, only a kind of division of logic function, formula that in actual implementation, there may be another division manner, such as multiple module or components It can be combined or can be integrated into another system, or some features can be ignored or not executed.Another point, it is shown or The mutual coupling, direct-coupling or communication connection discussed can be the indirect coupling by some interfaces, device or module It closes or communicates to connect, can be electrical, machinery or other forms.
The module illustrated as separating component may or may not be physically separated, aobvious as module The component shown may or may not be physical module, you can be located at a place, or may be distributed over multiple On network module.Some or all of module therein can be selected according to the actual needs to realize the mesh of this embodiment scheme 's.
In addition, each function module in each embodiment of the application can be integrated in a processing module, it can also That modules physically exist alone, can also two or more modules be integrated in a module.Above-mentioned integrated mould The form that hardware had both may be used in block is realized, can also be realized in the form of software function module.The integrated module is such as Fruit is realized in the form of software function module and when sold or used as an independent product, can be stored in a computer can It reads in storage medium.
In the above-described embodiments, can come wholly or partly by software, hardware, firmware or its arbitrary combination real It is existing.When implemented in software, it can entirely or partly realize in the form of a computer program product.
The computer program product includes one or more computer instructions.Load and execute on computers the meter When calculation machine program instruction, entirely or partly generate according to the flow or function described in the embodiment of the present invention.The computer can To be all-purpose computer, special purpose computer, computer network or other programmable devices.The computer instruction can be deposited Storage in a computer-readable storage medium, or from a computer readable storage medium to another computer readable storage medium Transmission, for example, the computer instruction can pass through wired (example from a web-site, computer, server or data center Such as coaxial cable, optical fiber, Digital Subscriber Line (DSL)) or wireless (such as infrared, wireless, microwave) mode to another website Website, computer, server or data center are transmitted.The computer readable storage medium, which can be computer, to be deposited Any usable medium of storage is either set comprising data storages such as one or more usable mediums integrated server, data centers It is standby.The usable medium can be magnetic medium, (for example, floppy disk, hard disk, tape), optical medium (for example, DVD) or partly lead Body medium (such as solid state disk Solid State Disk (SSD)) etc..
Technical solution provided herein is described in detail above, specific case is applied in the application to this The principle and embodiment of application is expounded, the explanation of above example is only intended to help understand the present processes and Its core concept;Meanwhile for those of ordinary skill in the art, according to the thought of the application, in specific implementation mode and answer With there will be changes in range, in conclusion the contents of this specification should not be construed as limiting the present application.

Claims (18)

1. a kind of method of adjustment streaming media bit rate, which is characterized in that the method includes:
The resource request of server receiving terminal equipment, the resource request include smoothing code rate and the terminal device buffer area Caching duration, the smooth code check is the matched code check of downloading rate with the current foradownloaded video film source of the terminal device;
The server determines target fragment from the current video film source to be played of the terminal device, by the target fragment It is sent to the terminal device, the code check of the target fragment is less than the smooth code check, and the prediction of the target fragment is downloaded Duration is less than the caching duration.
2. according to the method described in claim 1, it is characterized in that, the server is current to be played from the terminal device Target fragment is determined in video film source, and the target fragment is sent to the terminal device, including:
It refers in burst information set less than described that the server selects candidate code check, the code check set from code check set The set of the code check of smooth code check, the burst information set include the burst information of at least two fragments, and described at least two Fragment belongs to current same video film source to be played, and burst information includes the code check of fragment size and fragment;
The server obtains the candidate according to the fragment size of Mean Speed and the corresponding target fragment of the candidate code check The prediction downloading duration of fragment, the Mean Speed are the Mean Speed of the current downloading slicing of the terminal device;
The server judges whether the prediction downloading duration of the candidate fragment is more than the caching duration, if under the prediction It carries duration and is more than the caching duration, then select code check less than the code check of the candidate fragment as institute from the code check set State candidate code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, the server makees the candidate fragment It is sent to the terminal device for the target fragment.
3. according to the method described in claim 2, it is characterized in that, the instruction that the code check set is carried by the resource request Information indicate or the code check set by the server according to the smooth code check from the burst information Resource selection The set of code check.
4. according to the method in claim 2 or 3, which is characterized in that the Mean Speed is carried in the resource request, or Person is obtained by the server statistics.
5. according to any methods of claim 2-4, which is characterized in that the method further includes:
If the prediction downloading duration of candidate's fragment is more than the caching duration, request response is sent to by the server The terminal device, the request response carries and the candidate fragment belongs to same video film source and code check is less than the candidate The download address of the fragment of fragment.
6. method according to claim 1 or 2, which is characterized in that the resource request further includes being used to indicate the clothes Whether business device is switched to the field of code check adaptive model, and/or, the resource request further includes the word of instruction caching offset Section, the caching offset refer to sending the resource request from the terminal device to receive the resource to the server During request, the estimated value of the caching consumption of the terminal device buffer area.
7. a kind of method of adjustment streaming media bit rate, which is characterized in that the method includes:
Terminal device obtains current smooth code check and burst information set, and the smooth code check is current with the terminal device The matched code check of downloading rate of foradownloaded video film source, the burst information set include the burst information of few two fragments, institute It states at least two fragments and belongs to current same video film source to be played, burst information includes the code check of fragment size and fragment;
The terminal device determines target bit rate from the burst information set, and resource request is sent to the server, The target bit rate is less than the smooth code check, and the prediction downloading duration of the corresponding target fragment of the target bit rate is less than described The current caching duration of terminal device buffer area, the resource request download the corresponding target point of the target bit rate for asking Piece.
8. the method according to the description of claim 7 is characterized in that obtaining current smooth code check in the terminal device and dividing After piece information aggregate, the terminal device before determining target bit rate in the burst information set, also wrap by the method It includes:
The terminal device determines the code check set less than the smooth code check from the burst information set.
9. according to the method described in claim 8, it is characterized in that, the terminal device is determined from the burst information set Resource request is sent to the server by target bit rate, including:
The terminal device selects candidate code check from the code check set;
The terminal device obtains institute according to the fragment size and the Mean Speed of the corresponding candidate fragment of candidate's code check State the prediction downloading duration of candidate fragment;
The terminal device judges whether the prediction downloading duration of the candidate fragment is more than the caching duration, if the candidate The prediction downloading duration of fragment is more than the caching duration, then code of the selection less than the candidate fragment from the fragment set Rate is as the candidate code check;
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as the target The resource request is sent to the server by code check, and the resource request downloads the target bit rate correspondence for asking The target fragment.
10. a kind of server, which is characterized in that the server includes:
Transceiver module is used for the resource request of receiving terminal apparatus, and the resource request includes that smoothing code rate and the terminal are set The caching duration of standby buffer area, the smooth code check are to be matched with the downloading rate of the current foradownloaded video film source of the terminal device Code check;
Processing module passes through the receipts for determining target fragment from the current video film source to be played of the terminal device The target fragment is sent to the terminal device by hair module, and the code check of the target fragment is less than the smooth code check, institute The prediction downloading duration for stating target fragment is less than the caching duration.
11. server according to claim 10, which is characterized in that the processing module is specifically used for:
It refers to being less than the smooth code check in burst information set that candidate code check, the code check set are selected from code check set The set of code check, the burst information set include the burst information of at least two fragments, and at least two fragment, which belongs to, works as Preceding same video film source to be played, burst information include the code check of fragment size and fragment;
The prediction of the candidate fragment is obtained according to the fragment size of Mean Speed and the corresponding target fragment of the candidate code check Downloading duration, the Mean Speed are the Mean Speed of the current downloading slicing of the terminal device;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if the prediction downloading duration is more than The caching duration then selects code check less than the code check of the candidate fragment as the Candidate key from the code check set Rate;
If the prediction downloading duration of candidate's fragment is less than the caching duration, by the transceiver module by the candidate Fragment is sent to the terminal device as the target fragment.
12. server according to claim 11, which is characterized in that the code check set was carried by the resource request The instruction of instruction information or the code check set are selected according to the smooth code check from the burst information set by the server The set for the code check selected.
13. server according to claim 11 or 12, which is characterized in that the Mean Speed is taken in the resource request Band, or obtained by the server statistics.
14. according to any servers of claim 11-13, which is characterized in that the processing module is additionally operable to:
If the prediction downloading duration of candidate's fragment is more than the caching duration, request is responded by the transceiver module It is sent to the terminal device, the request response carries and the candidate fragment belongs to same video film source and code check is less than institute State the download address of the fragment of candidate fragment.
15. the server according to claim 10 or 11, which is characterized in that the resource request further includes being used to indicate institute The field whether server is switched to code check adaptive model is stated, and/or, the resource request further includes instruction caching offset Field, the caching offset refers to being sent described in the resource request receives to the server from the terminal device During resource request, the estimated value of the caching consumption of the terminal device buffer area.
16. a kind of terminal device, which is characterized in that the terminal device includes:
Transceiver module, for obtaining current smooth code check and burst information set, the smooth code check is to be set with the terminal The matched code check of downloading rate of standby current foradownloaded video film source, the burst information set include the fragment letter of few two fragments Breath, at least two fragment belong to current same video film source to be played, and burst information includes fragment size and fragment Code check;
Processing module, for determination target bit rate in the burst information set that is obtained from the transceiver module, by described Resource request is sent to the server by transceiver module, and the target bit rate is less than the smooth code check, the target bit rate The prediction downloading duration of corresponding target fragment is less than the current caching duration of the terminal device buffer area, the resource request For asking to download the corresponding target fragment of the target bit rate.
17. terminal device according to claim 16, which is characterized in that the processing module is obtained in the transceiver module After current smooth code check and burst information set, before determining target bit rate in the burst information set, also use In:
The code check set less than the smooth code check is determined from the burst information set.
18. terminal device according to claim 17, which is characterized in that the processing module is specifically used for:
Candidate code check is selected from the code check set;
The candidate fragment is obtained according to the fragment size of the corresponding candidate fragment of candidate's code check and the Mean Speed Predict downloading duration;
Judge whether the prediction downloading duration of the candidate fragment is more than the caching duration, if under the prediction of candidate's fragment It carries duration and is more than the caching duration, then select the code check less than the candidate fragment as the time from the fragment set Code selection rate;
If the prediction downloading duration of candidate's fragment is less than the caching duration, using the candidate code check as the target The resource request is sent to the server by code check by the transceiver module, and the resource request is downloaded for asking The corresponding target fragment of the target bit rate.
CN201710190142.2A 2017-03-27 2017-03-27 Method and equipment for adjusting streaming media code rate Active CN108668146B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710190142.2A CN108668146B (en) 2017-03-27 2017-03-27 Method and equipment for adjusting streaming media code rate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710190142.2A CN108668146B (en) 2017-03-27 2017-03-27 Method and equipment for adjusting streaming media code rate

Publications (2)

Publication Number Publication Date
CN108668146A true CN108668146A (en) 2018-10-16
CN108668146B CN108668146B (en) 2021-07-16

Family

ID=63786362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710190142.2A Active CN108668146B (en) 2017-03-27 2017-03-27 Method and equipment for adjusting streaming media code rate

Country Status (1)

Country Link
CN (1) CN108668146B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149560A (en) * 2019-06-05 2019-08-20 亦非云互联网技术(上海)有限公司 Player optimization method and system, storage medium and terminal based on HLS protocol
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
CN110996038A (en) * 2019-11-19 2020-04-10 清华大学 Adaptive code rate adjusting method for multi-person interactive live broadcast
CN111787336A (en) * 2019-04-04 2020-10-16 杭州海康威视数字技术股份有限公司 Code rate switching method and device
CN112153428A (en) * 2020-11-04 2020-12-29 上海连尚网络科技有限公司 Video processing method and device
CN112637631A (en) * 2020-12-17 2021-04-09 清华大学 Code rate determining method and device, electronic equipment and storage medium
CN113316005A (en) * 2021-04-20 2021-08-27 新华三技术有限公司 Method for adjusting video code rate and communication system
CN113573062A (en) * 2020-04-29 2021-10-29 华为技术有限公司 Traffic shaping method and device and electronic equipment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1670256A2 (en) * 2004-12-10 2006-06-14 Microsoft Corporation A system and process for controlling the coding bit rate of streaming media data
CN104320424A (en) * 2014-11-20 2015-01-28 三星电子(中国)研发中心 Streaming media fragmentation downloading method and device
CN105100876A (en) * 2015-08-28 2015-11-25 北京奇艺世纪科技有限公司 Streaming media playing method and device
CN105744342A (en) * 2016-01-28 2016-07-06 腾讯科技(深圳)有限公司 Data transmission method and device for mobile terminal
CN106028085A (en) * 2016-06-14 2016-10-12 浙江工业大学 DASH-based multi-client-side code rate self-adaption and oscillation compensation method
CN106162229A (en) * 2015-04-10 2016-11-23 北京大学 Improve smooth code check adaptive approach and the device of fairness
CN106303704A (en) * 2016-08-19 2017-01-04 上海交通大学 A kind of DASH flow medium live system based on proxy server and method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1670256A2 (en) * 2004-12-10 2006-06-14 Microsoft Corporation A system and process for controlling the coding bit rate of streaming media data
CN104320424A (en) * 2014-11-20 2015-01-28 三星电子(中国)研发中心 Streaming media fragmentation downloading method and device
CN106162229A (en) * 2015-04-10 2016-11-23 北京大学 Improve smooth code check adaptive approach and the device of fairness
CN105100876A (en) * 2015-08-28 2015-11-25 北京奇艺世纪科技有限公司 Streaming media playing method and device
CN105744342A (en) * 2016-01-28 2016-07-06 腾讯科技(深圳)有限公司 Data transmission method and device for mobile terminal
CN106028085A (en) * 2016-06-14 2016-10-12 浙江工业大学 DASH-based multi-client-side code rate self-adaption and oscillation compensation method
CN106303704A (en) * 2016-08-19 2017-01-04 上海交通大学 A kind of DASH flow medium live system based on proxy server and method

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111787336A (en) * 2019-04-04 2020-10-16 杭州海康威视数字技术股份有限公司 Code rate switching method and device
CN110149560A (en) * 2019-06-05 2019-08-20 亦非云互联网技术(上海)有限公司 Player optimization method and system, storage medium and terminal based on HLS protocol
CN110149560B (en) * 2019-06-05 2021-11-16 亦非云互联网技术(上海)有限公司 Player optimization method and system based on HLS protocol, storage medium and terminal
CN110267100A (en) * 2019-07-12 2019-09-20 北京达佳互联信息技术有限公司 Code rate switching method, device, electronic equipment and the storage medium of FLV video
CN110267100B (en) * 2019-07-12 2022-01-25 北京达佳互联信息技术有限公司 Code rate switching method and device for FLV (flash video), electronic equipment and storage medium
CN110460875A (en) * 2019-08-05 2019-11-15 北京达佳互联信息技术有限公司 A kind of switching method of video code rate, device, electronic equipment and storage medium
CN110996038A (en) * 2019-11-19 2020-04-10 清华大学 Adaptive code rate adjusting method for multi-person interactive live broadcast
CN110996038B (en) * 2019-11-19 2020-11-10 清华大学 Adaptive code rate adjusting method for multi-person interactive live broadcast
CN113573062A (en) * 2020-04-29 2021-10-29 华为技术有限公司 Traffic shaping method and device and electronic equipment
CN113573062B (en) * 2020-04-29 2023-12-29 华为技术有限公司 Traffic shaping method and device and electronic equipment
CN112153428A (en) * 2020-11-04 2020-12-29 上海连尚网络科技有限公司 Video processing method and device
CN112637631A (en) * 2020-12-17 2021-04-09 清华大学 Code rate determining method and device, electronic equipment and storage medium
CN112637631B (en) * 2020-12-17 2022-04-26 清华大学 Code rate determining method and device, electronic equipment and storage medium
CN113316005A (en) * 2021-04-20 2021-08-27 新华三技术有限公司 Method for adjusting video code rate and communication system

Also Published As

Publication number Publication date
CN108668146B (en) 2021-07-16

Similar Documents

Publication Publication Date Title
CN108668146A (en) A kind of method and apparatus of adjustment streaming media bit rate
CN101860550B (en) Streaming media system accelerating method based on router cache
CN105657578B (en) Live broadcasting method, system and client based on HLS protocol
EP2704402B1 (en) Method and node for distributing electronic content in a content distribution network
CN103916679B (en) A kind of method, equipment and system for being used to provide video information
EP2852125A1 (en) Server selection for content distribution
CN106664435B (en) Cache manifest for efficiently equity auxiliary stream transmission
US20130132544A1 (en) Precise geolocation for content caching in evolved packet core networks
CN104581374B (en) A kind of method, node and server for obtaining section file and generating sub- m3u8 files
CN106791889B (en) A kind of method for processing video frequency and system, distributed objects storage system
CN110933517B (en) Code rate switching method, client and computer readable storage medium
JP2007529072A (en) Download scheduling system and method in cache network environment
CN109756757A (en) Live data processing method and processing device, live broadcasting method and device and direct broadcast server
WO2011088725A1 (en) Method and apparatus for synchronization based on hypertext transfer protocol (http)
CN109996094A (en) Video broadcasting method, apparatus and system
CN103001964A (en) Cache acceleration method under local area network environment
CN105516018B (en) network data transmission method and device
CN106686409A (en) Streaming media code rate adaptive method and device, server and terminal
CN106789956B (en) A kind of P2P order method and system based on HLS
CN110139123A (en) The broadcasting of files in stream media, transmission, treating method and apparatus
CN107124621A (en) A kind of business scheduling method and device based on cellular network
US20140282788A1 (en) System for controlling video distribution in response to a request on reduced video data traffic and a method therefor
CN105009520B (en) For transmitting the method for content and its device in a communication network
CN110771122A (en) Method and network node for enabling a content delivery network to handle unexpected traffic surges
CN106416198A (en) Method and apparatus for DASH streaming using HTTP streaming

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
GR01 Patent grant
GR01 Patent grant