WO2023284489A1 - 网络直播的清晰度切换方法、装置和客户端 - Google Patents
网络直播的清晰度切换方法、装置和客户端 Download PDFInfo
- Publication number
- WO2023284489A1 WO2023284489A1 PCT/CN2022/099774 CN2022099774W WO2023284489A1 WO 2023284489 A1 WO2023284489 A1 WO 2023284489A1 CN 2022099774 W CN2022099774 W CN 2022099774W WO 2023284489 A1 WO2023284489 A1 WO 2023284489A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- definition
- webcast
- level
- definition level
- uplink bandwidth
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management 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/266—Channel 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/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
- H04N21/4854—End-user interface for client configuration for modifying image parameters, e.g. image brightness, contrast
Definitions
- the present disclosure relates to the field of live broadcast technology, and in particular, to a method, device and client for network live broadcast definition switching.
- the client can send the definition parameter of the webcast to the server corresponding to the content delivery network (CDN), so that the server corresponding to the CDN can send the definition parameter of the webcast to the client Corresponding live audio and video streams, so that the client can play the live audio and video streams to realize the display process of the webcast.
- CDN content delivery network
- the present disclosure provides a method for switching the definition of a webcast, including:
- the playback of a webcast determine the uplink bandwidth and the first definition level of the webcast, where the first definition level is the current definition level of the webcast;
- the definition parameters of the webcast When the uplink bandwidth of the webcast does not match the first definition level within the preset duration, adjust the definition parameters of the webcast based on the second definition level matched by the uplink bandwidth of the webcast.
- the definition level is different from the second definition level, and the definition parameter of the webcast is used to adjust the definition of the webcast;
- the live audio and video stream corresponding to the adjusted definition parameter of the live network broadcast is received from the server, and the live audio and video stream is played.
- the method also includes:
- the uplink bandwidth of the webcast does not match the third definition level, repeat the update of the third definition level to the definition level after the third definition level is lowered by one level, and determine the uplink of the webcast The step of whether the bandwidth matches the third definition gear, until the upstream bandwidth of the webcast matches the third definition gear, and determine that the second definition gear is the third definition gear matching the upstream bandwidth, or, Until the third definition level is the lowest definition level of the webcast, and the second definition level is determined to be the third definition level equal to the lowest definition level.
- the method also includes:
- the first definition gear is increased by one gear to obtain the fourth definition gear
- the uplink bandwidth of the webcast does not match the fourth definition level, repeat the update of the fourth definition level to the definition level after adding one level to the fourth definition level, and determine the uplink of the webcast The step of whether the bandwidth matches the fourth definition gear, until the uplink bandwidth of the webcast matches the fourth definition gear, and determine that the second definition gear is the fourth definition gear matching the uplink bandwidth, or, Until the fourth definition level is the highest definition level of the webcast, and the second definition level is determined to be the fourth definition level equal to the highest definition level.
- determining the uplink bandwidth of the webcast includes:
- the method further includes: storing the second definition level.
- the method also includes:
- the definition parameter of the webcast includes: at least one of bit rate, resolution or frame rate.
- the definition switching method further includes: when the uplink bandwidth of the live network broadcast is less than the minimum bit rate in the first definition level within the preset duration, reducing the first definition level by one According to the third definition level and the uplink bandwidth of the webcast, the second definition level is determined.
- the definition switching method further includes: when the uplink bandwidth of the live network broadcast is greater than the maximum bit rate in the first definition stage within the preset duration, increasing the first definition stage by one According to the fourth definition level and the uplink bandwidth of the webcast, the second definition level is determined.
- the client may be the client of the broadcast user or the client of the broadcast user.
- the present disclosure provides a device for switching the definition of live webcast, including:
- the determination module is used to determine the uplink bandwidth and the first definition level of the network live broadcast during the broadcasting process of the network live broadcast, and the first definition level is the current definition level of the network live broadcast;
- the adjustment module is used to adjust the definition parameters of the live network based on the second definition level matched by the uplink bandwidth of the live network when the uplink bandwidth of the live network does not match the first definition level within the preset duration.
- the first definition level is different from the second definition level, and the definition parameter of the webcast is used to adjust the definition of the webcast;
- a sending module configured to send the adjusted definition parameter of the webcast to the server
- the receiving module is used to receive from the server the live audio and video stream corresponding to the adjusted definition parameter of the live network broadcast;
- the playback module is used to play live audio and video streams.
- the determination module is further configured to lower the first definition level by one level when the uplink bandwidth of the live network broadcast is less than the minimum bit rate in the first definition level within a preset time period to get the third definition gear; when the uplink bandwidth of the webcast matches the third definition level, determine the second definition level as the third definition level; when the uplink bandwidth of the webcast does not match the third
- the definition level is selected, repeat the update of the third definition level to the definition level after the third definition level is lowered by one level, and judge whether the uplink bandwidth of the webcast matches the third definition level.
- Step until the uplink bandwidth of the webcast matches the third definition level, and determine that the second definition level is the third definition level matching the uplink bandwidth, or until the third definition level is the webcast up to the lowest definition level, and determine that the second definition level is the third definition level equal to the lowest definition level.
- the determining module is further configured to increase the first definition level by one level when the uplink bandwidth of the live network broadcast is greater than the maximum bit rate in the first definition level within the preset duration bit, to get the fourth definition gear; when the uplink bandwidth of the webcast matches the fourth definition gear, determine the second definition gear as the fourth definition gear; When the definition level is selected, repeat the update of the fourth definition level to the definition level after adding one level to the fourth definition level, and determine whether the uplink bandwidth of the webcast matches the fourth definition level.
- Step until the uplink bandwidth of the webcast matches the fourth definition level, and determine that the second definition level is the fourth definition level matching the uplink bandwidth, or until the fourth definition level is the webcast up to the highest definition level, and determine that the second definition level is the fourth definition level equal to the highest definition level.
- the determination module is specifically used to collect the actual code rate of the live network; based on the actual code rate of the live network, the uplink bandwidth of the live network is calculated.
- the device further includes: a storage module, configured to store the second definition level.
- the determination module is also used to obtain the second definition level from the storage module after the webcast is broadcast again; based on the second definition level, determine the definition parameter of the webcast;
- the sending module is also used to send the clarity parameter of the webcast to the server;
- the receiving module is also used to receive from the server the live audio and video stream corresponding to the definition parameter of the live network broadcast;
- the playback module is also used to play live audio and video streams.
- the definition parameter of the webcast includes: at least one of bit rate, resolution or frame rate.
- the determination module is also used to lower the first definition level by one level when the uplink bandwidth of the live network broadcast is less than the minimum bit rate in the first definition level within the preset duration , to obtain the third definition level; according to the third definition level and the upstream bandwidth of the webcast, determine the second definition level.
- the determination module is also used to increase the first definition level by one level when the uplink bandwidth of the live network broadcast is greater than the maximum bit rate in the first definition level within the preset duration , to obtain the fourth definition level; according to the fourth definition level and the uplink bandwidth of the webcast, determine the second definition level.
- the present disclosure provides a client, including: a memory; and a processor coupled to the memory, where the processor is configured to execute the first aspect and the method based on instructions stored in the memory. In the first aspect, any possible design of a resolution switching method for webcasting.
- the client may be the client of the broadcast user or the client of the broadcast user.
- the present disclosure provides a non-transitory computer storage medium, including computer instructions.
- the computer instructions When the computer instructions are run on an electronic device, the electronic device executes the first aspect and any possible design of the first aspect.
- the present disclosure provides a non-transitory computer program product.
- the computer program product When the computer program product is run on a computer, the computer executes the clarity of the webcast in any possible design of the first aspect and the first aspect. Switch method.
- the present disclosure provides a computer program, including instructions, which, when executed by a processor, cause the processor to execute the webcast in any possible design of the first aspect and the first aspect resolution switching method.
- the present disclosure provides a chip system, which is applied to an electronic device including a display, a memory, and a sensor; the chip system includes: a processor; when the processor executes a computer instruction stored in the memory, the electronic device executes the first A method for switching the definition of live webcast in any possible design of the first aspect and the first aspect.
- FIG. 1 is a schematic diagram of a communication system provided by an embodiment of the present disclosure
- FIG. 2 is a signaling interaction diagram of a definition switching method for live webcast provided by an embodiment of the present disclosure
- FIG. 3 is a schematic flowchart of a method for switching the definition of a live network broadcast provided by an embodiment of the present disclosure
- FIG. 4 is a schematic structural diagram of a resolution switching device for webcast provided by an embodiment of the present disclosure
- FIG. 5 is a schematic structural diagram of an apparatus for switching a definition of a live network broadcast provided by an embodiment of the present disclosure.
- the inventor found that the network environment in which the webcast is located is not static, but in a fluctuating state. Moreover, the clarity of the webcast depends on the definition parameters of the webcast. Therefore, with the change of the network environment, how to maintain the best definition of the network live broadcast by adjusting the definition parameters of the network live broadcast is an urgent problem to be solved.
- the present disclosure provides a method, device, client, computer storage medium, and computer program product for switching the resolution of a webcast, which can be based on the uplink network status of the network environment where the webcast is located within a continuous preset period of time, Select the most suitable definition parameters for webcast, so that live audio and video streams can be switched to the best definition, and avoid affecting the user's viewing experience.
- FIG. 1 is a schematic diagram of a communication system provided by an embodiment of the present disclosure.
- the communication system provided by the present disclosure may include: a server and a client, and the server and the client may communicate with each other.
- the client can be installed in the electronic device, and the client can realize the definition switching method of the webcast in the present disclosure through an application program (APP), a public account, a web page, etc. in the electronic device.
- APP application program
- the electronic device can be a mobile phone, tablet computer, wearable device, vehicle-mounted device, augmented reality (augmented reality, AR)/virtual reality (virtual reality, VR) device, notebook computer, ultra-mobile personal computer (ultra-mobile personal computer, UMPC) ), netbooks, personal digital assistants (personal digital assistants, PDAs), smart TVs, smart screens, high-definition TVs, 4K TVs, smart speakers, smart projectors and other devices, this disclosure does not impose any restrictions on the specific types of electronic devices.
- the present disclosure does not limit the type of the operating system of the electronic device.
- Android system Linux system
- Windows system iOS system
- etc.
- the present disclosure takes the client and the server in FIG. 1 as an example, and describes the definition switching method for webcast provided by the present disclosure in detail in combination with the accompanying drawings and application scenarios.
- FIG. 2 is a signaling interaction diagram of a method for switching a definition of a live network broadcast provided by an embodiment of the present disclosure.
- the method for switching the definition of the webcast provided by the present disclosure may include:
- the client determines the uplink bandwidth and the first definition level of the live network broadcast.
- the client can play a webcast, and the present disclosure does not limit parameters such as the type, content, and display mode of the webcast.
- the client can collect the actual code rate of the webcast, and calculate the uplink bandwidth (that is, the transmission rate) of the webcast based on the actual bitrate of the webcast.
- the present disclosure does not limit parameters such as time and method for the client to collect the actual code rate of the webcast.
- the client may collect the actual code rate of the webcast in real time, periodically or aperiodically.
- the client can collect the actual bit rate of the webcast.
- the client can spontaneously realize the real-time, periodic or non-periodic collection of the actual bit rate of the webcast.
- the client can also collect the frame rate and resolution of the webcast, and calculate the uplink bandwidth of the webcast. This disclosure does not limit the method of determining the uplink bandwidth of the webcast .
- the client may be the client of the broadcast user or the client of the broadcast user, which is not limited in the present disclosure.
- the anchor user is the creator or publisher of the live audio and video stream, and the anchor user can send the live audio and video stream to the CDN server through the client.
- the aforementioned process can be called streaming.
- the broadcasting user is the viewer of the live audio and video stream, and the broadcasting user can obtain the live audio and video stream from the CDN server through the client.
- the aforementioned process can be called streaming.
- the client can obtain live audio and video streams, and the client can divide the resolution into multiple gears in advance, each gear is a bit rate range, and the bit rate range of each gear is equal to different, and each gear corresponds to a range of each parameter in the sharpness parameter.
- the multiple definition levels may include: ultra high definition (ultra high definition, UHD) 1080P, high definition (High Definition, HD) 720P, standard definition (standard definition, SD) 540P and common definition (LD) 480P .
- the client can use JSON (JavaScript Object Notation, JS Object Notation) to set the software program for the above-mentioned clarity level.
- JSON JavaScript Object Notation, JS Object Notation
- the client can know that the current definition level of the webcast is the first definition level.
- the client When the uplink bandwidth of the live webcast does not match the first definition level within the preset time period, the client performs the definition parameters of the live webcast based on the second definition level matched by the uplink bandwidth of the live webcast. Adjustment.
- the client can determine whether the uplink bandwidth of the webcast matches the first definition level.
- the match mentioned in this disclosure can be understood as the uplink bandwidth of the webcast is included in the bit rate range of the first definition level, and the mismatch can be understood as the uplink bandwidth of the webcast is not included in the bit rate range of the first definition level. within the bit rate range.
- the client can continue to judge whether the uplink bandwidth of the webcast does not match the first definition level within the preset duration, avoiding the problem of affecting the playback effect of the webcast due to frequent switching of the definition parameters of the webcast question.
- the specific value of the preset duration mentioned in the present disclosure may be set based on the client and/or server in combination with the webcast and the current actual situation, which is not limited in the present disclosure.
- the client may determine that the first definition level cannot meet the network environment where the webcast is located. Therefore, the client can determine the matching second definition level based on the uplink bandwidth of the webcast.
- the first sharpness level is different from the second sharpness level.
- the client can adjust the definition parameter of the webcast based on the second definition level, and obtain the adjusted definition parameter of the webcast.
- the clarity parameter of the webcast is used to adjust the clarity of the webcast.
- the present disclosure does not limit the specific implementation manner of the clarity parameter of the webcast.
- the definition parameter of the webcast may include: at least one of bit rate, resolution or frame rate. The bit rate can be calculated from the resolution and frame rate.
- the client sends the adjusted definition parameter of the webcast to the server.
- the server determines a live audio and video stream corresponding to the adjusted definition parameter of the web live broadcast.
- the server sends the live audio and video stream corresponding to the adjusted definition parameter of the web live broadcast to the client.
- the client plays the live audio and video stream.
- the client can carry the adjusted definition parameter of the webcast in a request, and send the request to the server, so that after receiving the request, the server can determine the output based on the adjusted definition parameter of the webcast.
- the server can carry the live audio and video stream in a response, and send the response to the client.
- the client can play the live audio and video stream, so that the clarity of the webcast can be switched to the best state, which fits the network environment where the webcast is located, and ensures the user's viewing experience.
- the client and server can also use other methods for data transmission.
- the client can send the identifier of the adjusted definition parameter of the live network broadcast to the server, so that the server can determine the live audio and video stream based on the identifier.
- the server can send the storage address of the live audio and video stream to the client, so that the client downloads the live audio and video stream based on the storage address.
- the definition switching method of the webcast provided by the present disclosure, through the broadcasting process of a webcast, the client can determine the uplink bandwidth and the first definition level of the webcast, and the first definition level is the resolution of the webcast. Current resolution level.
- the client base adjusts the definition parameters of the webcast based on the second definition level matched by the uplink bandwidth of the webcast , the first definition level is different from the second definition level, and the definition parameter of the webcast is used to adjust the definition of the webcast.
- the client can send the adjusted definition parameter of the webcast to the server, so that the server sends the live audio and video stream corresponding to the adjusted definition parameter of the webcast to the client, so that the client can play the live audio and video stream. Therefore, based on the uplink network status corresponding to the network environment where the webcast is located within a continuous preset period of time, the most suitable definition parameters are selected for the webcast, so that the definition of the webcast can be switched to the best state, and avoid The phenomenon of freezing caused by switching too frequently is conducive to improving the user's viewing experience.
- the client may determine the second definition level matched by the uplink bandwidth of the webcast in various ways.
- the first definition level when the uplink bandwidth of the webcast is less than the minimum bit rate in the first definition level within the preset duration, the first definition level is lowered by one level to obtain the third definition level bit; determine the second definition level according to the third definition level and the uplink bandwidth of the webcast.
- the first definition level when the uplink bandwidth of the webcast is greater than the maximum bit rate in the first definition level within the preset duration, the first definition level is increased by one level to obtain the fourth definition level bit; determine the second definition level according to the fourth definition level and the uplink bandwidth of the webcast.
- the present disclosure takes the client in FIG. 1 as an example to describe in detail the specific implementation manner for the client to determine the second definition level.
- FIG. 3 is a schematic flowchart of a method for switching the definition of a live network broadcast provided by an embodiment of the present disclosure. As shown in FIG. 3 , the method for switching the definition of the webcast provided by the present disclosure may include:
- the client determines the uplink bandwidth of the webcast.
- the client determines whether the uplink bandwidth of the webcast does not match the first definition level within a preset time period.
- the electronic device can execute steps S2021-S2024 or steps S2031-S2034; if not, the electronic device can continue to execute step S200.
- the client lowers the first definition level by one level to obtain the third definition level.
- the client terminal judges whether the uplink bandwidth of the webcast matches the third definition level.
- step S2023 If yes, the client can execute step S2023; if not, the client can execute step S2024.
- the client determines that the second definition level is the third definition level.
- the client updates the third definition level to the third definition level lowered by one level, and executes step S2022 until the uplink bandwidth of the webcast matches the third definition level, or , the third definition level is the lowest definition level of the webcast.
- step S2023 is also performed, that is, it is determined that the second definition level is the lowest definition level.
- the client increases the first definition level by one level to obtain the fourth definition level.
- the client terminal judges whether the uplink bandwidth of the network live broadcast matches the fourth definition gear.
- step S2033 If yes, the client can execute step S2033; if not, the client can execute step S2034.
- the client determines that the second definition level is the fourth definition level.
- the client updates the fourth definition level to the definition level after the fourth definition level is increased by one level, and executes step S2032 until the uplink bandwidth of the webcast matches the fourth definition level, or , the fourth definition gear is the highest definition gear of the webcast.
- step S2033 is also executed, that is, it is determined that the second definition level is the highest definition level.
- the client can determine the second definition level corresponding to the uplink bandwidth of the webcast one by one, so as to accurately determine the definition parameters of the webcast based on the second definition level, which improves the quality of the network live broadcast. clarity of the network environment.
- the client may also store the second definition level.
- the present disclosure does not limit the storage manner of the second definition level.
- the client can determine that the first definition level is the second definition level, and based on the second definition level, can determine the definition parameters of the webcast.
- the client can send the clarity parameter of the webcast to the server.
- the server then sends the live audio and video streams corresponding to the definition parameters of the webcast to the client, so that the client can play the live audio and video streams and realize the smooth playback of the webcast.
- the present disclosure provides an apparatus for switching the definition of live webcast.
- FIG. 4 is a schematic structural diagram of an apparatus for switching a definition of a live network broadcast provided by an embodiment of the present disclosure.
- the apparatus for switching the resolution of the live webcast of the present disclosure can be set in an electronic device, and can realize that the method for switching the resolution of the live webcast in the above-mentioned embodiments of FIGS. 1-3 corresponds to the operation of the electronic device.
- the apparatus 100 for switching the definition of live webcast may include: a determining module 101 , an adjusting module 102 , a sending module 103 , a receiving module 104 and a playing module 105 .
- the determination module 101 is used to determine the upstream bandwidth and the first definition level of the network live broadcast during the broadcasting process of the network live broadcast, and the first definition level is the current definition level of the network live broadcast;
- the adjustment module 102 is configured to adjust the definition of the network live broadcast based on the second definition gear matched by the uplink bandwidth of the network live broadcast when the uplink bandwidth of the network live broadcast does not match the first definition level within the preset duration.
- the parameters are adjusted, the first definition level is different from the second definition level, and the definition parameter of the webcast is used to adjust the definition of the webcast;
- Sending module 103 is used for sending the sharpness parameter of the network live broadcast after adjusting to server;
- the receiving module 104 is also used to receive from the server the live audio and video stream corresponding to the adjusted definition parameter of the live network broadcast;
- the playback module 105 is configured to play live audio and video streams.
- the determining module 101 is further configured to lower the first definition level by one level when the uplink bandwidth of the live network broadcast is less than the minimum bit rate in the first definition level within the preset duration , get the third definition gear; when the uplink bandwidth of the webcast matches the third definition level, determine the second definition level as the third definition level; if the uplink bandwidth of the webcast does not match the third definition level
- the resolution level is not specified, repeat the steps of updating the third definition level to the third definition level lowered by one level, and judging whether the uplink bandwidth of the webcast matches the third definition level , until the uplink bandwidth of the webcast matches the third resolution level, and determine that the second definition level is the third definition level that matches the uplink bandwidth, or until the third definition level is the third definition level of the webcast until the lowest definition level, and determine that the second definition level is the third definition level equal to the lowest definition level.
- the determining module 101 is further configured to increase the first definition level by one level when the uplink bandwidth of the live network broadcast is greater than the maximum bit rate in the first definition level within the preset duration , to get the fourth definition gear; when the uplink bandwidth of the webcast matches the fourth definition level, determine the second definition level as the fourth definition level; if the uplink bandwidth of the webcast does not match the fourth definition level When the resolution level is higher, repeat the steps of updating the fourth definition level to the definition level after adding one level to the fourth definition level, and judging whether the uplink bandwidth of the webcast matches the fourth definition level , until the uplink bandwidth of the webcast matches the fourth definition level, and determine that the second definition level is the fourth definition level that matches the uplink bandwidth, or until the fourth definition level is the fourth definition level of the webcast up to the highest definition level, and determine that the second definition level is the fourth definition level equal to the highest definition level.
- the determination module 101 is specifically configured to collect the actual code rate of the live network; based on the actual code rate of the live network, calculate the uplink bandwidth of the live network.
- the determination module 101 is specifically configured to lower the first definition level by one level when the uplink bandwidth of the live network broadcast is less than the minimum bit rate in the first definition level within a preset time period bit to get the third definition level; according to the third definition level and the uplink bandwidth of the webcast, determine the second definition level.
- the determination module 101 is specifically configured to increase the first definition level by one level when the uplink bandwidth of the live network broadcast is greater than the maximum bit rate in the first definition level within a preset time period bit to get the fourth definition level; according to the fourth definition level and the uplink bandwidth of the webcast, determine the second definition level.
- FIG. 5 is a schematic structural diagram of an apparatus for switching a definition of a live network broadcast provided by an embodiment of the present disclosure.
- the network live broadcast definition switching device 100 provided by the present disclosure may further include: a storage module 106 .
- the storage module 106 is configured to store the second definition level.
- the determining module 101 is further configured to determine that the first definition level is the second definition level; and based on the second definition level, determine the definition parameter of the webcast;
- the sending module 103 is also used to send the clarity parameter of the webcast to the server;
- the receiving module 104 is also used to receive from the server the live audio and video stream corresponding to the clarity parameter of the live network broadcast;
- the playback module 105 is also used to play live audio and video streams.
- the definition parameter of the webcast includes: at least one of bit rate, resolution or frame rate.
- the resolution switching device for network live broadcast provided by the present disclosure can execute the above-mentioned method embodiments.
- the specific implementation principles and technical effects please refer to the above-mentioned method embodiments, and the present disclosure will not repeat them here.
- the present disclosure provides a client, including: a memory; and a processor coupled to the memory, where the processor is configured to execute the network method of the foregoing embodiments based on instructions stored in the memory.
- the definition switching method of the live broadcast is configured to execute the network method of the foregoing embodiments based on instructions stored in the memory.
- the client may be the client of the broadcast user or the client of the broadcast user.
- the present disclosure provides a chip system, which is applied to an electronic device including a display, a memory, and a sensor; the chip system includes: a processor; when the processor executes the computer instructions stored in the memory, the electronic device executes the foregoing implementation An example of a resolution switching method for webcasting.
- the present disclosure provides a non-transitory computer-readable storage medium, on which a computer program is stored, and the computer program is executed by a processor to enable an electronic device to implement the definition switching method for network live broadcasting in the foregoing embodiments.
- the present disclosure provides a non-transitory computer program product, which, when the computer program product is run on a computer, causes the computer to execute the method for switching the definition of a live network broadcast in the foregoing embodiments.
- the present disclosure provides a computer program, including instructions, which, when executed by a processor, cause the processor to execute the definition switching method for network live broadcasting in the foregoing embodiments.
- all or part of the functions may be implemented by software, hardware, or a combination of software and hardware.
- software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
- a computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, the processes or functions according to the embodiments of the present disclosure are produced in whole or in part.
- a computer can be a general purpose computer, special purpose computer, computer network, or other programmable device.
- Computer instructions may be stored on a computer readable storage medium.
- the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server, a data center, etc. integrated with one or more available media.
- the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, or a magnetic tape), an optical medium (for example, DVD), or a semiconductor medium (for example, a solid state disk (solid state disk, SSD)), etc.
- a magnetic medium for example, a floppy disk, a hard disk, or a magnetic tape
- an optical medium for example, DVD
- a semiconductor medium for example, a solid state disk (solid state disk, SSD)
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本公开涉及一种网络直播的清晰度切换方法、装置和客户端,该清晰度切换方法包括:在一个网络直播的播放过程中,确定网络直播的上行带宽和第一清晰度档位;在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整,第一清晰度档位与第二清晰度档位不同,网络直播的清晰度参数用于调整网络直播的清晰度;向服务器发送调整后的网络直播的清晰度参数;从服务器接收与调整后的网络直播的清晰度参数对应的直播音视频流,并播放直播音视频流。
Description
相关申请的交叉引用
本申请是以中国申请号为202110791858.4,申请日为2021年7月13日的申请为基础,并主张其优先权,该中国申请的公开内容在此作为整体引入本申请中。
本公开涉及直播技术领域,尤其涉及一种网络直播的清晰度切换方法、装置和客户端。
随着计算机技术的不断发展,网络直播由于方便且快捷、展示效果佳、成本低和互动性强等优点,广泛应用于用户分享和商业宣传等领域。
在一个网络直播开启后,客户端可向内容分发网络(content delivery network,CDN)对应的服务器发送该网络直播的清晰度参数,使得CDN对应的服务器向客户端发送与该网络直播的清晰度参数对应的直播音视频流,以便客户端播放该直播音视频流,实现该网络直播的展示过程。
发明内容
第一方面,本公开提供了一种网络直播的清晰度切换方法,包括:
在一个网络直播的播放过程中,确定网络直播的上行带宽和第一清晰度档位,第一清晰度档位为网络直播的当前清晰度档位;
在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整,第一清晰度档位与第二清晰度档位不同,网络直播的清晰度参数用于调整网络直播的清晰度;
向服务器发送调整后的网络直播的清晰度参数;
从服务器接收与调整后的网络直播的清晰度参数对应的直播音视频流,并播放直播音视频流。
在一种可能的设计中,该方法还包括:
在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第 一清晰度档位降低一个档位,得到第三清晰度档位;
在网络直播的上行带宽匹配第三清晰度档位时,确定第二清晰度档位为第三清晰度档位;
在网络直播的上行带宽不匹配第三清晰度档位时,重复执行将第三清晰度档位更新为第三清晰度档位降低一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第三清晰度档位的步骤,直至网络直播的上行带宽匹配第三清晰度档位为止、并确定第二清晰度档位为与上行带宽匹配的第三清晰度档位,或者,直至第三清晰度档位为网络直播的最低清晰度档位为止、并确定第二清晰度档位为等于最低清晰度档位的第三清晰度档位。
在一种可能的设计中,该方法还包括:
在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;
在网络直播的上行带宽匹配第四清晰度档位时,确定第二清晰度档位为第四清晰度档位;
在网络直播的上行带宽不匹配第四清晰度档位时,重复执行将第四清晰度档位更新为第四清晰度档位增加一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第四清晰度档位的步骤,直至网络直播的上行带宽匹配第四清晰度档位为止、并确定第二清晰度档位为与上行带宽匹配的第四清晰度档位,或者,直至第四清晰度档位为网络直播的最高清晰度档位为止、并确定第二清晰度档位为等于最高清晰度档位的第四清晰度档位。
在一种可能的设计中,确定网络直播的上行带宽,包括:
采集网络直播的实际码率;
基于网络直播的实际码率,计算得到网络直播的上行带宽。
在一种可能的设计中,该方法还包括:存储第二清晰度档位。
在一种可能的设计中,该方法还包括:
在网络直播再次开播后,确定第一清晰度档位为第二清晰度档位;并基于第二清晰度档位,确定网络直播的清晰度参数;
向服务器发送网络直播的清晰度参数;
从服务器接收与网络直播的清晰度参数对应的直播音视频流,并播放直播音视频流。
在一种可能的设计中,网络直播的清晰度参数包括:码率、分辨率或帧率的至少一种。
在一种可能的设计中,清晰度切换方法还包括:在网络直播的上行带宽在预设时长内 均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;根据第三清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
在一种可能的设计中,清晰度切换方法还包括:在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;根据第四清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
在一种可能的设计中,客户端可为主播用户的客户端、或者为看播用户的客户端。
第二方面,本公开提供了一种网络直播的清晰度切换装置,包括:
确定模块,用于在一个网络直播的播放过程中,确定网络直播的上行带宽和第一清晰度档位,第一清晰度档位为网络直播的当前清晰度档位;
调整模块,用于在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整,第一清晰度档位与第二清晰度档位不同,网络直播的清晰度参数用于调整网络直播的清晰度;
发送模块,用于向服务器发送调整后的网络直播的清晰度参数;
接收模块,用于从服务器接收与调整后的网络直播的清晰度参数对应的直播音视频流;
播放模块,用于播放直播音视频流。
在一种可能的设计中,确定模块,还用于在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;在网络直播的上行带宽匹配第三清晰度档位时,确定第二清晰度档位为第三清晰度档位;在网络直播的上行带宽不匹配第三清晰度档位时,重复执行将第三清晰度档位更新为第三清晰度档位降低一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第三清晰度档位的步骤,直至网络直播的上行带宽匹配第三清晰度档位为止、并确定第二清晰度档位为与上行带宽匹配的第三清晰度档位,或者,直至第三清晰度档位为网络直播的最低清晰度档位为止、并确定第二清晰度档位为等于最低清晰度档位的第三清晰度档位。
在一种可能的设计中,确定模块,还用于在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;在网络直播的上行带宽匹配第四清晰度档位时,确定第二清晰度档位为第四清晰度档位;在网络直播的上行带宽不匹配第四清晰度档位时,重复执行将第四清晰度档位更新为第四清晰度档位增加一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第四清晰度档位的步骤,直至网络直播的上行带宽匹配第四清晰度档位为止、并确定第二清晰 度档位为与上行带宽匹配的第四清晰度档位,或者,直至第四清晰度档位为网络直播的最高清晰度档位为止、并确定第二清晰度档位为等于最高清晰度档位的第四清晰度档位。
在一种可能的设计中,确定模块,具体用于采集网络直播的实际码率;基于网络直播的实际码率,计算得到网络直播的上行带宽。
在一种可能的设计中,该装置还包括:存储模块,用于存储第二清晰度档位。
在一种可能的设计中,确定模块,还用于在网络直播再次开播后,从存储模块中获取第二清晰度档位;基于第二清晰度档位,确定网络直播的清晰度参数;
发送模块,还用于向服务器发送网络直播的清晰度参数;
接收模块,还用于从服务器接收与网络直播的清晰度参数对应的直播音视频流;
播放模块,还用于播放直播音视频流。
在一种可能的设计中,网络直播的清晰度参数包括:码率、分辨率或帧率中的至少一种。
在一种可能的设计中,确定模块还用于在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;根据第三清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
在一种可能的设计中,确定模块还用于在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;根据第四清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。第三方面,本公开提供了一种客户端,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行第一方面及第一方面任一种可能的设计中的网络直播的清晰度切换方法。
在一种可能的设计中,客户端可为主播用户的客户端、或者为看播用户的客户端。
第四方面,本公开提供了一种非瞬时性计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行第一方面及第一方面任一种可能的设计中的网络直播的清晰度切换方法。
第五方面,本公开提供了一种非瞬时性计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行第一方面及第一方面任一种可能的设计中的网络直播的清晰度切换方法。
第六方面,本公开提供了一种计算机程序,包括指令,所述指令当由处理器执行时,使所述处理器执行如第一方面及第一方面任一种可能的设计中的网络直播的清晰度切换方法。
第七方面,本公开提供了一种芯片系统,芯片系统应用于包括显示器、存储器和传感器的电子设备;芯片系统包括:处理器;当处理器执行存储器中存储的计算机指令时,电子设备执行第一方面及第一方面任一种可能的设计中的网络直播的清晰度切换方法。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的通信系统的示意图;
图2为本公开实施例提供的网络直播的清晰度切换方法的信令交互图;
图3为本公开实施例提供的网络直播的清晰度切换方法的流程示意图;
图4为本公开实施例提供的网络直播的清晰度切换装置的结构示意图;
图5为本公开实施例提供的网络直播的清晰度切换装置的结构示意图。
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
发明人经过分析后发现,网络直播所处的网络环境并不是一成不变,是处于波动的状态。并且,网络直播的清晰度依赖于网络直播的清晰度参数。因此,随着网络环境的改变, 如何通过调整网络直播的清晰度参数而使得网络直播保持最佳的清晰度是现亟需解决的问题。
示例性地,本公开提供一种网络直播的清晰度切换方法、装置、客户端、计算机存储介质以及计算机程序产品,可依据网络直播所处的网络环境在连续预设时长内的上行网络状态,为网络直播选择出最适合的清晰度参数,使得直播音视频流能够切换到最佳的清晰度,避免影响用户的观看体验。
请参阅图1,图1为本公开实施例提供的通信系统的示意图。如图1所示,本公开提供的通信系统可以包括:服务器和客户端,服务器与客户端之间可实现相互通信。
客户端可安装在电子设备中,客户端可通过电子设备中的应用程序(application,APP)、公众号、网页等方式实现本公开的网络直播的清晰度切换方法。
电子设备可以是手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)、智能电视、智慧屏、高清电视、4K电视、智能音箱、智能投影仪等设备,本公开对电子设备的具体类型不作任何限制。
本公开对电子设备的操作系统的类型不做限定。例如,Android系统、Linux系统、Windows系统、iOS系统等。
基于前述描述,本公开以图1中的客户端和服务器为例,结合附图和应用场景,对本公开提供的网络直播的清晰度切换方法进行详细阐述。
请参阅图2,图2为本公开实施例提供的网络直播的清晰度切换方法的信令交互图。如图2所示,本公开提供的网络直播的清晰度切换方法可以包括:
S101、客户端在一个网络直播的播放过程中,确定网络直播的上行带宽和第一清晰度档位。
客户端可播放一个网络直播,其中,本公开对网络直播的类型、内容和展示方式等参数不做限定。在该网络直播的播放过程中,客户端可采集该网络直播的实际码率,并基于该网络直播的实际码率,计算得到该网络直播的上行带宽(即传输速率)。
本公开对客户端采集该网络直播的实际码率的时间和方式等参数不做限定。
在一些实施例中,客户端在接收到用户输出的指令后,可实时、周期性或非周期性地采集该网络直播的实际码率。
举例而言,在接收到主播用户在电子设备的屏幕中选择切换该网络直播的清晰度的操作指令后,客户端可采集该网络直播的实际码率。
在另一些实施例中,客户端可自发地实现该网络直播的实际码率的实时、周期性或非周期性地采集。
需要说明的是,除了上述方式之外,客户端也可采集该网络直播的帧率和分辨率,计算得到该网络直播的上行带宽,本公开对确定该网络直播的上行带宽的方式不做限定。
本公开中,客户端可为主播用户的客户端,也可为看播用户的客户端,本公开对此不做限定。相对而言,主播用户为直播音视频流的创作者或发布者,主播用户可通过客户端向CDN服务器发送直播音视频流,前述过程可称为推流。看播用户为直播音视频流的观看者,看播用户可通过客户端从CDN服务器获取直播音视频流,前述过程可称为拉流。基于上述描述,客户端可获取到直播音视频流,且客户端可预先将清晰度档位分为多个档位,每个档位为一个比特率区间,每个档位的比特率区间均不同,且每个档位对应清晰度参数中的每个参数的一个范围。
本公开对清晰度档位的具体实现方式不做限定。在一些实施例中,多个清晰度档位可以包括:超高清(ultra high definition,UHD)1080P、高清(High Definition,HD)720P、标清(standard definition,SD)540P和普清(LD)480P。
在一些实施例中,客户端可采用JSON(JavaScript Object Notation,JS对象简谱)对上述清晰度档位进行软件程序设置。
综上,客户端可获知该网络直播的当前清晰度档位为第一清晰度档位。
S102、客户端在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整。
由于该网络直播的上行带宽可以表示出该网络直播所处的网络环境对应的上行网络状态。因此,客户端可判断该网络直播的上行带宽是否匹配第一清晰度档位。
本公开提及的匹配可以理解为该网络直播的上行带宽包含在第一清晰度档位的比特率区间内,不匹配可以理解为该网络直播的上行带宽不包含在第一清晰度档位的比特率区间内。
在该网络直播的上行带宽是否匹配第一清晰度档位时,由于该网络直播所处的网络环境是波动的。因此,客户端可继续判断在预设时长内该网络直播的上行带宽是否均不匹配第一清晰度档位,避免了由于频繁切换该网络直播的清晰度参数而影响该网络直播的播放 效果的问题。
本公开提及的预设时长的具体数值可基于客户端和/或服务器结合网络直播以及当前实际情况进行设置,本公开对此不做限定。
在预设时长内该网络直播的上行带宽均不匹配第一清晰度档位时,客户端可确定第一清晰度档位无法满足该网络直播所处的网络环境。故,客户端可基于该网络直播的上行带宽,确定出匹配的第二清晰度档位。第一清晰度档位与第二清晰度档位不同。
从而,客户端可基于第二清晰度档位,对网络直播的清晰度参数进行调整,得到调整后的网络直播的清晰度参数。
网络直播的清晰度参数用于调整网络直播的清晰度。本公开对网络直播的清晰度参数的具体实现方式不做限定。在一些实施例中,网络直播的清晰度参数可以包括:码率、分辨率或帧率的至少一种。码率可通过分辨率和帧率计算得到的。
S103、客户端向服务器发送调整后的网络直播的清晰度参数。
S104、服务器确定与调整后的网络直播的清晰度参数对应的直播音视频流。
S105、服务器向客户端发送与调整后的网络直播的清晰度参数对应的直播音视频流。
S106、客户端播放直播音视频流。
客户端可在一个请求中携带有调整后的网络直播的清晰度参数,并将该请求发送给服务器,使得服务器在接收到该请求后,可基于调整后的网络直播的清晰度参数,确定出与调整后的网络直播的清晰度参数对应的直播音视频流。服务器便可在一个响应中携带有该直播音视频流,并将该响应发送给客户端。
从而,客户端可播放该直播音视频流,使得该网络直播的清晰度能够切换到最佳状态,契合了该网络直播所处的网络环境,保障了用户的观看体验。
本公开对该直播音视频流的格式和大小等参数不做限定。另外,除了请求和响应的方式之外,客户端和服务器还可采用其他方式进行数据传输。举例而言,客户端可向服务器发送调整后的网络直播的清晰度参数的标识,使得服务器基于该标识,确定出该直播音视频流。服务器便可向客户端发送该直播音视频流的存储地址,使得客户端基于存储地址下载该直播音视频流。
本公开提供的网络直播的清晰度切换方法,通过在一个网络直播的播放过程中,客户端可确定该网络直播的上行带宽和第一清晰度档位,第一清晰度档位为网络直播的当前清晰度档位。客户端基在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基 于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整,第一清晰度档位与第二清晰度档位不同,网络直播的清晰度参数用于调整网络直播的清晰度。客户端可将调整后的网络直播的清晰度参数发送给服务器,使得服务器向客户端发送与调整后的网络直播的清晰度参数对应的直播音视频流,以便客户端播放直播音视频流。从而,基于网络直播所处的网络环境在连续预设时长内对应的上行网络状态,为网络直播选择出最适合的清晰度参数,使得网络直播的清晰度能够切换到最佳状态,还避免了切换过于频率而引发卡顿的现象,有利于提升用户的观看体验。
基于步骤S102中实施例的描述,客户端可采用多种方式确定出该网络直播的上行带宽所匹配的第二清晰度档位。
在一些实施例中,在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;根据第三清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
在一些实施例中,在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;根据第四清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
下面,结合图3,本公开以图1中的客户端为例,对客户端确定第二清晰度档位的具体实现方式进行详细阐述。
请参阅图3,图3为本公开实施例提供的网络直播的清晰度切换方法的流程示意图。如图3所示,本公开提供的网络直播的清晰度切换方法可以包括:
S200、客户端确定网络直播的上行带宽。
S201、客户端判断网络直播的上行带宽在预设时长内是否均不匹配第一清晰度档位。
若是,则电子设备可执行步骤S2021-S2024或步骤S2031-S2034;若否,则电子设备可继续执行步骤S200。
S2021、客户端在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位。
S2022、客户端判断网络直播的上行带宽是否匹配第三清晰度档位。
若是,则客户端可执行步骤S2023;若否,则客户端可执行步骤S2024。
S2023、客户端确定第二清晰度档位为第三清晰度档位。
S2024、客户端将第三清晰度档位更新为第三清晰度档位降低一个档位后的清晰度档 位,并执行步骤S2022,直至网络直播的上行带宽匹配第三清晰度档位,或者,第三清晰度档位为网络直播的最低清晰度档位为止。
当第三清晰度档位为网络直播的最低清晰度档位时,也执行步骤S2023,即确定第二清晰度档位为最低清晰度档位。
S2031、客户端在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位。
S2032、客户端判断网络直播的上行带宽是否匹配第四清晰度档位。
若是,则客户端可执行步骤S2033;若否,则客户端可执行步骤S2034。
S2033、客户端确定第二清晰度档位为第四清晰度档位。
S2034、客户端将第四清晰度档位更新为第四清晰度档位增加一个档位后的清晰度档位,并执行步骤S2032,直至网络直播的上行带宽匹配第四清晰度档位,或者,第四清晰度档位为网络直播的最高清晰度档位为止。
当第三清晰度档位为网络直播的最低清晰度档位时,也执行步骤S2033,即确定第二清晰度档位为最高清晰度档位。
综上,客户端可逐档确定出与网络直播的上行带宽对应的第二清晰度档位,以便基于第二清晰度档位准确确定出网络直播的清晰度参数,提升了契合网络直播所处的网络环境的清晰度。
基于上述实施例的描述,客户端还可将第二清晰度档位进行存储。本公开对第二清晰度档位的存储方式不做限定。由此,在网络直播再次开播后,客户端可确定第一清晰度档位为第二清晰度档位,并基于第二清晰度档位,可确定网络直播的清晰度参数。
从而,客户端可向服务器发送网络直播的清晰度参数。服务器便向客户端发送与网络直播的清晰度参数对应的直播音视频流,使得客户端可播放直播音视频流,实现网络直播的顺利播放。
示例性地,本公开提供一种网络直播的清晰度切换装置。
请参阅图4,图4为本公开实施例提供的网络直播的清晰度切换装置的结构示意图。本公开的网络直播的清晰度切换装置可设置在电子设备中,可实现上述图1-图3实施例的网络直播的清晰度切换方法对应于电子设备的操作。
如图4所示,本公开提供的网络直播的清晰度切换装置100可以包括:确定模块101、调整模块102、发送模块103、接收模块104和播放模块105。
确定模块101,用于在一个网络直播的播放过程中,确定网络直播的上行带宽和第一清晰度档位,第一清晰度档位为网络直播的当前清晰度档位;
调整模块102,用于在网络直播的上行带宽在预设时长内均不匹配第一清晰度档位时,基于网络直播的上行带宽所匹配的第二清晰度档位,对网络直播的清晰度参数进行调整,第一清晰度档位与第二清晰度档位不同,网络直播的清晰度参数用于调整网络直播的清晰度;
发送模块103,用于向服务器发送调整后的网络直播的清晰度参数;
接收模块104,还用于从服务器接收与调整后的网络直播的清晰度参数对应的直播音视频流;
播放模块105,用于播放直播音视频流。
在一些实施例中,确定模块101,还用于在网络直播的上行带宽在预设时长内均小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;在网络直播的上行带宽匹配第三清晰度档位时,确定第二清晰度档位为第三清晰度档位;在网络直播的上行带宽不匹配第三清晰度档位时,重复执行将第三清晰度档位更新为第三清晰度档位降低一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第三清晰度档位的步骤,直至网络直播的上行带宽匹配第三清晰度档位为止、并确定第二清晰度档位为与上行带宽匹配的第三清晰度档位,或者,直至第三清晰度档位为网络直播的最低清晰度档位为止、并确定第二清晰度档位为等于最低清晰度档位的第三清晰度档位。
在一些实施例中,确定模块101,还用于在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;在网络直播的上行带宽匹配第四清晰度档位时,确定第二清晰度档位为第四清晰度档位;在网络直播的上行带宽不匹配第四清晰度档位时,重复执行将第四清晰度档位更新为第四清晰度档位增加一个档位后的清晰度档位、并判断网络直播的上行带宽是否匹配第四清晰度档位的步骤,直至网络直播的上行带宽匹配第四清晰度档位为止、并确定第二清晰度档位为与上行带宽匹配的第四清晰度档位,或者,直至第四清晰度档位为网络直播的最高清晰度档位为止、并确定第二清晰度档位为等于最高清晰度档位的第四清晰度档位。
在一些实施例中,确定模块101,具体用于采集网络直播的实际码率;基于网络直播的实际码率,计算得到网络直播的上行带宽。
在一种可能的设计中,确定模块101具体用于在网络直播的上行带宽在预设时长内均 小于第一清晰度档位中的最小比特率时,将第一清晰度档位降低一个档位,得到第三清晰度档位;根据第三清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
在一种可能的设计中,确定模块101具体用于在网络直播的上行带宽在预设时长内均大于第一清晰度档位中的最大比特率时,将第一清晰度档位增加一个档位,得到第四清晰度档位;根据第四清晰度档位、以及网络直播的上行带宽,确定第二清晰度档位。
请参阅图5,图5为本公开实施例提供的网络直播的清晰度切换装置的结构示意图。如图5所示,本公开提供的网络直播的清晰度切换装置100在图4所示装置结构的基础上,还可以包括:存储模块106。
存储模块106,用于存储第二清晰度档位。
在一些实施例中,确定模块101,还用于确定第一清晰度档位为第二清晰度档位;并基于第二清晰度档位,确定网络直播的清晰度参数;
发送模块103,还用于向服务器发送网络直播的清晰度参数;
接收模块104,还用于从服务器接收与网络直播的清晰度参数对应的直播音视频流;
播放模块105,还用于播放直播音视频流。
在一些实施例中,网络直播的清晰度参数包括:码率、分辨率或帧率中的至少一种。
本公开提供的网络直播的清晰度切换装置,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本公开此处不再赘述。
示例性地,本公开提供一种客户端,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行前文实施例的网络直播的清晰度切换方法。
在一些实施例中,客户端可为主播用户的客户端、或者为看播用户的客户端。
示例性地,本公开提供一种芯片系统,芯片系统应用于包括显示器、存储器和传感器的电子设备;芯片系统包括:处理器;当处理器执行存储器中存储的计算机指令时,电子设备执行前文实施例的网络直播的清晰度切换方法。
示例性地,本公开提供一种非瞬时性计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器使得电子设备执行时实现前文实施例的网络直播的清晰度切换方法。
示例性地,本公开提供一种非瞬时性计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行前文实施例的网络直播的清晰度切换方法。
示例性地,本公开提供一种计算机程序,包括指令,所述指令当由处理器执行时,使所述处理器执行前文实施例的网络直播的清晰度切换方法。
在上述实施例中,全部或部分功能可以通过软件、硬件、或者软件加硬件的组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本公开实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (15)
- 一种网络直播的清晰度切换方法,应用于客户端,包括:在一个网络直播的播放过程中,确定所述网络直播的上行带宽和第一清晰度档位,所述第一清晰度档位为所述网络直播的当前清晰度档位;在所述网络直播的上行带宽在预设时长内均不匹配所述第一清晰度档位时,基于所述网络直播的上行带宽所匹配的第二清晰度档位,对所述网络直播的清晰度参数进行调整,所述第一清晰度档位与所述第二清晰度档位不同,所述网络直播的清晰度参数用于调整所述网络直播的清晰度;向服务器发送调整后的所述网络直播的清晰度参数;从所述服务器接收与调整后的所述网络直播的清晰度参数对应的直播音视频流,并播放所述直播音视频流。
- 根据权利要求1所述的清晰度切换方法,还包括:在所述网络直播的上行带宽在所述预设时长内均小于所述第一清晰度档位中的最小比特率时,将所述第一清晰度档位降低一个档位,得到第三清晰度档位;在所述网络直播的上行带宽匹配所述第三清晰度档位时,确定所述第二清晰度档位为所述第三清晰度档位;在所述网络直播的上行带宽不匹配所述第三清晰度档位时,重复执行将所述第三清晰度档位更新为所述第三清晰度档位降低一个档位后的清晰度档位、并判断所述网络直播的上行带宽是否匹配所述第三清晰度档位的步骤,直至所述网络直播的上行带宽匹配所述第三清晰度档位为止、并确定第二清晰度档位为与所述上行带宽匹配的第三清晰度档位,或者,直到所述第三清晰度档位为所述网络直播的最低清晰度档位为止、并确定第二清晰度档位为等于最低清晰度档位的第三清晰度档位。
- 根据权利要求1所述的清晰度切换方法,还包括:在所述网络直播的上行带宽在所述预设时长内均大于所述第一清晰度档位中的最大比特率时,将所述第一清晰度档位增加一个档位,得到第四清晰度档位;在所述网络直播的上行带宽匹配所述第四清晰度档位时,确定所述第二清晰度档位为 所述第四清晰度档位;在所述网络直播的上行带宽不匹配所述第四清晰度档位时,重复执行将所述第四清晰度档位更新为所述第四清晰度档位增加一个档位后的清晰度档位、并判断所述网络直播的上行带宽是否匹配所述第四清晰度档位的步骤,直至所述网络直播的上行带宽匹配所述第四清晰度档位为止、并确定第二清晰度档位为与所述上行带宽匹配的第四清晰度档位,或者,直到所述第四清晰度档位为所述网络直播的最高清晰度档位为止、并确定第二清晰度档位为等于最高清晰度档位的第四清晰度档位。
- 根据权利要求1-3任一项所述的清晰度切换方法,其中,所述确定所述网络直播的上行带宽,包括:采集所述网络直播的实际码率;基于所述网络直播的实际码率,计算得到所述网络直播的上行带宽。
- 根据权利要求1-4任一项所述的清晰度切换方法,还包括:存储所述第二清晰度档位。
- 根据权利要求5所述的清晰度切换方法,还包括:在所述网络直播再次开播后,获取所述第二清晰度档位;基于所述第二清晰度档位,确定所述网络直播的清晰度参数;向服务器发送所述网络直播的清晰度参数;从所述服务器接收与所述网络直播的清晰度参数对应的直播音视频流,并播放所述直播音视频流。
- 根据权利要求1-6任一项所述的清晰度切换方法,其中,所述网络直播的清晰度参数包括:码率、分辨率或帧率中的至少一种。
- 根据权利要求1-6任一项所述的清晰度切换方法,还包括:在所述网络直播的上行带宽在所述预设时长内均小于所述第一清晰度档位中的最小比特率时,将所述第一清晰度档位降低一个档位,得到第三清晰度档位;根据所述第三清晰度档位、以及所述网络直播的上行带宽,确定第二清晰度档位。
- 根据权利要求1-6任一项所述的清晰度切换方法,还包括:在所述网络直播的上行带宽在所述预设时长内均大于所述第一清晰度档位中的最大比特率时,将所述第一清晰度档位增加一个档位,得到第四清晰度档位;根据所述第四清晰度档位、以及所述网络直播的上行带宽,确定第二清晰度档位。
- 根据权利要求1-6任一项所述的清晰度切换方法,其中,所述客户端可为主播用户的客户端、或者为看播用户的客户端。
- 一种网络直播的清晰度切换装置,应用于客户端,包括:确定模块,用于在一个网络直播的播放过程中,确定所述网络直播的上行带宽和第一清晰度档位,所述第一清晰度档位为所述网络直播的当前清晰度档位;调整模块,用于在所述网络直播的上行带宽在预设时长内均不匹配所述第一清晰度档位时,基于所述网络直播的上行带宽所匹配的第二清晰度档位,对所述网络直播的清晰度参数进行调整,所述第一清晰度档位与所述第二清晰度档位不同,所述网络直播的清晰度参数用于调整所述网络直播的清晰度;发送模块,用于向服务器发送调整后的所述网络直播的清晰度参数;接收模块,用于从所述服务器接收与调整后的所述网络直播的清晰度参数对应的直播音视频流;播放模块,用于播放所述直播音视频流。
- 一种客户端,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行实现如权利要求1-10任一项所述的网络直播的清晰度切换方法。
- 一种非瞬时性计算机存储介质,包括计算机指令,当所述计算机指令在电子设备 上运行时,使得所述电子设备执行如权利要求1-10任一项所述的网络直播的清晰度切换方法。
- 一种非瞬时性计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-10任一项所述的网络直播的清晰度切换方法。
- 一种计算机程序,包括指令,所述指令当由处理器执行时,使所述处理器执行如权利要求1-10任一项所述的网络直播的清晰度切换方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110791858.4A CN115623228A (zh) | 2021-07-13 | 2021-07-13 | 网络直播的清晰度切换方法、装置和客户端 |
| CN202110791858.4 | 2021-07-13 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023284489A1 true WO2023284489A1 (zh) | 2023-01-19 |
Family
ID=84856008
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/099774 Ceased WO2023284489A1 (zh) | 2021-07-13 | 2022-06-20 | 网络直播的清晰度切换方法、装置和客户端 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN115623228A (zh) |
| WO (1) | WO2023284489A1 (zh) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20150082362A1 (en) * | 2008-02-26 | 2015-03-19 | Time Warner Cable Enterprises Llc | Methods and apparatus for business-based network resource allocation |
| CN105847864A (zh) * | 2016-05-13 | 2016-08-10 | 合网络技术(北京)有限公司 | 一种推荐视频清晰度的方法及装置 |
| CN108111910A (zh) * | 2017-12-22 | 2018-06-01 | 烽火通信科技股份有限公司 | 一种调整视频播放清晰度的方法和系统 |
| CN108848414A (zh) * | 2018-06-26 | 2018-11-20 | 曜宇航空科技(上海)有限公司 | 一种视频的播放方法、清晰度的切换方法及播放器 |
| CN111669619A (zh) * | 2020-06-04 | 2020-09-15 | 北京奇艺世纪科技有限公司 | 一种视频流数据切换方法、装置、终端和可读存储介质 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100442796C (zh) * | 2004-09-09 | 2008-12-10 | 上海川海信息科技有限公司 | 一种流媒体传输系统中的速率控制方法 |
| CN102149005A (zh) * | 2011-04-29 | 2011-08-10 | 四川长虹电器股份有限公司 | 自适应带宽控制网络视频质量的方法 |
| CN105657321A (zh) * | 2015-11-09 | 2016-06-08 | 乐视致新电子科技(天津)有限公司 | 视频清晰度自适应调节方法、装置及终端 |
| CN107071536B (zh) * | 2017-03-29 | 2019-07-09 | 武汉斗鱼网络科技有限公司 | 用户切换清晰度加载视频流的方法及系统 |
| CN108024126A (zh) * | 2017-11-28 | 2018-05-11 | 北京潘达互娱科技有限公司 | 网络直播视频调整方法、装置、电子设备和存储介质 |
-
2021
- 2021-07-13 CN CN202110791858.4A patent/CN115623228A/zh active Pending
-
2022
- 2022-06-20 WO PCT/CN2022/099774 patent/WO2023284489A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20150082362A1 (en) * | 2008-02-26 | 2015-03-19 | Time Warner Cable Enterprises Llc | Methods and apparatus for business-based network resource allocation |
| CN105847864A (zh) * | 2016-05-13 | 2016-08-10 | 合网络技术(北京)有限公司 | 一种推荐视频清晰度的方法及装置 |
| CN108111910A (zh) * | 2017-12-22 | 2018-06-01 | 烽火通信科技股份有限公司 | 一种调整视频播放清晰度的方法和系统 |
| CN108848414A (zh) * | 2018-06-26 | 2018-11-20 | 曜宇航空科技(上海)有限公司 | 一种视频的播放方法、清晰度的切换方法及播放器 |
| CN111669619A (zh) * | 2020-06-04 | 2020-09-15 | 北京奇艺世纪科技有限公司 | 一种视频流数据切换方法、装置、终端和可读存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN115623228A (zh) | 2023-01-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11527264B2 (en) | Systems and methods for adaptive streaming of multimedia content | |
| US9369506B2 (en) | Insertion of supplementary content into a segmented content stream | |
| US9325597B1 (en) | Bandwidth upgrade recommendation | |
| US20140297881A1 (en) | Downloading and adaptive streaming of multimedia content to a device with cache assist | |
| US10178431B2 (en) | Hybrid stream delivery | |
| CN102802054B (zh) | 一种多流视频直播中的控制方法及装置 | |
| CN110809189B (zh) | 视频播放方法、装置、电子设备和计算机可读介质 | |
| US12598334B2 (en) | Live-streaming starting method, device and program product | |
| CN103518342A (zh) | 一种心跳信号的发送控制方法及装置 | |
| US20250016428A1 (en) | Distributing digital data in a distributed computing environment | |
| CN105793841A (zh) | 自适应流文件中的客户端行为控制 | |
| CN104506631A (zh) | 一种音频文件缓存方法和设备 | |
| WO2017080175A1 (zh) | 用于多机位的视频播放器、播放系统及播放方法 | |
| CN112954354A (zh) | 视频的转码方法、装置、设备和介质 | |
| WO2017101418A1 (zh) | 多路流媒体播放方法及设备 | |
| CN106165435A (zh) | 自适应流媒体中的客户端行为控制 | |
| WO2021120612A1 (zh) | 一种呈现消息通知的方法与设备 | |
| CN112565877B (zh) | 投屏方法、系统、电子设备及存储介质 | |
| WO2023284489A1 (zh) | 网络直播的清晰度切换方法、装置和客户端 | |
| US20140380347A1 (en) | Methods and systems for user experience based content consumption | |
| CN106131680B (zh) | 电视通知显示时长调整方法、装置及电视系统 | |
| WO2022142568A1 (zh) | 内容显示方法及装置 | |
| US20240340507A1 (en) | Methods, systems, and media for streaming video content using adaptive buffers | |
| CN107465585A (zh) | 信息显示方法和装置 | |
| WO2024139138A1 (zh) | 投屏方法、电子设备、计算机可读介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22841129 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 22.04.2024) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 22841129 Country of ref document: EP Kind code of ref document: A1 |