WO2015058656A1 - Live broadcast control method and main broadcast device - Google Patents

Live broadcast control method and main broadcast device Download PDF

Info

Publication number
WO2015058656A1
WO2015058656A1 PCT/CN2014/088884 CN2014088884W WO2015058656A1 WO 2015058656 A1 WO2015058656 A1 WO 2015058656A1 CN 2014088884 W CN2014088884 W CN 2014088884W WO 2015058656 A1 WO2015058656 A1 WO 2015058656A1
Authority
WO
WIPO (PCT)
Prior art keywords
code rate
data
transmission status
live broadcast
live
Prior art date
Application number
PCT/CN2014/088884
Other languages
French (fr)
Chinese (zh)
Inventor
胡兴华
Original Assignee
腾讯科技(深圳)有限公司
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 腾讯科技(深圳)有限公司 filed Critical 腾讯科技(深圳)有限公司
Publication of WO2015058656A1 publication Critical patent/WO2015058656A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/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/2408Monitoring of the upstream path of the transmission network, e.g. 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • 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/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

Definitions

  • the present invention relates to the field of computer technologies, and in particular, to a live broadcast control method and an anchor device.
  • the live broadcast referred to in this specification refers to various real-time data transmissions in a broad sense, and the transmitted data may be audio data, video streams, and the like.
  • the video live broadcast is used as an example.
  • the video live broadcast solution is as follows: after the anchor device collects the local video and completes the encoding, the video stream is uploaded to the video server; the video server sends the video stream to the user equipment; the user equipment receives the video stream. Decode and then display the video screen.
  • the live broadcast effect will be affected by many factors, such as live uplink and downlink bandwidth, network jitter, and so on.
  • QoS Quality of Service
  • jitter is a commonly used concept of Quality of Service (QoS) control, which means the degree of change of packet delay. If the network is congested, the queuing delay will affect the end-to-end delay and cause the packet delays transmitted over the same connection to be different, and jitter is used to describe the extent of this delay variation. Therefore, jitter is an important parameter for real-time transmission.
  • QoS Quality of Service
  • the current solution is to set the anchor upload rate to a lower level.
  • a lower bit rate can result in poor live streaming, such as blurred video frames and unclear speech.
  • Embodiments of the present invention provide a live broadcast control method, an anchor device, and a non-transitory computer readable storage medium.
  • the live broadcast control method includes:
  • the live broadcast data is encoded according to the code rate.
  • An anchor device comprising:
  • a transmission status obtaining unit configured to acquire a transmission status of the currently transmitted live data
  • a code rate determining unit configured to determine a coded code rate according to a transmission status of the currently transmitted live broadcast data acquired by the transmission status acquiring unit
  • a coding unit configured to encode the live broadcast data to be transmitted according to the coded rate determined by the code rate determining unit.
  • a non-transitory computer readable storage medium having computer executable instructions stored thereon. When the executable instructions are executed in a computer, the following steps are performed:
  • the live broadcast data to be transmitted is encoded according to the code rate.
  • the live data is encoded and sent to the server, the transmission status of the currently transmitted live data is obtained in real time, and the coded rate is determined according to the obtained live broadcast data transmission status, and then determined by using
  • the encoding code rate encodes the live data to be transmitted, so as to ensure that the encoding rate of the live data can be changed as the data transmission status changes, thereby ensuring smooth data transmission and realizing live broadcast at a higher code rate. Better live broadcast effect.
  • FIG. 1 is a schematic flowchart of a live broadcast control method according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of another live broadcast control method according to an embodiment of the present invention.
  • FIG. 3 is a schematic flowchart of another live broadcast control method according to an embodiment of the present invention.
  • FIG. 4 is a schematic structural diagram of an anchor device according to an embodiment of the present disclosure.
  • FIG. 5 is a schematic structural diagram of another anchor device according to an embodiment of the present disclosure.
  • FIG. 6 is a schematic structural diagram of another anchor device according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
  • the embodiment of the invention provides a live broadcast control method, which can be implemented by an anchor device in a network live broadcast system. As shown in FIG. 1, the method includes steps 101 to 102.
  • step 101 the transmission status of the currently transmitted live data is obtained, and the coding rate is determined according to the transmission status of the currently transmitted live data.
  • step 102 the live broadcast data to be transmitted is encoded according to the code rate.
  • the coding rate of the live data can be changed according to the change of the live data transmission status, thereby ensuring the smooth transmission of the live data, and realizing the live broadcast at a higher code rate. Good live broadcast effect.
  • the embodiment of the invention provides a live broadcast control method, which can be implemented by an anchor device in a network live broadcast system. As shown in FIG. 2, the method includes steps 201 to 202.
  • step 201 live data is collected, and the live data is encoded and sent to the server.
  • the code rate is used for encoding when the anchor device is powered on for the first time.
  • the embodiment of the present invention may not be limited, because the embodiment of the present invention uses a variable bit rate instead of a fixed bit rate.
  • the data is encoded.
  • the anchor device may encode the first live broadcast data by using a default encoding code rate or a previously used encoding code rate, and send the encoded first live broadcast data to the server.
  • step 202 the transmission status of the live broadcast data is obtained, and the coding code rate is determined according to the transmission status of the live broadcast data.
  • the anchor device in the process that the anchor device sends the encoded live data to the server, Get the transmission status of the live data.
  • the broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or too low.
  • the embodiment of the present invention provides a solution for determining the code rate based on the transmission status of the live data in a predetermined time period.
  • the period of time can be pre-configured into the execution logic of the device.
  • a person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission.
  • the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding code rate is determined according to the intermediate quantity, for example, determining the available bandwidth according to the transmission status of the currently transmitted live data, and The available bandwidth determines the code rate.
  • the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted.
  • other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
  • the coding rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the current coding rate is decreased, for example, the current coding rate is adjusted to match the available bandwidth. If the transmission status of the live broadcast data is better than the second predetermined standard, the current coding rate is increased.
  • the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission
  • the matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
  • the The precoding rate is such that the encoding rate reaches a critical value at which network jitter occurs.
  • This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate.
  • the preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission.
  • the packet loss rate can be used to indicate the quality of live data transmission.
  • the packet loss rate When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
  • step 203 the live broadcast data to be transmitted is encoded according to the above encoded code rate and sent to the server.
  • the transmission status of the transmitted live data is obtained, and the encoding code rate is determined according to the obtained transmitted live data transmission status, and then the live data is to be encoded by using the determined encoding code rate, thereby ensuring
  • the encoding code rate of the live data stream can be changed according to the change of the data transmission state, thereby ensuring the smooth flow of the live data transmission, and realizing the live broadcast at a higher code rate, and obtaining a better live broadcast effect.
  • This embodiment provides a scheme for adjusting an encoding code rate based on an uplink bandwidth of an anchor device.
  • the video coding rate can be automatically adjusted according to the change of the uplink bandwidth of the anchor device.
  • the video server finds that the video uploaded by the anchor device has lost packets, the packet loss information is fed back to the client of the anchor device, and the client of the anchor device calculates the current uplink network bandwidth according to the packet loss condition, and then notifies the client encoding module.
  • the encoding is performed according to the encoding code rate matched with the current uplink network bandwidth. After no packet loss occurs for a period of time, the video stream of the high encoding rate is slowly switched back.
  • the transmitted data may be audio data, video streams, and the like.
  • Real-time data transmission can be used in various application environments such as Voice over Internet Protocol (VOIP) and video.
  • VOIP Voice over Internet Protocol
  • the video transmission as an example in this embodiment should not be construed as a limitation on the uniqueness of the live data referred to in the embodiment of the present invention.
  • a live broadcast control method provided in this embodiment includes steps 301 to 306.
  • step 301 the anchor device collects live data, encodes the live data, and sends the data to the video server, and the video server forwards the live data to the user equipment.
  • step 302 when the video server finds that the primary broadcast device uploads the live data and loses the packet, the video packet is analyzed to obtain the packet loss rate, and the packet loss rate is sent to the client of the anchor device.
  • step 303 the client of the anchor device performs calculation and analysis on the packet loss data reported by the video server to determine the bandwidth available for the current uplink.
  • step 304 the encoding module of the client of the anchor device adjusts the video encoding rate according to the determined uplink available bandwidth, so that the adjusted video encoding rate matches the available bandwidth calculated in step 303.
  • step 305 after adjusting the video coding rate, if the data transmission effect is determined to be good, for example, the client of the anchor device does not receive the packet loss data or the packet loss rate is lower than the predetermined value after receiving the video server for a period of time. Go to step 306.
  • step 306 the encoding module of the client of the anchor device increases the video encoding bit rate.
  • steps 305 and 306 will be repeated, for example, may be repeated periodically until the video coding rate is adjusted to the threshold of network jitter.
  • the embodiment of the present invention adjusts the encoding code rate based on the uplink bandwidth of the anchor device, and has the following effects: 1. Anti-network jitter, even under the condition that the network condition is poor, the user can still experience smooth video. 2, dynamically adjust the code rate to ensure that users can experience high-quality video under the condition of good network quality.
  • An embodiment of the present invention further provides an anchor device, as shown in FIG. 4, including:
  • the transmission status obtaining unit 401 is configured to acquire a transmission status of the currently transmitted live data.
  • the code rate determining unit 402 is configured to determine, according to the transmission status of the currently transmitted live data acquired by the transmission status acquiring unit 401, an encoding code rate;
  • the encoding unit 403 is configured to encode the live broadcast data to be transmitted according to the code rate of the code rate determining unit 402.
  • the code rate determining unit 402 may periodically determine the encoding code rate according to the transmission status of the currently transmitted live data; the encoding unit 403 may use the default code rate or the previously used code rate for the currently transmitted live data. Encode.
  • the embodiment of the present invention further provides another anchor device.
  • the anchor device provided in this embodiment further includes an acquisition unit 404 and a sending unit 405. among them,
  • the collecting unit 404 is configured to collect the currently transmitted live data and the live data to be transmitted;
  • the sending unit 405 is configured to send the live data encoded by the encoding unit 302 to the server;
  • the sending unit 405 is configured to send the live broadcast data encoded by the encoding unit 302 to the server.
  • the live data is encoded and sent to the server, and the transmission status of the live data is obtained in real time, and the encoding code rate is determined according to the obtained live data transmission status, and the live data is encoded by using the determined encoding rate.
  • the encoding code rate of the live data can be changed according to the change of the data transmission state, thereby ensuring smooth data transmission, and realizing live broadcast at a higher code rate, and obtaining a better live broadcast effect.
  • the transmission status of the live data can be obtained in real time.
  • the broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low. For this case, the following solutions are provided in the embodiment of the present invention.
  • the code rate determining unit 402 may be configured to perform the transmission status of the live data according to a predetermined time period. Determine the code rate.
  • the period of time can be pre-configured into the execution logic of the device.
  • a person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
  • the code rate is used for encoding when the anchor device is powered on for the first time.
  • the embodiment of the present invention may not be limited, because the embodiment of the present invention uses a variable bit rate instead of a fixed bit rate.
  • the data is encoded.
  • the encoding unit 403 may encode the live broadcast data by using a default encoding bit rate or a previously used encoding code rate, and transmit the encoded live data to the server.
  • the transmission state in the embodiment of the present invention may be indicating the quality of the current live broadcast data transmission. Any technical indicators, those skilled in the art can understand that there are many technical indicators indicating the quality of the current live data transmission.
  • the coding rate can be directly determined from the transmission state, or can be obtained according to the transmission state.
  • the other intermediate quantity determines the encoding code rate according to the intermediate quantity.
  • the code rate determining unit 402 can determine the available bandwidth according to the transmission status of the currently transmitted live data, and determine the encoding code rate according to the available bandwidth.
  • the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted.
  • other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
  • the encoding code rate may be determined in the following manner: for example, if the transmission status of the live broadcast data is worse than the first predetermined criterion, the code rate determining unit 402 may lower the current encoding rate, for example, the current encoding rate. The adjustment is such that the available bandwidth matches; if the transmission status of the live data is better than the second predetermined criterion, the code rate determining unit 402 can increase the current encoding rate.
  • the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission
  • the matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
  • the code rate determining unit 402 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
  • This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate.
  • the preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention
  • the transmission status obtaining unit 401 can obtain the packet loss rate of the live data in the transmission process.
  • the packet loss rate When the packet loss rate is used to indicate the quality of the live data transmission, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device.
  • the embodiment of the invention is not limited thereto.
  • Another embodiment of the present invention further provides an anchor device, as shown in FIG. 6, comprising: a receiver 601, a transmitter 602, a processor 603, and a memory 604.
  • the processor 603 is configured to collect live data and encode and send the data to the server; obtain a transmission status of the live data, and determine a coding rate according to the transmission status of the live data; and encode the live data according to the coding rate.
  • the transmission status of the transmitted live data is obtained, and the encoding code rate is determined according to the obtained live data transmission status, and then the live data is to be encoded by using the determined encoding code rate, so that the live data can be guaranteed.
  • the code rate can be changed as the data transmission status changes, so that the data transmission is smooth, and the live broadcast can be realized at a higher code rate, and a better live broadcast effect is obtained.
  • the transmission status of the live data can be obtained in real time.
  • the broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low.
  • the processor 603 may be configured to determine the code according to the transmission status of the live data in a predetermined time period. Code rate.
  • the period of time can be pre-configured into the execution logic of the device.
  • a person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
  • variable rate is used instead of the code rate.
  • the live bit data is encoded at a fixed bit rate.
  • the processor 603 may encode the live broadcast data by using a default encoding rate or a previously used encoding rate, and send the encoded live data to the server.
  • the transmission status in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art can understand that the quality of the current live data transmission is good. There are many bad technical indicators.
  • the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding rate may be determined according to the intermediate quantity.
  • the processor 603 may The transmission status of the live data determines the available bandwidth and determines the code rate based on the available bandwidth.
  • the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted.
  • other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
  • the encoding code rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the processor 603 may reduce the current encoding rate; if the transmission status of the live data is better than The second predetermined criterion, the processor 603 can increase the current encoding rate.
  • the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission
  • the matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
  • the processor 603 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
  • This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate.
  • the preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention
  • the processor 603 may obtain a packet loss rate of the live broadcast data during the transmission process.
  • the packet loss rate When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
  • the embodiment of the present invention further provides a terminal, which is used as an anchor device, as shown in FIG.
  • a terminal which is used as an anchor device, as shown in FIG.
  • the terminal can be any terminal device including a mobile phone, a tablet computer, a personal digital assistant (PDA), a point of sales (POS), a car computer, and the like.
  • PDA personal digital assistant
  • POS point of sales
  • car computer and the like.
  • This embodiment uses a mobile phone as an example for description.
  • FIG. 7 is a block diagram showing a partial structure of a mobile phone related to a terminal provided by an embodiment of the present invention.
  • the mobile phone includes: a radio frequency (RF) circuit 710, a memory 720, an input unit 730, a display unit 740, a sensor 750, an audio circuit 760, a wireless fidelity (WiFi) module 770, and a processor 780. And power supply 790 and other components.
  • RF radio frequency
  • the RF circuit 710 can be used for transmitting and receiving information or during a call, and receiving and transmitting the signal. Specifically, after receiving the downlink information of the base station, the processor 780 processes the data. In addition, the uplink data is designed to be sent to the base station.
  • RF circuits include, but are not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like.
  • LNA Low Noise Amplifier
  • RF circuitry 710 can also communicate with the network and other devices via wireless communication. The above wireless communication may use any communication standard or protocol, including but not limited to Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (Code Division). Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), E-mail, Short Messaging Service (SMS), and the like.
  • GSM Global System of Mobile communication
  • GPRS
  • the memory 720 can be used to store software programs and modules, and the processor 780 executes various functional applications and data processing of the mobile phone by running software programs and modules stored in the memory 720.
  • the memory 720 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to Data created by the use of the mobile phone (such as audio data, phone book, etc.).
  • memory 720 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state memory. Pieces.
  • the input unit 730 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function controls of the handset 700.
  • the input unit 730 may include a touch panel 731 and other input devices 732.
  • the touch panel 731 also referred to as a touch screen, can collect touch operations on or near the user (such as the user using a finger, a stylus, or the like on the touch panel 731 or near the touch panel 731. Operation), and drive the corresponding connecting device according to a preset program.
  • the touch panel 731 can include two parts: a touch detection device and a touch controller.
  • the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information.
  • the processor 780 is provided and can receive commands from the processor 780 and execute them.
  • the touch panel 731 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 730 may also include other input devices 732.
  • other input devices 732 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 740 can be used to display information input by the user or information provided to the user as well as various menus of the mobile phone.
  • the display unit 740 can include a display panel 741.
  • the display panel 741 can be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
  • the touch panel 731 can cover the display panel 741. When the touch panel 731 detects a touch operation on or near the touch panel 731, it transmits to the processor 780 to determine the type of the touch event, and then the processor 780 according to the touch event. The type provides a corresponding visual output on display panel 741.
  • touch panel 731 and the display panel 741 are used as two independent components to implement the input and input functions of the mobile phone in FIG. 7, in some embodiments, the touch panel 731 can be integrated with the display panel 741. Realize the input and output functions of the phone.
  • the handset 700 can also include at least one type of sensor 750, such as a light sensor, motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 741 according to the brightness of the ambient light, and the proximity sensor may close the display panel 741 and/or when the mobile phone moves to the ear. Or backlight.
  • the accelerometer sensor can detect the acceleration of each direction (usually three axes) and can detect when stationary.
  • the size and direction of gravity can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tap), etc.; as for the mobile phone can also be configured Other sensors such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors are not described here.
  • An audio circuit 760, a speaker 761, and a microphone 762 can provide an audio interface between the user and the handset.
  • the audio circuit 760 can transmit the converted electrical data of the received audio data to the speaker 761 for conversion to the sound signal output by the speaker 761; on the other hand, the microphone 762 converts the collected sound signal into an electrical signal by the audio circuit 760. After receiving, it is converted into audio data, and then processed by the audio data output processor 780, sent to, for example, another mobile phone via the RF circuit 710, or outputted to the memory 720 for further processing.
  • WiFi is a short-range wireless transmission technology
  • the mobile phone can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 770, which provides users with wireless broadband Internet access.
  • FIG. 7 shows the WiFi module 770, it can be understood that it does not belong to the essential configuration of the mobile phone 700, and may be omitted as needed within the scope of not changing the essence of the invention.
  • the processor 780 is the control center of the handset, which connects various portions of the entire handset using various interfaces and lines, by executing or executing software programs and/or modules stored in the memory 720, and invoking data stored in the memory 720, The phone's various functions and processing data, so that the overall monitoring of the phone.
  • the processor 780 may include one or more processing units; preferably, the processor 780 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like.
  • the modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 780.
  • the handset 700 also includes a power source 790 (such as a battery) that supplies power to the various components.
  • a power source 790 such as a battery
  • the power source can be logically coupled to the processor 780 via a power management system to manage functions such as charging, discharging, and power management through the power management system.
  • the mobile phone 700 may further include a camera, a Bluetooth module, and the like, and details are not described herein.
  • the processor 780 included in the terminal is further configured to:
  • the live data is encoded and sent to the server, and the live data is obtained in real time.
  • the transmission status of the live data can be obtained in real time.
  • the broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low.
  • the processor 780 may be configured to determine the code according to the transmission status of the live data in a predetermined time period. Code rate.
  • the period of time can be pre-configured into the execution logic of the device.
  • a person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
  • variable rate is used instead of the code rate.
  • the live bit data is encoded at a fixed bit rate.
  • the processor 780 may encode the live broadcast data by using a default encoding rate or a previously used encoding rate, and send the encoded live data to the server.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention
  • the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding rate may be determined according to the intermediate quantity.
  • the processor 580 may determine the available bandwidth according to the transmission status of the live data, and The code rate is determined based on the available bandwidth.
  • the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted.
  • other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as unique to embodiments of the invention limited.
  • the encoding code rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the processor 780 may reduce the current encoding rate; if the transmission status of the live data is better than the first The second predetermined criterion, the processor 780 can increase the current encoding rate.
  • the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission
  • the matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
  • the processor 780 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
  • This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate.
  • the preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
  • the transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention
  • the processor 780 can obtain the packet loss rate of the live broadcast data during the transmission process.
  • the packet loss rate When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
  • each unit included is only divided according to functional logic, but is not limited to the above division, as long as the corresponding function can be implemented;
  • the names are also for convenience of distinction from each other and are not intended to limit the scope of protection of the present invention.
  • the storage medium may be a read only memory, a magnetic disk or an optical disk or the like.

Abstract

Disclosed are a live broadcast control method and a main broadcast device. The method comprises: acquiring a transmission condition of live broadcast data transmitted currently, and determining a code rate of encoding in accordance with the transmission condition of the live broadcast data transmitted currently; and in accordance with the code rate of encoding, encoding live broadcast data to be transmitted. In the process of encoding live broadcast data and sending same to a server, a transmission condition of the live broadcast data is acquired in real time, a code rate of encoding is determined in accordance with the transmission condition, and live broadcast data to be transmitted is encoded using the determined code rate of encoding. In this way, the fluency of live broadcast data transmission can be guaranteed, and a code rate adapted to a network environment which may constantly change can be obtained in the live broadcast process, so that live broadcast can be realized at a higher code rate so as to obtain a better live broadcast effect.

Description

直播控制方法,及主播设备Live broadcast control method, and anchor device
本申请要求于2013年10月21日提交中国专利局、申请号为201310495764.8、发明名称为“一种直播控制方法、及主播设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims priority to Chinese Patent Application No. 201310495764.8, entitled "A Live Broadcast Control Method, and Anchor Device" on October 21, 2013, the entire contents of which are incorporated herein by reference. In the application.
技术领域Technical field
本发明涉及计算机技术领域,特别涉及一种直播控制方法,及主播设备。The present invention relates to the field of computer technologies, and in particular, to a live broadcast control method and an anchor device.
背景技术Background technique
本说明书所称的直播是指广义上的各种实时性的数据传输,传输的数据可以是音频数据、视频流等。以视频直播为例,视频直播方案如下:主播设备采集本地视频并完成编码后,将编码后的视频流上传到视频服务器;视频服务器将视频流下发给用户设备;用户设备对接收到的视频流进行解码,然后显示视频画面。The live broadcast referred to in this specification refers to various real-time data transmissions in a broad sense, and the transmitted data may be audio data, video streams, and the like. The video live broadcast is used as an example. The video live broadcast solution is as follows: after the anchor device collects the local video and completes the encoding, the video stream is uploaded to the video server; the video server sends the video stream to the user equipment; the user equipment receives the video stream. Decode and then display the video screen.
在直播过程中,直播效果会受到很多因素的影响,例如直播上下行带宽、网络抖动等。During the live broadcast, the live broadcast effect will be affected by many factors, such as live uplink and downlink bandwidth, network jitter, and so on.
其中,网络抖动是服务质量(Quality of Service,QoS)控制常用的一个概念,其意思是指分组延迟的变化程度。如果网络发生拥塞,排队延迟将影响端到端的延迟,并导致通过同一连接传输的分组延迟各不相同,而抖动,就是用来描述这种延迟变化的程度。因此,抖动对于实时性的传输是一个重要参数。Among them, network jitter is a commonly used concept of Quality of Service (QoS) control, which means the degree of change of packet delay. If the network is congested, the queuing delay will affect the end-to-end delay and cause the packet delays transmitted over the same connection to be different, and jitter is used to describe the extent of this delay variation. Therefore, jitter is an important parameter for real-time transmission.
为了保证网络发生抖动导致带宽很低时,不会出现丢包现象,从而保证直播的流畅性。目前采用的方案是将主播上传码率设置为一个较低的水平。较低的码率会导致直播效果较差,例如视频画面模糊,语音不清等情况。In order to ensure that the bandwidth of the network is low, the packet loss will not occur, thus ensuring the smoothness of the live broadcast. The current solution is to set the anchor upload rate to a lower level. A lower bit rate can result in poor live streaming, such as blurred video frames and unclear speech.
发明内容Summary of the invention
本发明实施例提供了一种直播控制方法,主播设备以及非瞬时性的计算机可读存储介质。 Embodiments of the present invention provide a live broadcast control method, an anchor device, and a non-transitory computer readable storage medium.
该直播控制方法,包括:The live broadcast control method includes:
获取当前传输的直播数据的传输状况,并依据所述直播数据的传输状况确定编码码率;以及Obtaining a transmission status of the currently transmitted live data, and determining a coding rate according to a transmission status of the live data;
依据所述编码码率对带传输直播数据进行编码。The live broadcast data is encoded according to the code rate.
一种主播设备,包括:An anchor device comprising:
传输状况获取单元,用于获取当前传输的直播数据的传输状况;a transmission status obtaining unit, configured to acquire a transmission status of the currently transmitted live data;
码率确定单元,用于依据所述传输状况获取单元获取的所述当前传输的直播数据的传输状况确定编码码率;以及a code rate determining unit, configured to determine a coded code rate according to a transmission status of the currently transmitted live broadcast data acquired by the transmission status acquiring unit;
编码单元,用于依据所述码率确定单元确定的编码码率对待传输直播数据进行编码。And a coding unit, configured to encode the live broadcast data to be transmitted according to the coded rate determined by the code rate determining unit.
一种非瞬时性的计算机可读存储介质,其上存储有计算机可执行指令,当计算机中运行这些可执行指令时,执行如下步骤:A non-transitory computer readable storage medium having computer executable instructions stored thereon. When the executable instructions are executed in a computer, the following steps are performed:
获取当前传输的直播数据的传输状况,并依据所述当前传输的直播数据的传输状况确定编码码率;以及Obtaining a transmission status of the currently transmitted live data, and determining a coding rate according to a transmission status of the currently transmitted live data;
依据所述编码码率对待传输直播数据进行编码。The live broadcast data to be transmitted is encoded according to the code rate.
从以上技术方案可以看出,将直播数据编码发送给服务器过程中,实时获取当前传输的直播数据的传输状况,并根据所获取的当前传输的直播数据传输状况确定编码码率,再使用所确定的编码码率对待传输直播数据进行编码,这样可以保证直播数据的编码码率能够随着数据传输状况的变化而变化,从而保证数据传输的流畅,并能够以较高的码率实现直播,获得较好的直播效果。It can be seen from the above technical solution that the live data is encoded and sent to the server, the transmission status of the currently transmitted live data is obtained in real time, and the coded rate is determined according to the obtained live broadcast data transmission status, and then determined by using The encoding code rate encodes the live data to be transmitted, so as to ensure that the encoding rate of the live data can be changed as the data transmission status changes, thereby ensuring smooth data transmission and realizing live broadcast at a higher code rate. Better live broadcast effect.
附图说明DRAWINGS
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings used in the description of the embodiments will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the present invention, Those skilled in the art can also obtain other drawings based on these drawings without paying for inventive labor.
图1为本发明实施例所提供的一种直播控制方法流程示意图;1 is a schematic flowchart of a live broadcast control method according to an embodiment of the present invention;
图2为本发明实施例所提供的另一种直播控制方法流程示意图;2 is a schematic flowchart of another live broadcast control method according to an embodiment of the present invention;
图3为本发明实施例所提供的另一种直播控制方法流程示意图; 3 is a schematic flowchart of another live broadcast control method according to an embodiment of the present invention;
图4为本发明实施例所提供的一种主播设备结构示意图;FIG. 4 is a schematic structural diagram of an anchor device according to an embodiment of the present disclosure;
图5为本发明实施例所提供的另一种主播设备结构示意图;FIG. 5 is a schematic structural diagram of another anchor device according to an embodiment of the present disclosure;
图6为本发明实施例所提供的另一种主播设备结构示意图;以及FIG. 6 is a schematic structural diagram of another anchor device according to an embodiment of the present invention;
图7为本发明实施例所提供的一种终端结构示意图。FIG. 7 is a schematic structural diagram of a terminal according to an embodiment of the present invention.
具体实施方式detailed description
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。The present invention will be further described in detail with reference to the accompanying drawings, in which . All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
本发明实施例提供了一种直播控制方法,该方法可以通过网络直播系统中的主播设备进行实施。如图1所示,该方法包括步骤101至步骤102。The embodiment of the invention provides a live broadcast control method, which can be implemented by an anchor device in a network live broadcast system. As shown in FIG. 1, the method includes steps 101 to 102.
在步骤101中,获取当前传输的直播数据的传输状况,并依据当前传输的直播数据的传输状况确定编码码率。In step 101, the transmission status of the currently transmitted live data is obtained, and the coding rate is determined according to the transmission status of the currently transmitted live data.
在步骤102中,依据编码码率对待传输直播数据进行编码。In step 102, the live broadcast data to be transmitted is encoded according to the code rate.
根据本发明实施例所提供的技术方案,直播数据的编码码率能够随着直播数据传输状况的变化而变化,从而保证直播数据传输的流畅,并能以较高的码率实现直播,获得较好的直播效果。According to the technical solution provided by the embodiment of the present invention, the coding rate of the live data can be changed according to the change of the live data transmission status, thereby ensuring the smooth transmission of the live data, and realizing the live broadcast at a higher code rate. Good live broadcast effect.
本发明实施例提供了一种直播控制方法,该方法可以通过网络直播系统中的主播设备进行实施。如图2所示,该方法包括步骤201至步骤202。The embodiment of the invention provides a live broadcast control method, which can be implemented by an anchor device in a network live broadcast system. As shown in FIG. 2, the method includes steps 201 to 202.
在步骤201中,采集直播数据,对直播数据进行编码,并发送给服务器。In step 201, live data is collected, and the live data is encoded and sent to the server.
在本发明实施例中,在主播设备首次开机的时候采用何种码率进行编码本发明实施例可以不予限制,这是由于本发明实施例采用可变码率,而不是固定码率对直播数据进行编码。例如,主播设备可采用默认编码码率或者前次使用的编码码率对第一直播数据进行编码,并将编码之后的第一直播数据发送给服务器。In the embodiment of the present invention, the code rate is used for encoding when the anchor device is powered on for the first time. The embodiment of the present invention may not be limited, because the embodiment of the present invention uses a variable bit rate instead of a fixed bit rate. The data is encoded. For example, the anchor device may encode the first live broadcast data by using a default encoding code rate or a previously used encoding code rate, and send the encoded first live broadcast data to the server.
在步骤202中,获取直播数据的传输状况,并依据直播数据的传输状况确定编码码率。In step 202, the transmission status of the live broadcast data is obtained, and the coding code rate is determined according to the transmission status of the live broadcast data.
本实施例中,在主播设备向服务器发送编码后的直播数据的过程中,可以 获取该直播数据的传输状况。主播设备向服务器发送直播数据属于上行数据传输,由于主播设备的上行数据传输状况是可能变化的,因此可能存在编码码率与上行数据传输状况不匹配的情况。例如,可能编码码率太高,也可能太低,针对这种情况本发明实施例给出了如下解决方案:以预定时间为周期,依据直播数据的传输状况确定编码码率。In this embodiment, in the process that the anchor device sends the encoded live data to the server, Get the transmission status of the live data. The broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or too low. For this case, the embodiment of the present invention provides a solution for determining the code rate based on the transmission status of the live data in a predetermined time period.
在本实施例中,周期时长可以预先配置到设备的执行逻辑中。本领域技术人员可以依据具体的需要和网络状况进行自由设定周期时长,该周期时长设置得越短可以确定更为准确的编码码率与当前网络状态所适配,该周期时长设置得越长则会占用越少的资源用于进行编码码率的确定,本领域技术人员可以依据需要进行平衡性设定,因此本发明实施例可以不予限定。In this embodiment, the period of time can be pre-configured into the execution logic of the device. A person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,可以由传输状态直接确定编码码率,也可以依据传输状态获得其它中间量并依据中间量来确定编码码率,例如,依据当前传输的直播数据的传输状况确定可用带宽,并依据可用带宽确定编码码率。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention In an embodiment, the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding code rate is determined according to the intermediate quantity, for example, determining the available bandwidth according to the transmission status of the currently transmitted live data, and The available bandwidth determines the code rate.
在本实施例中,采用的是由传输状态确定可用带宽作为中间量的方式,实际中采用其他网络参数作为中间量也是可以实现的,因此先确定可用带宽再依据可用带宽来确定编码码率的实现方案不应理解为对本发明实施例的唯一性限定。In this embodiment, the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted. Actually, other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
在本发明实施例中,可以采用如下方式确定编码码率:例如,若直播数据的传输状况差于第一预定标准,则降低当前编码码率,例如将当前编码码率调整至于可用带宽相匹配;若直播数据的传输状况好于第二预定标准,则提高当前编码码率。In the embodiment of the present invention, the coding rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the current coding rate is decreased, for example, the current coding rate is adjusted to match the available bandwidth. If the transmission status of the live broadcast data is better than the second predetermined standard, the current coding rate is increased.
在本发明实施例中,如果周期性依据直播数据的传输状况确定编码码率,那么,直播数据发送的过程中,主播设备所使用的编码码率将会动态的变化,并与上行直播数据传输的状态进行匹配,既能保证直播数据能够流畅传输,又能获得较高的码率达到较好的直播效果。In the embodiment of the present invention, if the encoding code rate is determined periodically according to the transmission status of the live data, in the process of transmitting the live data, the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission The matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
在实施例中,如果直播数据的传输状况好于第二预定标准,则可以提高当 前编码码率,使编码码率达到发生网络抖动的临界值。In an embodiment, if the transmission status of the live broadcast data is better than the second predetermined standard, the The precoding rate is such that the encoding rate reaches a critical value at which network jitter occurs.
本实施例给出的是以网络抖动的临界值为标准,在这个标准下获得最高的编码码率作为优选方案,也可以采用其他标准来确定优选的可用码率,对于采用何种标准来确定优选的可用码率,以上举例仅是一个优选的方案,不应理解为对本发明实施例的唯一性限定。This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate. The preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,本实施例中可以采用丢包率来表示直播数据传输质量。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission. The packet loss rate can be used to indicate the quality of live data transmission.
当采用丢包率表示直播数据传输质量时,丢包率可以是服务器主动发送的,并由主播设备被动接收;或者丢包率也可以是由主播设备主动进行统计,对此本发明实施例不予限定。When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
在步骤203中,依据上述编码码率对待传输直播数据进行编码并发送给服务器。In step 203, the live broadcast data to be transmitted is encoded according to the above encoded code rate and sent to the server.
本发明实施例,获取所传输的直播数据的传输状况,并根据所获取的所传输的直播数据传输状况确定编码码率,再使用所确定的编码码率对待传输直播数据进行编码,这样可以保证直播数据流的编码码率能够随着数据传输状态的变化而变化,从而保证直播数据传输的流畅,并能够以较高的码率实现直播,获得较好的直播效果。In the embodiment of the present invention, the transmission status of the transmitted live data is obtained, and the encoding code rate is determined according to the obtained transmitted live data transmission status, and then the live data is to be encoded by using the determined encoding code rate, thereby ensuring The encoding code rate of the live data stream can be changed according to the change of the data transmission state, thereby ensuring the smooth flow of the live data transmission, and realizing the live broadcast at a higher code rate, and obtaining a better live broadcast effect.
以下实施例将以视频直播对本发明实施例的方案进行更详细的说明。本实施例提供了基于主播设备的上行带宽调整编码码率的方案。在本方案中,可以依据主播设备上行带宽的变化自动调整视频编码码率。当视频服务器发现主播设备上传的视频出现丢包时,将该丢包信息反馈给主播设备的客户端,主播设备的客户端根据丢包的情况来计算当前上行网络带宽,然后通知客户端编码模块按照与当前上行网络带宽匹配的编码码率进行编码,当一段时间没有出现丢包后,再慢慢切换回高编码码率的视频流。The following embodiments will explain the solution of the embodiment of the present invention in more detail by video live broadcast. This embodiment provides a scheme for adjusting an encoding code rate based on an uplink bandwidth of an anchor device. In this solution, the video coding rate can be automatically adjusted according to the change of the uplink bandwidth of the anchor device. When the video server finds that the video uploaded by the anchor device has lost packets, the packet loss information is fed back to the client of the anchor device, and the client of the anchor device calculates the current uplink network bandwidth according to the packet loss condition, and then notifies the client encoding module. The encoding is performed according to the encoding code rate matched with the current uplink network bandwidth. After no packet loss occurs for a period of time, the video stream of the high encoding rate is slowly switched back.
由于本发明实施例所称的直播是指广义上的各种实时性的数据传输,传输的数据可以是音频数据、视频流等。实时性的数据传输可用是互联网协议电话(Voice over Internet Protocol,VOIP),视频等各种应用环境。本实施例以视频传输作为举例不应理解为对本发明实施例所称的直播数据的唯一性限定。如 图3所示,本实施例所提供的一种直播控制方法包括步骤301至步骤306。Since the live broadcast referred to in the embodiment of the present invention refers to various real-time data transmissions in a broad sense, the transmitted data may be audio data, video streams, and the like. Real-time data transmission can be used in various application environments such as Voice over Internet Protocol (VOIP) and video. The video transmission as an example in this embodiment should not be construed as a limitation on the uniqueness of the live data referred to in the embodiment of the present invention. Such as As shown in FIG. 3, a live broadcast control method provided in this embodiment includes steps 301 to 306.
在步骤301中,主播设备采集直播数据,对直播数据进行编码并发送给视频服务器,视频服务器转发直播数据给用户设备。In step 301, the anchor device collects live data, encodes the live data, and sends the data to the video server, and the video server forwards the live data to the user equipment.
在步骤302中,视频服务器发现主播设备上传直播数据出现丢包时,对丢包数据进行分析得到丢包率,并将丢包率发送给主播设备的客户端。In step 302, when the video server finds that the primary broadcast device uploads the live data and loses the packet, the video packet is analyzed to obtain the packet loss rate, and the packet loss rate is sent to the client of the anchor device.
在步骤303中,主播设备的客户端对视频服务器上报的丢包数据进行计算分析,确定当前上行可用的带宽。In step 303, the client of the anchor device performs calculation and analysis on the packet loss data reported by the video server to determine the bandwidth available for the current uplink.
在步骤304中,主播设备的客户端的编码模块根据所确定的上行可用带宽调整视频编码码率,使调整后的视频编码的码率与到步骤303所计算到的可用带宽相匹配。In step 304, the encoding module of the client of the anchor device adjusts the video encoding rate according to the determined uplink available bandwidth, so that the adjusted video encoding rate matches the available bandwidth calculated in step 303.
在步骤305中,在调整视频编码码率后,若确定数据传输效果较好,例如:主播设备的客户端一段时间后没有收到视频服务器反馈有丢包数据或者丢包率低于预定值,执行步骤306。In step 305, after adjusting the video coding rate, if the data transmission effect is determined to be good, for example, the client of the anchor device does not receive the packet loss data or the packet loss rate is lower than the predetermined value after receiving the video server for a period of time. Go to step 306.
在步骤306中,主播设备的客户端的编码模块调高视频编码码率。In step 306, the encoding module of the client of the anchor device increases the video encoding bit rate.
上述步骤305和306将会重复执行,例如可以周期性重复执行,直到将视频编码码率调整到网络抖动的临界值。The above steps 305 and 306 will be repeated, for example, may be repeated periodically until the video coding rate is adjusted to the threshold of network jitter.
本发明实施例基于主播设备的上行带宽调整编码码率具有如下效果:1,抗网络抖动,即使网络状况很差的状况下,仍然能让用户体验到流畅的视频。2,动态调整码率,保证在网络质量较好的状况下,能让用户体验到高质量的视频。The embodiment of the present invention adjusts the encoding code rate based on the uplink bandwidth of the anchor device, and has the following effects: 1. Anti-network jitter, even under the condition that the network condition is poor, the user can still experience smooth video. 2, dynamically adjust the code rate to ensure that users can experience high-quality video under the condition of good network quality.
本发明实施例还提供了一种主播设备,如图4所示,包括:An embodiment of the present invention further provides an anchor device, as shown in FIG. 4, including:
传输状况获取单元401,用于获取当前传输的直播数据的传输状况;The transmission status obtaining unit 401 is configured to acquire a transmission status of the currently transmitted live data.
码率确定单元402,用于依据传输状况获取单元401获取的当前传输的直播数据的传输状况确定编码码率;以及The code rate determining unit 402 is configured to determine, according to the transmission status of the currently transmitted live data acquired by the transmission status acquiring unit 401, an encoding code rate;
编码单元403,用于依据码率确定单元402的编码码率对待传输直播数据进行编码。The encoding unit 403 is configured to encode the live broadcast data to be transmitted according to the code rate of the code rate determining unit 402.
在本发明实施例中,码率确定单元402可周期性依据当前传输的直播数据的传输状况确定编码码率;编码单元403可使用默认码率或者前次使用的码率对当前传输的直播数据进行编码。 In the embodiment of the present invention, the code rate determining unit 402 may periodically determine the encoding code rate according to the transmission status of the currently transmitted live data; the encoding unit 403 may use the default code rate or the previously used code rate for the currently transmitted live data. Encode.
本发明实施例还提供了另一种主播设备,如图5所示,与图4所示主播设备相比较,本实施例中所提供的主播设备还包括采集单元404和发送单元405。其中,The embodiment of the present invention further provides another anchor device. As shown in FIG. 5, the anchor device provided in this embodiment further includes an acquisition unit 404 and a sending unit 405. among them,
采集单元404,用于采集当前传输的直播数据和待传输的直播数据;发送单元405,用于将经过编码单元302编码的直播数据发送给服务器;The collecting unit 404 is configured to collect the currently transmitted live data and the live data to be transmitted; the sending unit 405 is configured to send the live data encoded by the encoding unit 302 to the server;
发送单元405,用于将上述编码单元302编码得到的直播数据发送给服务器。The sending unit 405 is configured to send the live broadcast data encoded by the encoding unit 302 to the server.
本发明实施例,将直播数据编码发送给服务器过程中,实时获取直播数据的传输状况,并根据所获取的直播数据传输状况确定编码码率,再使用所确定的编码码率对直播数据进行编码,这样可以保证直播数据的编码码率能够随着数据传输状态的变化而变化,从而保证数据传输的流畅,并能够以较高的码率实现直播,获得较好的直播效果。In the embodiment of the present invention, the live data is encoded and sent to the server, and the transmission status of the live data is obtained in real time, and the encoding code rate is determined according to the obtained live data transmission status, and the live data is encoded by using the determined encoding rate. In this way, the encoding code rate of the live data can be changed according to the change of the data transmission state, thereby ensuring smooth data transmission, and realizing live broadcast at a higher code rate, and obtaining a better live broadcast effect.
本实施例中,主播设备将编码后的直播数据发送给服务器后,可以实时获取该直播数据的传输状况。主播设备向服务器发送直播数据属于上行数据传输,由于主播设备的上行数据传输状况是可能变化的,因此可能存在编码码率与上行数据传输状况不匹配的情况。例如,可能编码码率太高,也可能太低,针对这种情况本发明实施例给出了如下解决方案,上述码率确定单元402,可以用于以预定时间为周期依据直播数据的传输状况确定编码码率。In this embodiment, after the anchor device sends the encoded live data to the server, the transmission status of the live data can be obtained in real time. The broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low. For this case, the following solutions are provided in the embodiment of the present invention. The code rate determining unit 402 may be configured to perform the transmission status of the live data according to a predetermined time period. Determine the code rate.
在本发明实施例中,周期时长可以预先配置到设备的执行逻辑中。本领域技术人员可以依据具体的需要和网络状况进行自由设定周期时长,该周期时长设置得越短可以确定更为准确的编码码率与当前网络状态所适配,该周期时长设置得越长则会占用越少的资源用于进行编码码率的确定,本领域技术人员可以依据需要进行平衡性设定,因此本发明实施例可以不予限定。In the embodiment of the present invention, the period of time can be pre-configured into the execution logic of the device. A person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
在本发明实施例中,在主播设备首次开机的时候采用何种码率进行编码本发明实施例可以不予限制,这是由于本发明实施例采用可变码率,而不是固定码率对直播数据进行编码。例如,编码单元403可采用默认编码码率或者前次使用的编码码率对直播数据进行编码,并将编码之后的直播数据发送给服务器。In the embodiment of the present invention, the code rate is used for encoding when the anchor device is powered on for the first time. The embodiment of the present invention may not be limited, because the embodiment of the present invention uses a variable bit rate instead of a fixed bit rate. The data is encoded. For example, the encoding unit 403 may encode the live broadcast data by using a default encoding bit rate or a previously used encoding code rate, and transmit the encoded live data to the server.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的 任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,可以由传输状态直接确定编码码率,也可以依据传输状态获得其它中间量并依据中间量来确定编码码率,例如,码率确定单元402可以依据当前传输的直播数据的传输状况确定可用带宽,并依据可用带宽确定编码码率。The transmission state in the embodiment of the present invention may be indicating the quality of the current live broadcast data transmission. Any technical indicators, those skilled in the art can understand that there are many technical indicators indicating the quality of the current live data transmission. In the embodiment of the present invention, the coding rate can be directly determined from the transmission state, or can be obtained according to the transmission state. The other intermediate quantity determines the encoding code rate according to the intermediate quantity. For example, the code rate determining unit 402 can determine the available bandwidth according to the transmission status of the currently transmitted live data, and determine the encoding code rate according to the available bandwidth.
在本实施例中,采用的是由传输状态确定可用带宽作为中间量的方式,实际中采用其他网络参数作为中间量也是可以实现的,因此先确定可用带宽再依据可用带宽来确定编码码率的实现方案不应理解为对本发明实施例的唯一性限定。In this embodiment, the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted. Actually, other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
在本发明实施例中,可以采用如下方式确定编码码率:例如,若直播数据的传输状况差于第一预定标准,则码率确定单元402可以降低当前编码码率,例如将当前编码码率调整至于可用带宽相匹配;若直播数据的传输状况好于第二预定标准,则码率确定单元402可以提高当前编码码率。In the embodiment of the present invention, the encoding code rate may be determined in the following manner: for example, if the transmission status of the live broadcast data is worse than the first predetermined criterion, the code rate determining unit 402 may lower the current encoding rate, for example, the current encoding rate. The adjustment is such that the available bandwidth matches; if the transmission status of the live data is better than the second predetermined criterion, the code rate determining unit 402 can increase the current encoding rate.
在本发明实施例中,如果周期性依据直播数据的传输状况确定编码码率,那么,直播数据发送的过程中,主播设备所使用的编码码率将会动态的变化,并与上行直播数据传输的状态进行匹配,既能保证直播数据能够流畅传输,又能获得较高的码率达到较好的直播效果。In the embodiment of the present invention, if the encoding code rate is determined periodically according to the transmission status of the live data, in the process of transmitting the live data, the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission The matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
在本实施例中,如果直播数据的传输状况好于第二预定标准,则码率确定单元402可以提高当前编码码率,是编码码率达到发生网络抖动的临界值。In this embodiment, if the transmission status of the live broadcast data is better than the second predetermined criterion, the code rate determining unit 402 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
本实施例给出的是以网络抖动的临界值为标准,在这个标准下获得最高的编码码率作为优选方案,也可以采用其他标准来确定优选的可用码率,对于采用何种标准来确定优选的可用码率,以上举例仅是一个优选的方案,不应理解为对本发明实施例的唯一性限定。This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate. The preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,传输状况获取单元401可以获取上述直播数据在传输过程中的丢包率。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention In an embodiment, the transmission status obtaining unit 401 can obtain the packet loss rate of the live data in the transmission process.
当采用丢包率表示直播数据传输质量时,丢包率可以是服务器主动发送的,并由主播设备被动接收;或者丢包率也可以是由主播设备主动进行统计, 对此本发明实施例不予限定。When the packet loss rate is used to indicate the quality of the live data transmission, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. The embodiment of the invention is not limited thereto.
本发明实施例还提供了另一种主播设备,如图6所示,包括:接收器601、发射器602、处理器603以及存储器604。Another embodiment of the present invention further provides an anchor device, as shown in FIG. 6, comprising: a receiver 601, a transmitter 602, a processor 603, and a memory 604.
其中,上述处理器603,用于采集直播数据并编码发送给服务器;获取直播数据的传输状况,并依据直播数据的传输状况确定编码码率;依据上述编码码率对直播数据进行编码。The processor 603 is configured to collect live data and encode and send the data to the server; obtain a transmission status of the live data, and determine a coding rate according to the transmission status of the live data; and encode the live data according to the coding rate.
本发明实施例,获取所传输的直播数据的传输状况,并根据所获取的直播数据传输状况确定编码码率,再使用所确定的编码码率对待传输直播数据进行编码,这样可以保证直播数据的编码码率能够随着数据传输状况的变化而变化,从而保证数据传输的流畅,并能够以较高的码率实现直播,获得较好的直播效果。In the embodiment of the present invention, the transmission status of the transmitted live data is obtained, and the encoding code rate is determined according to the obtained live data transmission status, and then the live data is to be encoded by using the determined encoding code rate, so that the live data can be guaranteed. The code rate can be changed as the data transmission status changes, so that the data transmission is smooth, and the live broadcast can be realized at a higher code rate, and a better live broadcast effect is obtained.
本实施例中,主播设备将编码后的直播数据发送给服务器的过程中,可以实时获取该直播数据的传输状况。主播设备向服务器发送直播数据属于上行数据传输,由于主播设备的上行数据传输状况是可能变化的,因此可能存在编码码率与上行数据传输状况不匹配的情况。例如,可能编码码率太高,也可能太低,针对这种情况本发明实施例给出了如下解决方案,上述处理器603,可以用于以预定时间为周期依据直播数据的传输状况确定编码码率。In this embodiment, when the anchor device sends the encoded live data to the server, the transmission status of the live data can be obtained in real time. The broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low. For the case of the present invention, the following solution is provided. The processor 603 may be configured to determine the code according to the transmission status of the live data in a predetermined time period. Code rate.
在本发明实施例中,周期时长可以预先配置到设备的执行逻辑中。本领域技术人员可以依据具体的需要和网络状况进行自由设定周期时长,该周期时长设置得越短可以确定更为准确的编码码率与当前网络状态所适配,该周期时长设置得越长则会占用越少的资源用于进行编码码率的确定,本领域技术人员可以依据需要进行平衡性设定,因此本发明实施例可以不予限定。In the embodiment of the present invention, the period of time can be pre-configured into the execution logic of the device. A person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
在本发明实施例中,需要说明的是,在主播设备首次开机的时候采用何种码率进行编码本发明实施例可以不予限制,这是由于本发明实施例采用可变码率,而不是固定码率对直播数据进行编码。例如,处理器603可以采用默认编码码率或者前次使用的编码码率对直播数据进行编码,并将编码之后的直播数据发送给服务器。In the embodiment of the present invention, it should be noted that, in the embodiment of the present invention, the variable rate is used instead of the code rate. The live bit data is encoded at a fixed bit rate. For example, the processor 603 may encode the live broadcast data by using a default encoding rate or a previously used encoding rate, and send the encoded live data to the server.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好 坏的技术指标有很多,在本发明实施例中,可以由传输状态直接确定编码码率,也可以依据传输状态获得其它中间量并依据中间量来确定编码码率,例如,处理器603可以依据直播数据的传输状况确定可用带宽,并依据可用带宽确定编码码率。The transmission status in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art can understand that the quality of the current live data transmission is good. There are many bad technical indicators. In the embodiment of the present invention, the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding rate may be determined according to the intermediate quantity. For example, the processor 603 may The transmission status of the live data determines the available bandwidth and determines the code rate based on the available bandwidth.
在本实施例中,采用的是由传输状态确定可用带宽作为中间量的方式,实际中采用其他网络参数作为中间量也是可以实现的,因此先确定可用带宽再依据可用带宽来确定编码码率的实现方案不应理解为对本发明实施例的唯一性限定。In this embodiment, the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted. Actually, other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as limiting the uniqueness of the embodiments of the invention.
在本发明实施例中,可以采用如下方式确定编码码率:例如,若直播数据的传输状况差于第一预定标准,则处理器603可以降低当前编码码率;若直播数据的传输状况好于第二预定标准,则处理器603可以提高当前编码码率。In the embodiment of the present invention, the encoding code rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the processor 603 may reduce the current encoding rate; if the transmission status of the live data is better than The second predetermined criterion, the processor 603 can increase the current encoding rate.
在本发明实施例中,如果周期性依据直播数据的传输状况确定编码码率,那么,直播数据发送的过程中,主播设备所使用的编码码率将会动态的变化,并与上行直播数据传输的状态进行匹配,既能保证直播数据能够流畅传输,又能获得较高的码率达到较好的直播效果。In the embodiment of the present invention, if the encoding code rate is determined periodically according to the transmission status of the live data, in the process of transmitting the live data, the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission The matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
在本实施例中,如果直播数据的传输状况好于第二预定标准,则处理器603可以提高当前编码码率,是编码码率达到发生网络抖动的临界值。In this embodiment, if the transmission status of the live broadcast data is better than the second predetermined criterion, the processor 603 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
本实施例给出的是以网络抖动的临界值为标准,在这个标准下获得最高的编码码率作为优选方案,也可以采用其他标准来确定优选的可用码率,对于采用何种标准来确定优选的可用码率,以上举例仅是一个优选的方案,不应理解为对本发明实施例的唯一性限定。This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate. The preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,处理器603可以获取上述直播数据在传输过程中的丢包率。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention In an embodiment, the processor 603 may obtain a packet loss rate of the live broadcast data during the transmission process.
当采用丢包率表示直播数据传输质量时,丢包率可以是服务器主动发送的,并由主播设备被动接收;或者丢包率也可以是由主播设备主动进行统计,对此本发明实施例不予限定。When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
本发明实施例还提供了一种终端,作为主播设备使用,如图7所示,为了 便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,PDA)、销售终端(Point of Sales,POS)、车载电脑等任意终端设备。本实施例以手机为例进行说明。The embodiment of the present invention further provides a terminal, which is used as an anchor device, as shown in FIG. For ease of description, only parts related to the embodiments of the present invention are shown. For details that are not disclosed, refer to the method part of the embodiment of the present invention. The terminal can be any terminal device including a mobile phone, a tablet computer, a personal digital assistant (PDA), a point of sales (POS), a car computer, and the like. This embodiment uses a mobile phone as an example for description.
图7示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图7,手机包括:射频(Radio Frequency,RF)电路710、存储器720、输入单元730、显示单元740、传感器750、音频电路760、无线保真(wireless fidelity,WiFi)模块770、处理器780、以及电源790等部件。本领域技术人员可以理解,图7中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。FIG. 7 is a block diagram showing a partial structure of a mobile phone related to a terminal provided by an embodiment of the present invention. Referring to FIG. 7, the mobile phone includes: a radio frequency (RF) circuit 710, a memory 720, an input unit 730, a display unit 740, a sensor 750, an audio circuit 760, a wireless fidelity (WiFi) module 770, and a processor 780. And power supply 790 and other components. It will be understood by those skilled in the art that the structure of the handset shown in FIG. 7 does not constitute a limitation to the handset, and may include more or less components than those illustrated, or some components may be combined, or different components may be arranged.
下面结合图7对手机的各个构成部件进行具体的介绍。The components of the mobile phone will be specifically described below with reference to FIG.
RF电路710可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器780处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路710还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。The RF circuit 710 can be used for transmitting and receiving information or during a call, and receiving and transmitting the signal. Specifically, after receiving the downlink information of the base station, the processor 780 processes the data. In addition, the uplink data is designed to be sent to the base station. Generally, RF circuits include, but are not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like. In addition, RF circuitry 710 can also communicate with the network and other devices via wireless communication. The above wireless communication may use any communication standard or protocol, including but not limited to Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (Code Division). Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), E-mail, Short Messaging Service (SMS), and the like.
存储器720可用于存储软件程序以及模块,处理器780通过运行存储在存储器720的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器 件。The memory 720 can be used to store software programs and modules, and the processor 780 executes various functional applications and data processing of the mobile phone by running software programs and modules stored in the memory 720. The memory 720 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored according to Data created by the use of the mobile phone (such as audio data, phone book, etc.). Moreover, memory 720 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state memory. Pieces.
输入单元730可用于接收输入的数字或字符信息,以及产生与手机700的用户设置以及功能控制有关的键信号输入。具体地,输入单元730可包括触控面板731以及其他输入设备732。触控面板731,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板731上或在触控面板731附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板731可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器780,并能接收处理器780发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板731。除了触控面板731,输入单元730还可以包括其他输入设备732。具体地,其他输入设备732可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。The input unit 730 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function controls of the handset 700. Specifically, the input unit 730 may include a touch panel 731 and other input devices 732. The touch panel 731, also referred to as a touch screen, can collect touch operations on or near the user (such as the user using a finger, a stylus, or the like on the touch panel 731 or near the touch panel 731. Operation), and drive the corresponding connecting device according to a preset program. Optionally, the touch panel 731 can include two parts: a touch detection device and a touch controller. Wherein, the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information. The processor 780 is provided and can receive commands from the processor 780 and execute them. In addition, the touch panel 731 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 731, the input unit 730 may also include other input devices 732. In particular, other input devices 732 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
显示单元740可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元740可包括显示面板741,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板741。进一步的,触控面板731可覆盖显示面板741,当触控面板731检测到在其上或附近的触摸操作后,传送给处理器780以确定触摸事件的类型,随后处理器780根据触摸事件的类型在显示面板741上提供相应的视觉输出。虽然在图7中,触控面板731与显示面板741是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板731与显示面板741集成而实现手机的输入和输出功能。The display unit 740 can be used to display information input by the user or information provided to the user as well as various menus of the mobile phone. The display unit 740 can include a display panel 741. Alternatively, the display panel 741 can be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like. Further, the touch panel 731 can cover the display panel 741. When the touch panel 731 detects a touch operation on or near the touch panel 731, it transmits to the processor 780 to determine the type of the touch event, and then the processor 780 according to the touch event. The type provides a corresponding visual output on display panel 741. Although the touch panel 731 and the display panel 741 are used as two independent components to implement the input and input functions of the mobile phone in FIG. 7, in some embodiments, the touch panel 731 can be integrated with the display panel 741. Realize the input and output functions of the phone.
手机700还可包括至少一种传感器750,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板741的亮度,接近传感器可在手机移动到耳边时,关闭显示面板741和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测 出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。The handset 700 can also include at least one type of sensor 750, such as a light sensor, motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 741 according to the brightness of the ambient light, and the proximity sensor may close the display panel 741 and/or when the mobile phone moves to the ear. Or backlight. As a type of motion sensor, the accelerometer sensor can detect the acceleration of each direction (usually three axes) and can detect when stationary. The size and direction of gravity can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tap), etc.; as for the mobile phone can also be configured Other sensors such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors are not described here.
音频电路760、扬声器761,传声器762可提供用户与手机之间的音频接口。音频电路760可将接收到的音频数据转换后的电信号,传输到扬声器761,由扬声器761转换为声音信号输出;另一方面,传声器762将收集的声音信号转换为电信号,由音频电路760接收后转换为音频数据,再将音频数据输出处理器780处理后,经RF电路710以发送给比如另一手机,或者将音频数据输出至存储器720以便进一步处理。An audio circuit 760, a speaker 761, and a microphone 762 can provide an audio interface between the user and the handset. The audio circuit 760 can transmit the converted electrical data of the received audio data to the speaker 761 for conversion to the sound signal output by the speaker 761; on the other hand, the microphone 762 converts the collected sound signal into an electrical signal by the audio circuit 760. After receiving, it is converted into audio data, and then processed by the audio data output processor 780, sent to, for example, another mobile phone via the RF circuit 710, or outputted to the memory 720 for further processing.
WiFi属于短距离无线传输技术,手机通过WiFi模块770可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图7示出了WiFi模块770,但是可以理解的是,其并不属于手机700的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。WiFi is a short-range wireless transmission technology, and the mobile phone can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 770, which provides users with wireless broadband Internet access. Although FIG. 7 shows the WiFi module 770, it can be understood that it does not belong to the essential configuration of the mobile phone 700, and may be omitted as needed within the scope of not changing the essence of the invention.
处理器780是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器720内的软件程序和/或模块,以及调用存储在存储器720内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器780可包括一个或多个处理单元;优选的,处理器780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器780中。The processor 780 is the control center of the handset, which connects various portions of the entire handset using various interfaces and lines, by executing or executing software programs and/or modules stored in the memory 720, and invoking data stored in the memory 720, The phone's various functions and processing data, so that the overall monitoring of the phone. Optionally, the processor 780 may include one or more processing units; preferably, the processor 780 may integrate an application processor and a modem processor, where the application processor mainly processes an operating system, a user interface, an application, and the like. The modem processor primarily handles wireless communications. It will be appreciated that the above described modem processor may also not be integrated into the processor 780.
手机700还包括给各个部件供电的电源790(比如电池),优选的,电源可以通过电源管理系统与处理器780逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。The handset 700 also includes a power source 790 (such as a battery) that supplies power to the various components. Preferably, the power source can be logically coupled to the processor 780 via a power management system to manage functions such as charging, discharging, and power management through the power management system.
尽管未示出,手机700还可以包括摄像头、蓝牙模块等,在此不再赘述。Although not shown, the mobile phone 700 may further include a camera, a Bluetooth module, and the like, and details are not described herein.
在本发明实施例中,该终端所包括的处理器780还可以用于:In the embodiment of the present invention, the processor 780 included in the terminal is further configured to:
获取当前传输的直播数据的传输状况,并依据上述当前传输的直播数据的传输状况确定编码码率;依据上述编码码率对待传输直播数据进行编码。Obtaining a transmission status of the currently transmitted live data, and determining an encoding code rate according to the transmission status of the currently transmitted live data; and encoding the live broadcast data according to the foregoing encoding code rate.
本发明实施例,将直播数据编码发送给服务器过程中,实时获取直播数据 的传输状况,并根据所获取的直播数据传输状况确定编码码率,再使用所确定的编码码率对直播数据进行编码,这样可以保证直播数据的编码码率能够随着数据传输状态的变化而变化,从而保证数据传输的流畅,并能够以较高的码率实现直播,获得较好的直播效果。In the embodiment of the present invention, the live data is encoded and sent to the server, and the live data is obtained in real time. The transmission status, and determining the coding rate according to the obtained live data transmission status, and then encoding the live data using the determined coding rate, so as to ensure that the coding rate of the live data can be changed according to the data transmission status. Changes, thus ensuring smooth data transmission, and can achieve live broadcast at a higher code rate, and obtain better live broadcast effects.
本发明实施例中,主播设备将编码后的直播数据发送给服务器的过程中,可以实时获取该直播数据的传输状况。主播设备向服务器发送直播数据属于上行数据传输,由于主播设备的上行数据传输状况是可能变化的,因此可能存在编码码率与上行数据传输状况不匹配的情况。例如,可能编码码率太高,也可能太低,针对这种情况本发明实施例给出了如下解决方案,上述处理器780,可以用于以预定时间为周期依据直播数据的传输状况确定编码码率。In the embodiment of the present invention, when the anchor device sends the encoded live data to the server, the transmission status of the live data can be obtained in real time. The broadcast data sent by the anchor device to the server belongs to the uplink data transmission. Since the uplink data transmission status of the anchor device may change, there may be a case where the encoding code rate does not match the uplink data transmission status. For example, the code rate may be too high or may be too low. For the case of the present invention, the following solution is provided. The processor 780 may be configured to determine the code according to the transmission status of the live data in a predetermined time period. Code rate.
在本发明实施例中,周期时长可以预先配置到设备的执行逻辑中。本领域技术人员可以依据具体的需要和网络状况进行自由设定周期时长,该周期时长设置得越短可以确定更为准确的编码码率与当前网络状态所适配,该周期时长设置得越长则会占用越少的资源用于进行编码码率的确定,本领域技术人员可以依据需要进行平衡性设定,因此本发明实施例可以不予限定。In the embodiment of the present invention, the period of time can be pre-configured into the execution logic of the device. A person skilled in the art can freely set the cycle duration according to specific needs and network conditions. The shorter the cycle duration is, the more accurate the code rate can be determined to be adapted to the current network state, and the longer the cycle duration is set. The lesser resources are used to determine the coding rate, and those skilled in the art can perform the balance setting as needed. Therefore, the embodiment of the present invention may not be limited.
在本发明实施例中,需要说明的是,在主播终端首次开机的时候采用何种码率进行编码本发明实施例可以不予限制,这是由于本发明实施例采用可变码率,而不是固定码率对直播数据进行编码。例如,处理器780可以采用默认编码码率或者前次使用的编码码率对直播数据进行编码,并将编码之后的直播数据发送给服务器。In the embodiment of the present invention, it should be noted that, in the embodiment of the present invention, the variable rate is used instead of the code rate. The live bit data is encoded at a fixed bit rate. For example, the processor 780 may encode the live broadcast data by using a default encoding rate or a previously used encoding rate, and send the encoded live data to the server.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,可以由传输状态直接确定编码码率,也可以依据传输状态获得其它中间量并依据中间量来确定编码码率,例如,处理器580可以依据直播数据的传输状况确定可用带宽,并依据可用带宽确定编码码率。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention In an embodiment, the coding rate may be directly determined by the transmission state, or other intermediate quantities may be obtained according to the transmission state, and the coding rate may be determined according to the intermediate quantity. For example, the processor 580 may determine the available bandwidth according to the transmission status of the live data, and The code rate is determined based on the available bandwidth.
在本实施例中,采用的是由传输状态确定可用带宽作为中间量的方式,实际中采用其他网络参数作为中间量也是可以实现的,因此先确定可用带宽再依据可用带宽来确定编码码率的实现方案不应理解为对本发明实施例的唯一性 限定。In this embodiment, the method of determining the available bandwidth as the intermediate amount by the transmission state is adopted. Actually, other network parameters are used as the intermediate quantity, so that the available bandwidth is determined first, and then the coded rate is determined according to the available bandwidth. Implementations should not be construed as unique to embodiments of the invention limited.
在本发明实施例中,可以采用如下方式确定编码码率:例如,若直播数据的传输状况差于第一预定标准,处理器780可以降低当前编码码率;若直播数据的传输状况好于第二预定标准,则处理器780可以提高当前编码码率。In the embodiment of the present invention, the encoding code rate may be determined in the following manner: for example, if the transmission status of the live data is worse than the first predetermined standard, the processor 780 may reduce the current encoding rate; if the transmission status of the live data is better than the first The second predetermined criterion, the processor 780 can increase the current encoding rate.
在本发明实施例中,如果周期性依据直播数据的传输状况确定编码码率,那么,直播数据发送的过程中,主播设备所使用的编码码率将会动态的变化,并与上行直播数据传输的状态进行匹配,既能保证直播数据能够流畅传输,又能获得较高的码率达到较好的直播效果。In the embodiment of the present invention, if the encoding code rate is determined periodically according to the transmission status of the live data, in the process of transmitting the live data, the encoding code rate used by the anchor device will dynamically change, and the uplink live data transmission The matching of the status can ensure that the live data can be transmitted smoothly, and a higher bit rate can be obtained to achieve a better live broadcast effect.
在本实施例中,如果直播数据的传输状况好于第二预定标准,则处理器780可以提高当前编码码率,是编码码率达到发生网络抖动的临界值。In this embodiment, if the transmission status of the live broadcast data is better than the second predetermined criterion, the processor 780 may increase the current encoding code rate, which is a critical value at which the encoding code rate reaches the network jitter.
本实施例给出的是以网络抖动的临界值为标准,在这个标准下获得最高的编码码率作为优选方案,也可以采用其他标准来确定优选的可用码率,对于采用何种标准来确定优选的可用码率,以上举例仅是一个优选的方案,不应理解为对本发明实施例的唯一性限定。This embodiment provides a threshold value of network jitter, and the highest coding rate is obtained under this standard as a preferred solution. Other standards can also be used to determine the preferred available code rate. The preferred code rate is only a preferred embodiment and should not be construed as limiting the uniqueness of the embodiments of the present invention.
本发明实施例中的传输状态可以是表示当前直播数据传输的质量好坏的任意技术指标,本领域技术人员可以理解的是表示当前直播数据传输的质量好坏的技术指标有很多,在本发明实施例中,处理器780可以获取上述直播数据在传输过程中的丢包率。The transmission state in the embodiment of the present invention may be any technical indicator indicating the quality of the current live data transmission. Those skilled in the art may understand that there are many technical indicators indicating the quality of the current live data transmission, and the present invention In an embodiment, the processor 780 can obtain the packet loss rate of the live broadcast data during the transmission process.
当采用丢包率表示直播数据传输质量时,丢包率可以是服务器主动发送的,并由主播设备被动接收;或者丢包率也可以是由主播设备主动进行统计,对此本发明实施例不予限定。When the packet loss rate is used to indicate the broadcast data transmission quality, the packet loss rate may be sent by the server and received by the anchor device. The packet loss rate may also be actively collected by the anchor device. Limited.
值得注意的是,上述主播设备实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。It should be noted that, in the embodiment of the foregoing anchor device, each unit included is only divided according to functional logic, but is not limited to the above division, as long as the corresponding function can be implemented; The names are also for convenience of distinction from each other and are not intended to limit the scope of protection of the present invention.
另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。In addition, those skilled in the art can understand that all or part of the steps in implementing the foregoing method embodiments may be performed by a program to instruct related hardware, and the corresponding program may be stored in a computer readable storage medium. The storage medium may be a read only memory, a magnetic disk or an optical disk or the like.
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。 The above is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited Therefore, any changes or substitutions that may be easily conceived within the scope of the present invention are intended to be included within the scope of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

Claims (15)

  1. 一种直播控制方法,其特征在于,包括:A live broadcast control method, comprising:
    获取当前传输的直播数据的传输状况,并依据所述当前传输的直播数据的传输状况确定编码码率;以及Obtaining a transmission status of the currently transmitted live data, and determining a coding rate according to a transmission status of the currently transmitted live data;
    依据所述编码码率对待传输直播数据进行编码。The live broadcast data to be transmitted is encoded according to the code rate.
  2. 根据权利要求1所述方法,其特征在于,The method of claim 1 wherein
    所述依据所述当前直播数据的传输状况确定编码码率包括:The determining the code rate according to the transmission status of the current live data includes:
    周期性依据所述当前直播数据的传输状态确定所述编码码率。The encoding code rate is determined periodically according to the transmission status of the current live broadcast data.
  3. 根据权利要求1所述方法,其特征在于,在获取当前直播数据的传输状况,并依据所述当前直播数据的传输状况确定编码码率之前,还包括:The method according to claim 1, wherein before obtaining the transmission status of the current live data and determining the code rate according to the transmission status of the current live data, the method further includes:
    采集所述当前直播数据,使用默认编码码率或者前次使用的编码码率对所述当前直播数据进行编码。The current live data is collected, and the current live data is encoded using a default encoding rate or a previously used encoding rate.
  4. 根据权利要求1至3任意一项所述方法,其特征在于,所述依据所述当前直播数据的传输状况确定编码码率包括:The method according to any one of claims 1 to 3, wherein the determining the code rate according to the transmission status of the current live broadcast data comprises:
    依据所述当前直播数据的传输状况确定可用带宽,依据所述可用带宽确定所述编码码率。Determining an available bandwidth according to the transmission status of the current live broadcast data, and determining the encoded code rate according to the available bandwidth.
  5. 根据权利要求4所述的方法,其特征在于,所述依据所述当前传输的直播数据的传输状况确定编码码率包括:The method according to claim 4, wherein the determining the code rate according to the transmission status of the currently transmitted live data comprises:
    若所述当前传输的直播数据的传输状况低于第一预定标准,将编码码率调整至与所述可用带宽相匹配。If the transmission status of the currently transmitted live data is lower than the first predetermined criterion, the code rate is adjusted to match the available bandwidth.
  6. 根据权利要求4所述方法,其特征在于,所述依据所述当前传输的直播数据的传输状况确定编码码率包括:The method according to claim 4, wherein the determining the code rate according to the transmission status of the currently transmitted live data comprises:
    若所述当前传输的直播数据的传输状况高于第二预定标准,将编码码率调整至发生网络抖动的临界值。If the transmission status of the currently transmitted live data is higher than the second predetermined criterion, the code rate is adjusted to a threshold value at which network jitter occurs.
  7. 根据权利要求1至3任意一项所述方法,所述获取所述当前传输的直播数据的传输状况包括:The method according to any one of claims 1 to 3, wherein the obtaining the transmission status of the currently transmitted live broadcast data comprises:
    获取所述当前传输的直播数据在传输过程中的丢包率。Obtaining a packet loss rate of the currently transmitted live broadcast data during transmission.
  8. 一种主播设备,其特征在于,包括:传输状况获取单元,用于获取当前传输的直播数据的传输状况; An anchor device, comprising: a transmission status acquiring unit, configured to acquire a transmission status of a currently transmitted live data;
    码率确定单元,用于依据所述传输状况获取单元获取的所述当前传输的直播数据的传输状况确定编码码率;以及a code rate determining unit, configured to determine a coded code rate according to a transmission status of the currently transmitted live broadcast data acquired by the transmission status acquiring unit;
    编码单元,用于依据所述码率确定单元确定的编码码率对待传输直播数据进行编码。And a coding unit, configured to encode the live broadcast data to be transmitted according to the coded rate determined by the code rate determining unit.
  9. 根据权利要求8所述主播设备,其特征在于,The anchor device according to claim 8, wherein
    所述码率确定单元,用于周期性依据所述当前传输的直播数据的传输状况确定编码码率。The code rate determining unit is configured to periodically determine an encoding code rate according to a transmission condition of the currently transmitted live data.
  10. 根据权利要求8所述主播设备,其特征在于,还包括:The anchor device according to claim 8, further comprising:
    采集单元,用于采集当前传输的直播数据和待传输直播数据。The collecting unit is configured to collect the live data currently transmitted and the live data to be transmitted.
  11. 根据权利要求10所述的主播设备,其特征在于,所述编码单元用于使用默认码率或者前次使用的编码码率对所述采集单元采集到的所述当前传输的直播数据进行编码。The anchor device according to claim 10, wherein the encoding unit is configured to encode the currently transmitted live broadcast data collected by the collecting unit by using a default code rate or a previously used encoding code rate.
  12. 根据权利要求8至11任意一项所述主播设备,其特征在于,The anchor device according to any one of claims 8 to 11, characterized in that
    所述码率确定单元用于依据所述当前传输的直播数据的传输状况确定可用带宽,并依据所述可用带宽确定所述编码码率。The code rate determining unit is configured to determine an available bandwidth according to a transmission status of the currently transmitted live data, and determine the code rate according to the available bandwidth.
  13. 根据权利要求12所述主播设备,其特征在于,The anchor device according to claim 12, characterized in that
    所述码率确定单元用于若所述当前传输的直播数据的传输状况低于第一预定标准,将编码码率调整至与所述可用带宽相匹配;The code rate determining unit is configured to adjust the code rate to match the available bandwidth if the currently transmitted live data transmission status is lower than the first predetermined criterion;
    若所述当前传输的直播数据的传输状况高于预定标准,将编码码率调整至发生网络抖动的临界值。If the transmission status of the currently transmitted live data is higher than a predetermined standard, the code rate is adjusted to a threshold value at which network jitter occurs.
  14. 根据权利要求12所述主播设备,其特征在于,The anchor device according to claim 12, characterized in that
    所述传输获取单元用于获取所述当前传输的直播数据在传输过程中的丢包率。The transmission obtaining unit is configured to acquire a packet loss rate of the currently transmitted live broadcast data during transmission.
  15. 一种非瞬时性的计算机可读存储介质,其上存储有计算机可执行指令,当计算机中运行这些可执行指令时,执行如下步骤:A non-transitory computer readable storage medium having computer executable instructions stored thereon. When the executable instructions are executed in a computer, the following steps are performed:
    获取当前传输的直播数据的传输状况,并依据所述当前传输的直播数据的传输状况确定编码码率;以及Obtaining a transmission status of the currently transmitted live data, and determining a coding rate according to a transmission status of the currently transmitted live data;
    依据所述编码码率对待传输直播数据进行编码。 The live broadcast data to be transmitted is encoded according to the code rate.
PCT/CN2014/088884 2013-10-21 2014-10-20 Live broadcast control method and main broadcast device WO2015058656A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310495764.8A CN103533386A (en) 2013-10-21 2013-10-21 Live broadcasting control method and anchor equipment
CN201310495764.8 2013-10-21

Publications (1)

Publication Number Publication Date
WO2015058656A1 true WO2015058656A1 (en) 2015-04-30

Family

ID=49934995

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/088884 WO2015058656A1 (en) 2013-10-21 2014-10-20 Live broadcast control method and main broadcast device

Country Status (2)

Country Link
CN (1) CN103533386A (en)
WO (1) WO2015058656A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2534465A (en) * 2015-01-23 2016-07-27 Dingmedia Ltd System and method for live streaming of content
CN106686398A (en) * 2017-01-16 2017-05-17 北京达佳互联信息技术有限公司 Information interaction method and system and related equipment
CN110113628A (en) * 2019-05-14 2019-08-09 宁夏融媒科技有限公司 A kind of panorama live broadcast system under video-splicing server and moving condition
CN114629797A (en) * 2022-03-11 2022-06-14 阿里巴巴(中国)有限公司 Bandwidth prediction method, model generation method and equipment
CN115225918A (en) * 2021-04-19 2022-10-21 深圳市创成微电子有限公司 Method, system, server, client and storage medium for generating reference information

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103533386A (en) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 Live broadcasting control method and anchor equipment
CN106464981B (en) * 2014-08-11 2019-08-20 华为技术有限公司 Video transmission method and device
CN104363519B (en) * 2014-11-21 2017-12-15 广州华多网络科技有限公司 It is a kind of based on online live method for information display, relevant apparatus and system
CN106559191B (en) * 2015-09-30 2019-11-22 展讯通信(上海)有限公司 A kind of data validity inspection method and system and mobile terminal
CN105516733B (en) * 2015-12-04 2018-11-06 珠海多玩信息技术有限公司 Interactive system and its exchange method
CN105791905A (en) * 2016-02-26 2016-07-20 福建鼎心网络科技有限公司 Code stream self-adaptation system and method for improving real-time viewing fluency
CN105828102A (en) * 2016-03-30 2016-08-03 乐视控股(北京)有限公司 System and method for adjusting volume in real time in live broadcast process
CN105979342B (en) 2016-06-24 2018-01-02 武汉斗鱼网络科技有限公司 A kind of live switching method of webcast website's transverse screen portrait layout and system
CN106303569A (en) * 2016-08-18 2017-01-04 北京奇虎科技有限公司 The transmission method of a kind of live video stream, main broadcaster's end equipment
CN106454412B (en) * 2016-09-09 2019-07-19 腾讯科技(北京)有限公司 The method of adjustment and device of code rate
CN106385627B (en) * 2016-09-14 2019-12-13 腾讯科技(深圳)有限公司 video encoding method and apparatus
CN106454388B (en) * 2016-09-20 2019-08-16 北京百度网讯科技有限公司 A kind of method and apparatus for determining live streaming setting information
CN108259937B (en) * 2016-12-29 2021-02-02 武汉斗鱼网络科技有限公司 Method and system for displaying live network information
CN108271071B (en) * 2016-12-30 2021-03-19 广州方硅信息技术有限公司 Method and device for improving video definition
CN107071567A (en) * 2017-05-18 2017-08-18 深圳算云微豆投资中心(有限合伙) A kind of monitoring method and system of multi-medium data transmitting procedure
CN108079578B (en) * 2017-10-26 2020-12-01 咪咕互动娱乐有限公司 Code rate adjusting method and device based on cloud game and storage medium
CN108737861B (en) * 2018-05-11 2020-06-16 浙江大学 Bandwidth resource optimal configuration method based on decoding priority under congestion environment
CN108769826A (en) * 2018-06-22 2018-11-06 广州酷狗计算机科技有限公司 Live media stream acquisition methods, device, terminal and storage medium
CN108966022A (en) * 2018-06-29 2018-12-07 广州市千钧网络科技有限公司 A kind of live broadcasting method, device and terminal
CN108966008B (en) * 2018-08-02 2020-08-11 腾讯科技(深圳)有限公司 Live video playback method and device
CN109587510B (en) * 2018-12-10 2021-11-02 广州虎牙科技有限公司 Live broadcast method, device, equipment and storage medium
CN110324654A (en) * 2019-08-02 2019-10-11 广州虎牙科技有限公司 Main broadcaster end live video frame processing method, device, equipment, system and medium
CN110784684A (en) * 2019-10-21 2020-02-11 华中科技大学 Data processing method, device and equipment
CN113141523B (en) 2020-01-17 2022-07-22 北京达佳互联信息技术有限公司 Resource transmission method, device, terminal and storage medium
CN111277864B (en) 2020-02-18 2021-09-10 北京达佳互联信息技术有限公司 Encoding method and device of live data, streaming system and electronic equipment
CN112153404B (en) * 2020-09-23 2022-09-09 北京达佳互联信息技术有限公司 Code rate adjusting method, code rate detecting method, code rate adjusting device, code rate detecting device, code rate adjusting equipment and storage medium
CN112887747B (en) * 2021-01-25 2023-09-12 百果园技术(新加坡)有限公司 Live broadcasting room control method and device and electronic equipment
CN115474077A (en) * 2022-09-06 2022-12-13 一汽解放汽车有限公司 Video transmission method and device, vehicle-end controller and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101001362A (en) * 2006-01-11 2007-07-18 腾讯科技(深圳)有限公司 Method and terminal of on-line playing flow media
CN101047845A (en) * 2006-03-29 2007-10-03 腾讯科技(深圳)有限公司 Device and method for regulating vedio communication data code ratio
US20130216990A1 (en) * 2012-02-16 2013-08-22 Powhow Inc. Method and system for interactive live webcam physical activity classes
CN103533386A (en) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 Live broadcasting control method and anchor equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2537760T3 (en) * 2006-09-26 2015-06-11 Liveu Ltd. Remote transmission system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101001362A (en) * 2006-01-11 2007-07-18 腾讯科技(深圳)有限公司 Method and terminal of on-line playing flow media
CN101047845A (en) * 2006-03-29 2007-10-03 腾讯科技(深圳)有限公司 Device and method for regulating vedio communication data code ratio
US20130216990A1 (en) * 2012-02-16 2013-08-22 Powhow Inc. Method and system for interactive live webcam physical activity classes
CN103533386A (en) * 2013-10-21 2014-01-22 腾讯科技(深圳)有限公司 Live broadcasting control method and anchor equipment

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2534465A (en) * 2015-01-23 2016-07-27 Dingmedia Ltd System and method for live streaming of content
GB2534465B (en) * 2015-01-23 2017-05-03 Dingmedia Ltd System and method for live streaming of content
CN106686398A (en) * 2017-01-16 2017-05-17 北京达佳互联信息技术有限公司 Information interaction method and system and related equipment
CN110113628A (en) * 2019-05-14 2019-08-09 宁夏融媒科技有限公司 A kind of panorama live broadcast system under video-splicing server and moving condition
CN115225918A (en) * 2021-04-19 2022-10-21 深圳市创成微电子有限公司 Method, system, server, client and storage medium for generating reference information
CN114629797A (en) * 2022-03-11 2022-06-14 阿里巴巴(中国)有限公司 Bandwidth prediction method, model generation method and equipment
CN114629797B (en) * 2022-03-11 2024-03-08 阿里巴巴(中国)有限公司 Bandwidth prediction method, model generation method and device

Also Published As

Publication number Publication date
CN103533386A (en) 2014-01-22

Similar Documents

Publication Publication Date Title
WO2015058656A1 (en) Live broadcast control method and main broadcast device
US10510356B2 (en) Voice processing method and device
CN108011686B (en) Information coding frame loss recovery method and device
CN108234224B (en) Available bandwidth detection method and device
WO2019137248A1 (en) Video frame interpolation method, storage medium and terminal
WO2018121148A1 (en) Communication resource selection method, hand-held intelligent terminal and access device
WO2021098405A1 (en) Data transmission method and apparatus, terminal, and storage medium
CN106850615B (en) Method, related device and system for controlling coding rate
WO2017215649A1 (en) Sound effect adjustment method and user terminal
CN110175062B (en) Screen refreshing frame rate method of mobile terminal, mobile terminal and storage medium
WO2015058590A1 (en) Control method, device and system for live broadcast of video, and storage medium
WO2016112728A1 (en) Data transmission method, network server, user terminal and system
WO2015027714A1 (en) Video playing method and apparatus, terminal device and server
CN111010576B (en) Data processing method and related equipment
US11012724B2 (en) Video transmission method, apparatus, and system, and computer readable storage medium
CN109729384B (en) Video transcoding selection method and device
WO2018040988A1 (en) Multimedia transmission method, access network device and terminal
CN113572836B (en) Data transmission method, device, server and storage medium
WO2017215661A1 (en) Scenario-based sound effect control method and electronic device
CN108337533B (en) Video compression method and device
CN108881778B (en) Video output method based on wearable device and wearable device
WO2019076250A1 (en) Push message management method and related products
CN112564872B (en) PUSCH (physical uplink shared channel) resource selection method and related equipment
WO2020164521A1 (en) Data packet distribution method and apparatus, and mobile terminal and storage medium
US20180376362A1 (en) Video Optimization Method, User Equipment, And Network Device

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

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 EPO FORM 1205A DATED 07-09-16)

122 Ep: pct application non-entry in european phase

Ref document number: 14855262

Country of ref document: EP

Kind code of ref document: A1