WO2017219896A1 - Procédé et dispositif de transmission de flux vidéo - Google Patents
Procédé et dispositif de transmission de flux vidéo Download PDFInfo
- Publication number
- WO2017219896A1 WO2017219896A1 PCT/CN2017/088101 CN2017088101W WO2017219896A1 WO 2017219896 A1 WO2017219896 A1 WO 2017219896A1 CN 2017088101 W CN2017088101 W CN 2017088101W WO 2017219896 A1 WO2017219896 A1 WO 2017219896A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- video stream
- frame
- decoding
- encoding
- video
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000012545 processing Methods 0.000 claims abstract description 35
- 230000005540 biological transmission Effects 0.000 claims description 43
- 230000008569 process Effects 0.000 claims description 31
- 238000004891 communication Methods 0.000 description 9
- 239000002699 waste material Substances 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000007906 compression Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234309—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 or from Quicktime to Realvideo
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/2662—Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
Definitions
- the present disclosure relates to the technical field of cloud computing and communication applications, for example, to a method and apparatus for transmitting a video stream.
- Cloud computing is a computing model that uses the Internet to access shared resource pools (such as computing facilities, storage devices, applications, etc.) anytime, anywhere, on-demand, and conveniently.
- shared resource pools such as computing facilities, storage devices, applications, etc.
- cloud terminals smart terminals
- cloud terminal services reduce the construction and maintenance costs of users (such as large enterprises and institutions), and the data is more secure.
- the cloud terminal system in the related art includes a cloud server, a cloud terminal, and a media playing module in the cloud terminal.
- the running process is that the server sends video data to the cloud terminal in a common video format (such as rmvb format, wmv format, avi format, mp4 format, and mkv format), and the cloud terminal performs decoding after being decoded by the media playing module.
- a common video format such as rmvb format, wmv format, avi format, mp4 format, and mkv format
- the cloud terminal performs decoding after being decoded by the media playing module.
- the cloud server does not perform special processing on encoding and compression of the transmitted video data
- the receiving terminal of the cloud terminal does not process the video of the special format and the interaction with the cloud server.
- a method and a device for transmitting a video stream can avoid the problem that the video data transmitted by the cloud terminal system in the related art usually contains redundant information irrelevant to the pure video data, causing waste of network transmission resources.
- a method for transmitting a video stream comprising:
- Encoding the original image to obtain a video stream where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries decoding information for decoding the video data frame;
- the decoded information frame is an instant decoding refresh IDR frame
- the video data frame is Forward prediction encodes P frames.
- the encoding process is performed on the original image, and the obtained video stream includes:
- the determining, according to the network state threshold, the image encoding format includes:
- the network state threshold is higher than or equal to a maximum value within the preset value range, determining that the image encoding format is a first color encoding format
- the image encoding format is a second color encoding format, wherein the original image is encoded by using the second color encoding format
- the size of the video stream is smaller than the size of the video stream obtained by encoding the original image by using the first color coding format
- the image code format is a third color coding format, wherein the original image is adopted by using the third color coding format
- the size of the video stream obtained after the encoding process is smaller than the size of the video stream obtained by encoding the original image by using the second color encoding format.
- the method further includes:
- the decoding information frame retransmission instruction sent by the cloud terminal is obtained, the decoding information frame is resent to the cloud terminal, where the decoding information frame retransmission instruction is that the cloud terminal detects that the video stream is The instructions that are sent when the playback progress adjustment operation.
- a video stream transmission device includes:
- An encoding module is configured to perform encoding processing on the original image to obtain a video stream, where the video stream includes: a decoding information frame and a video data frame, and the decoding information frame carries a decoding process on the video data frame.
- Decoding information ;
- the first sending module is configured to send the video stream to the cloud terminal.
- a method for transmitting a video stream comprising:
- Obtaining a video stream sent by the cloud server where the video stream is obtained by encoding, by the cloud server, an original image, and the video stream includes: a decoded information frame and a video data frame, and the decoded information frame Carrying decoding information for decoding the video data frame; and
- the decoding process of the video data frame according to the decoded information frame to obtain a video stream to be displayed includes:
- the decoder that has been initialized is called to perform decoding processing on the received video data frame to obtain the video stream to be displayed.
- the method before the acquiring the video stream sent by the cloud server, the method further includes:
- a network state threshold for indicating a network congestion state of the cloud terminal, so that the cloud server determines an image encoding format according to the network state threshold, and pairs the original according to the determined image encoding format
- the image is encoded to obtain the video stream.
- the method further includes:
- the method further includes:
- a video stream transmission device includes:
- An acquiring module configured to obtain a video stream sent by the cloud server, where the video stream is obtained by encoding, by the cloud server, an original image, and the video stream includes: a decoding information frame and a video data frame, and The decoded information frame carries decoding information for performing decoding processing on the video data frame;
- the decoding module is configured to perform decoding processing on the video data frame according to the decoded information frame to obtain a video stream to be displayed.
- a computer readable storage medium storing computer executable instructions arranged to perform the above method.
- a cloud terminal including:
- At least one processor At least one processor
- the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the method described above.
- a cloud server that includes:
- At least one processor At least one processor
- the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to cause the at least one processor to perform the method described above.
- the original image is encoded to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries a decoding process for decoding the video data frame. Information; and transmitting the video stream to a cloud terminal.
- the video stream in the above solution only carries the decoding information in the decoded information frame, instead of carrying the decoding information in each frame of the video stream, which reduces the requirement on the network bandwidth and avoids the transmission of the cloud terminal system in the related art.
- Each frame in the video data contains redundant information that is independent of the pure video data, causing a problem of wasted network transmission resources.
- FIG. 1 is a flowchart of a method of transmitting a video stream of the first embodiment
- FIG. 2 is a flowchart of a method for transmitting a video stream of the second embodiment
- FIG. 3 is a structural block diagram of a video stream transmission apparatus of a third embodiment
- FIG. 4 is a flowchart of a method for transmitting a video stream of the fourth embodiment
- FIG. 5 is a flowchart of interaction between a cloud terminal and a cloud server according to the fifth embodiment
- FIG. 6 is a structural block diagram of a video stream transmission apparatus of a sixth embodiment
- FIG. 7 is a schematic diagram showing the hardware structure of a cloud server of a seventh embodiment
- FIG. 8 is a schematic diagram showing the hardware structure of the cloud terminal of the eighth embodiment.
- the type of the universal video format sent by the server is generally only one type, and usually, each frame of the video data includes an image size, an adopted coding mode, a macroblock to segment group mapping information, and other decoding.
- Related information such as mjpeg format
- the video data frame will contain a large amount of image size, sequence information and decoding parameter information, etc., which is independent of pure video data containing only video content data. Redundant information. In this case, not only the use of cloud terminals is limited, but also network transmission resources are wasted.
- the server uses a low-compression, low-loss method to send video, and the user experience is good.
- the cloud terminal is used to transmit video data, which may cause symptoms such as stagnation and flower screen.
- the video is transmitted using a high compression ratio.
- the bandwidth requirement can be reduced to a certain extent, but the bandwidth reduction effect is limited, and the user experience is affected.
- This mode is limited by the video compression mode, and the video quality cannot be improved correspondingly even when the network condition is good. It can be seen that the server cannot be based on the cloud.
- the network status of the terminal adjusts the video quality and affects the user experience.
- the following embodiments provide a method and a device for transmitting a video stream, which avoids the problem that each frame of the video data transmitted by the cloud terminal system in the related art includes redundant information irrelevant to the pure video data, resulting in waste of network transmission resources.
- the method for transmitting a video stream in this embodiment may be applied to a cloud server, and the method includes the following steps.
- step 11 the original image is encoded to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries a decoding process on the video data frame. Decode the information.
- the decoded information frame may be an Instantaneous Decoding Refresh (IDR) frame
- the video data frame may be a forward predictive coded frame (P frame).
- the video stream may include an IDR frame and multiple P frame.
- the cloud server of the embodiment may send an IDR frame in the first frame, where the IDR frame may carry image size, encoding mode, mapping information, and other decoding-related decoding information.
- the decoding information can be used for initializing the decoder by the cloud terminal, and all subsequent data frames are sent P frames. Since the P frame can be predicted based on the previous frame, and information such as image size and encoding mode is not required, the P frame is The amount of data is small, only one tenth or one-tenth of the IDR frame, which reduces network traffic and bandwidth requirements under the same video quality and sampling format.
- step 12 the video stream is sent to a cloud terminal.
- the cloud terminal may decode the video data frame according to the decoded information frame to obtain a video stream to be displayed and display a video corresponding to the video stream to be displayed.
- the foregoing step 11 may include:
- the format is a first color coding format
- the first color coding format may be YUV444
- the YUV444 is a full sampling format
- the video quality obtained by the coding format is high and the data amount of the video is Big.
- YUV is three components, "Y” means brightness (Luminance or Luma), which can be gray value; and “U” and “V” respectively represent chromaticity (Chrominance or Chroma), which can describe the color of the image. And saturation, used to specify the color of the pixel.
- determining that the encoding format for encoding the original image is a second color coding format, where the second color coding format is used
- an encoding format for encoding the original image is a third color encoding format, where The size of the video stream obtained by encoding the original image by the three-color coding format is smaller than the size of the video stream obtained by encoding the original image by using the second color coding format.
- the third color coding format may be YUV420, and the video obtained by YUV420 is low in quality and small in data volume.
- the original image is encoded by using different color coding formats, and the quality of the transmitted video may be automatically adjusted according to the network state information of the cloud terminal.
- the original image is encoded to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries the video data.
- the frame performs decoding processing of the decoding process; and transmits the video stream to the cloud terminal.
- the video stream transmitted in this embodiment only carries the decoding information in the decoded information frame, instead of carrying the decoding information in each frame of the video stream, which reduces the requirement on the network bandwidth and avoids the transmission of the cloud terminal system in the related art.
- each frame usually contains redundant information irrelevant to the pure video data, which causes a problem of waste of network transmission resources.
- the method for transmitting a video stream in this embodiment is applicable to a cloud server, and the method includes the following steps.
- step 21 the original image is encoded to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries a decoding process on the video data frame. Decode the information.
- This step can be the same as step 11 above.
- step 22 the video stream is sent to a cloud terminal.
- This step can be the same as step 12 above.
- the decoding information frame retransmission instruction sent by the cloud terminal is acquired, the decoding information frame is resent to the cloud terminal, where the decoding information frame retransmission instruction is the cloud terminal in the In the video stream playing process, an instruction sent when an adjustment operation of the playback progress of the video stream is detected is detected.
- the cloud terminal can be used to access the virtual machine system on the cloud server, such as the Windows operating system and the Linux operating system.
- the video data that can be sent to the cloud terminal by the cloud server is divided into two types: one is desktop video stream data, and the entire desktop display part of the windows operating system or the linux operating system is sent as a video stream to the cloud terminal;
- the kind of video that is opened by other video display software such as player, browser or camera software in the desktop system of windows operating system or linux operating system is regarded as a kind of video stream, that is, ordinary video stream data.
- the desktop of the virtual machine system can exist as long as it is not shut down.
- the desktop can be used as a continuous desktop video stream without fast forward and no drag operation. Therefore, when the cloud server encodes and sends the video stream to the cloud terminal, the cloud server can
- the first frame transmits a frame of IDR frames (including image size, encoding mode, mapping information, and other decoding related information), and all subsequent data frames transmit P frames, because the P frames are predicted based on the previous frames, and are not required.
- IDR frames including image size, encoding mode, mapping information, and other decoding related information
- Image size, encoding mode and other information the amount of data is very small, only one tenth or a few tenths of the IDR frame, under the same video quality and sampling format (YUV444, YUV422 or YUV420), reducing network traffic and bandwidth Claim.
- one frame of IDR data can be sent only in the first frame at a time, and subsequent data is sent to the P frame, and the playback progress of the video stream is detected after the playback progress bar drag and fast forward is detected.
- one frame of IDR frames can be resent and P frames continue to be transmitted, reducing network traffic and bandwidth while ensuring the same quality.
- the embodiment provides a video streaming device that can be disposed in a cloud server, and the device can include an encoding module 31 and a first sending module 32.
- the encoding module 31 is configured to perform encoding processing on the original image to obtain a video stream, where the video stream includes: a decoding information frame and a video data frame, and the decoding information frame carries a decoding process on the video data frame. Decode the information.
- the first sending module 32 is configured to send the video stream to the cloud terminal.
- the decoded information frame may be an instant decoding refresh IDR frame, and the video data frame may be a forward predictive coding P frame.
- the encoding module 31 may include an obtaining submodule 311, a determining submodule 312, and an encoding submodule 313.
- the obtaining sub-module 311 is configured to acquire a network state threshold that is sent by the cloud terminal and is used to indicate a network congestion status of the cloud terminal.
- the determination sub-module 312 is arranged to determine an image encoding format based on the network status threshold.
- the encoding sub-module 313 is configured to perform encoding processing on the original image according to the determined image encoding format to obtain the video stream.
- the determining sub-module 312 may include a comparing unit 3121, a first determining unit 3122, a second determining unit 3123, and a third determining unit 3124.
- Comparison unit 3121 is arranged to compare the network status threshold to a preset value range.
- the first determining unit 3122 is configured to determine that the encoding format encoded by the original image is the first color encoding format if the network state threshold is higher than or equal to a maximum value within the preset numerical range.
- the second determining unit 3123 is configured to determine, if the network state threshold is within the preset value range, that the encoding format for encoding the original image is a second color encoding format, wherein the second color encoding is adopted
- the size of the video stream obtained by encoding the original image in the format is smaller than the size of the video stream obtained by encoding the original image by using the first color coding format.
- the third determining unit 3124 is configured to determine that the encoding format for encoding the original image is a third color encoding format, if the network state threshold is lower than or equal to a minimum value within the preset value range, where The size of the video stream obtained by encoding the original image by the third color coding format is smaller than the size of the video stream obtained by encoding the original image by using the second color coding format.
- the video stream transmission apparatus of this embodiment may further include: a second sending module 33.
- the second sending module 33 is configured to: after acquiring the decoding information frame retransmission instruction sent by the cloud terminal, resending the decoding information frame to the cloud terminal, where the decoding information frame retransmission instruction is the cloud terminal An instruction sent when an adjustment operation of the playback progress of the video stream is detected.
- the device is a device corresponding to the above method embodiment, and all implementations in the above method embodiments are applicable to the device embodiment.
- the video stream transmission apparatus of this embodiment performs encoding processing on the original image to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries the video data frame. Decoding information for performing decoding processing; and transmitting the video stream to the cloud terminal.
- the video stream transmitted in this embodiment only carries the decoding information in the decoded information frame, instead of carrying the decoding information in each frame of the video stream, which reduces the requirement on the network bandwidth and avoids the cloud terminal in the related art.
- Each frame of the video data transmitted by the system contains redundant information unrelated to the pure video data, causing a problem of waste of network transmission resources.
- this embodiment provides a method for transmitting a video stream to be applied to a cloud terminal, and the method includes the following steps.
- step 41 the video stream sent by the cloud server is obtained, where the video stream is obtained by encoding, by the cloud server, the original image, and the video stream includes: a decoded information frame and a video data frame, and The decoded information frame carries decoding information for performing decoding processing on the video data frame.
- the decoded information frame is an instant decoding refresh IDR frame
- the video data frame is a forward predictive coding P frame
- the video stream includes an IDR frame and multiple P frames
- the IDR frame is The first frame of the video stream.
- the cloud server of the embodiment sends an IDR frame in the first frame, where the IDR frame carries the decoding information including the image size, the encoding mode, the mapping information, and other decodings. All data frames are sent P frames. Since the P frame is predicted based on the previous frame and does not require information such as image size and encoding mode, the amount of data is small, only one tenth or one tenth of the IDR frame. Reduces network traffic and bandwidth requirements under the same video quality and sampling format.
- step 42 the video data frame is decoded according to the decoded information frame to obtain a video stream to be displayed.
- the cloud terminal can decode the video stream by using a hardware module such as a video process unit (VPU) or a graphic process unit (GPU).
- a hardware module such as a video process unit (VPU) or a graphic process unit (GPU).
- VPU video process unit
- GPU graphic process unit
- the method may further include:
- a network state threshold for indicating a network congestion state of the cloud terminal, so that the cloud server determines an image encoding format according to the network state threshold, and pairs the original according to the determined image encoding format
- the image is encoded to obtain the video stream.
- the video stream transmission method further includes:
- network transmission state information such as traffic and packet loss rate
- Sending the adjusted network state threshold to the cloud server so that the cloud server re-determines the image encoding format according to the adjusted network state threshold, and pairs the original image according to the re-determined image encoding format
- An encoding process is performed to obtain the video stream.
- the server may adjust the video format and resend to the cloud terminal. If the change value of the traffic and the packet loss rate is less than or equal to the set value, the cloud terminal invokes a video display program to play the decoded video.
- the video stream transmission method further includes:
- the video stream sent by the cloud server is obtained, where the video stream is obtained after the cloud server encodes the original image, and the video stream includes: decoding the information frame and The video data frame, and the decoded information frame, carries decoding information for performing decoding processing on the video data frame, and performs decoding processing on the video data frame according to the decoded information frame to obtain a video stream to be displayed.
- the video stream transmitted in this embodiment may carry the solution only in the decoded information frame.
- the code information instead of carrying the decoding information in each frame of the video stream, reduces the requirement on the network bandwidth, and avoids that each frame of the video data transmitted by the cloud terminal system in the related art includes the pure video data. Unrelated redundant information, causing a waste of network transmission resources.
- the above interaction process includes the following steps.
- step 51 the cloud terminal is powered on and the network status threshold is preset.
- the network status threshold may reflect the congestion of the network where the cloud terminal is located.
- step 52 the cloud terminal initiates a connection request to the cloud server and sends a preset network state threshold to the cloud server.
- step 53 the cloud server adjusts the image encoding format of the transmitted video stream according to the network state threshold.
- the cloud server may compress and encode the original image in the YUV444 format and send the image to the cloud terminal for decoding;
- the state threshold is smaller than the worst network default value, indicating that the network environment where the cloud terminal is located has a certain degree of congestion or low bandwidth.
- the server can compress and encode the original image in YUV420 format and send it to the cloud terminal for decoding; and if the network status threshold Between the worst network default value and the optimal network condition default value, the server can compress and encode the original image in YUV422 color coding format and send it to the cloud terminal.
- the cloud server performs encoding processing on the original image according to the image encoding format, and obtains a video stream and sends the video stream to the cloud terminal.
- the first frame of the video stream may be an IDR frame, and the rest of the video stream may be a data frame. frame.
- the video data sent by the cloud server to the cloud terminal can be divided into two types: one is desktop video stream data, and the other is normal video stream data.
- desktop video stream data when the cloud terminal is booted to the virtual machine system on the server, the server sends a frame of IDR data in the first frame, and the cloud terminal creates a desktop video stream object, which is initialized by using the received IDR frame.
- the server In the decoder, the server then only sends the P frame of the desktop video stream, and the cloud terminal receives the P frame and calls the decoder to decode.
- the server For normal video stream data, the server only sends one frame of IDR frame in the first frame when the video is newly opened, the cloud terminal receives the IDR frame initialization decoder, the server subsequently sends the P frame of the normal video stream, and the cloud terminal receives the P. Frame and call the decoder for decoding, but if during the playback of the normal video stream, a progress bar occurs. By dragging or fast forwarding, the cloud terminal can notify the server to resend one frame of the IDR frame and continue to send the P frame.
- step 55 the cloud terminal determines whether the video stream is a desktop video stream.
- step 56 if the video stream is a desktop video stream, a desktop video stream object is created, and one frame of the IDR frame and all subsequent P frames are received.
- step 57 the hardware decoder is called to decode.
- the cloud terminal can decode the video stream by using a hardware module such as a video process unit (VPU) or a graphic process unit (GPU).
- a hardware module such as a video process unit (VPU) or a graphic process unit (GPU).
- VPU video process unit
- GPU graphic process unit
- the cloud terminal collects network transmission status information in the decoding process, and the network transmission status information may include: a packet loss rate and a traffic (network traffic).
- the network transmission state information such as the network state, the traffic, and the packet loss rate of the system can be statistically calculated in real time. If the packet loss rate and the network traffic change value are greater than the set value, the cloud terminal may send a command request to the server to reduce or improve the video stream quality. After receiving the command, the server may adjust the video format and resend the video format to the cloud terminal; The packet loss rate and the change value of the network traffic are less than or equal to the set value, and the cloud terminal can invoke the video display program to play the decoded video.
- step 59 the cloud terminal determines whether the change rate of the packet loss rate and the flow rate is greater than a set value.
- step 510 if the change value of the packet loss rate and the traffic value is greater than the set value, the network state threshold is adjusted, and the adjusted network state threshold is sent to the cloud server.
- step 511 if the change value of the packet loss rate and the flow rate is less than or equal to the set value, the decoded video data is displayed.
- step 512 if the video stream is not a desktop video stream, a normal video stream object is created, and one frame of the IDR frame and all subsequent P frames are received.
- step 513 hardware decoder decoding is invoked.
- step 514 it is determined whether a playback progress bar drag operation is detected. If a play progress bar drag operation is detected, an IDR frame retransmission instruction is sent to the cloud server, and if a play progress bar drag operation is not detected, Skip to step 58.
- the play progress bar drag operation may be a forward drag operation or a reverse operation.
- the network condition when the desktop video stream and the normal video stream are displayed on the cloud terminal, the network condition can be detected and counted in real time, and the dynamic adjustment, switching color coding and sampling mode can be dynamically ensured when the network condition is good.
- High-quality virtual machine operation and video playback service reduce bandwidth requirements and ensure stable operation of the system when network conditions are not good.
- the embodiment provides a video stream transmission apparatus that can be disposed in a cloud terminal, where the video stream transmission apparatus includes: an acquisition module 61 and a decoding module 62.
- the obtaining module 61 is configured to obtain a video stream sent by the cloud server, where the video stream is obtained by encoding, by the cloud server, an original image, and the video stream includes: a decoded information frame and a video data frame, and The decoded information frame carries decoding information for performing decoding processing on the video data frame.
- the decoding module 62 is configured to perform decoding processing on the video data frame according to the decoded information frame to obtain a video stream to be displayed.
- the decoding module 62 may include: an initialization submodule 621 and a decoding submodule 622.
- the initialization sub-module 621 is configured to perform initialization processing on the decoder according to the decoded information frame after receiving the decoded information frame.
- the decoding sub-module 622 is configured to call the decoder after the initialization process to perform decoding processing on the received video data frame to obtain the video stream to be displayed.
- the video stream transmission apparatus of this embodiment may further include: a third sending module 63.
- the third sending module 63 is configured to send a network state threshold for indicating a network congestion status of the cloud terminal to the cloud server before acquiring the video stream sent by the cloud server, so that the cloud server determines an image according to the network state threshold. Encoding the format, and encoding the original image according to the determined image encoding format to obtain the video stream.
- the video stream transmission apparatus of this embodiment may further include: an obtaining module 64 and an adjusting module 65.
- the obtaining module 64 is configured to perform decoding processing on the video data frame according to the decoded information frame, and obtain a network transmission state information in the process of decoding the video data frame by the cloud terminal after obtaining the video stream to be displayed.
- the adjusting module 65 is configured to adjust the network state threshold according to the network transmission state information And adjusting the adjusted network state threshold to the cloud server, so that the cloud server re-determines the image encoding format according to the adjusted network state threshold, and according to the re-determined image encoding format The original image is encoded to obtain the video stream.
- the video stream transmission apparatus of this embodiment may further include: a fourth sending module 66.
- the fourth sending module 66 is configured to perform decoding processing on the video data frame according to the decoded information frame, and after obtaining the video stream to be displayed, if an adjustment operation for the playing progress of the video stream is detected, then the cloud is sent to the cloud
- the server sends a decoded information frame retransmission instruction, so that the cloud server retransmits the decoded information frame according to the decoded information frame retransmission instruction.
- the device is a device corresponding to the method embodiment of the fourth embodiment described above, and all implementations in the above method embodiments are applicable to the embodiment of the device.
- the method and device for transmitting a video stream in the foregoing embodiment the encoding process is performed on the original image to obtain a video stream, where the video stream includes: a decoded information frame and a video data frame, and the decoded information frame carries the Decoding information of the video data frame for decoding processing; and transmitting the video stream to the cloud terminal.
- the video stream transmitted in this embodiment can carry the decoding information only in the decoded information frame, instead of carrying the decoding information in each frame of the video stream, which reduces the requirement on the network bandwidth and avoids the cloud terminal in the related art.
- Each frame of the video data transmitted by the system contains redundant information unrelated to the pure video data, which causes a problem of waste of network transmission resources.
- the present embodiment provides a computer readable storage medium storing computer executable instructions arranged to perform the method of any of the above embodiments.
- the cloud server includes:
- At least one processor 70 is exemplified by a processor 70 in FIG. 7; a memory 71; and a communication interface 72 and a bus 73.
- the processor 70, the memory 71, and the communication interface 72 can complete communication with each other through the bus 73.
- Communication interface 77 can transmit data.
- the processor 70 can call the logic instructions in the memory 71 to perform the method performed by the cloud server in the above embodiment.
- logic instructions in the memory 71 described above may be implemented in the form of a software functional unit and sold or used as a stand-alone product, and may be stored in a computer readable storage medium.
- the memory 71 is a computer readable storage medium and can be used for storing software programs and computers. Executing a program, such as the program instruction or module corresponding to the method executed by the cloud server in the above embodiment.
- the processor 70 executes the function application and the data processing by executing a software program, an instruction or a module stored in the memory 71, that is, the method executed by the cloud server in the above embodiment.
- the memory 71 may 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; the storage data area may store data created according to usage of the terminal device, and the like. Further, the memory 71 may include a high speed random access memory, and may also include a nonvolatile memory.
- the cloud terminal includes:
- At least one processor 80 which is exemplified by a processor 80 in FIG. 8; a memory 81; and a communication interface 82 and a bus 83.
- the processor 80, the memory 81, and the communication interface 82 can complete communication with each other through the bus 83.
- Communication interface 88 can transmit data.
- the processor 80 can call the logic instructions in the memory 81 to perform the method performed by the cloud terminal in the above embodiment.
- logic instructions in the memory 81 described above may be implemented in the form of a software functional unit and sold or used as a stand-alone product, and may be stored in a computer readable storage medium.
- the memory 81 is used as a computer readable storage medium, and can be used to store a software program, a computer executable program, such as a program instruction or a module corresponding to the method executed by the cloud terminal in the above embodiment.
- the processor 80 executes the function application and the data processing by executing a software program, an instruction or a module stored in the memory 81, that is, the method executed by the cloud terminal in the above embodiment.
- the memory 81 may include a storage program area and an storage data area, wherein the storage program area may store an operating system, an application required for at least one function; the storage data area may store data created according to use of the terminal device, and the like. Further, the memory 81 may include a high speed random access memory, and may also include a nonvolatile memory.
- the above technical solution may be embodied in the form of a software product stored in a storage medium, including one or more instructions for causing a computer device (which may be a personal computer, a server, a network device, etc.) to execute All or part of the steps of the method in the above embodiments.
- the foregoing storage medium may be a non-transitory storage medium, including: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
- the video stream transmission method and device avoid the problem that the video data transmitted by the cloud terminal system in the related art usually contains redundant information irrelevant to the pure video data, causing waste of network transmission resources.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
La présente invention concerne un procédé et un dispositif de transmission d'un flux vidéo. Le procédé consiste : à effectuer un traitement de codage sur des images originales en vue d'obtenir un flux vidéo, le flux vidéo comprenant une trame d'informations de décodage et une trame de données vidéo, et la trame d'informations de décodage transportant des informations de décodage pour un traitement de décodage de la trame de données vidéo ; et à transmettre le flux vidéo à un terminal en nuage.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610454729.5A CN107529069A (zh) | 2016-06-21 | 2016-06-21 | 一种视频流传输方法及装置 |
CN201610454729.5 | 2016-06-21 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017219896A1 true WO2017219896A1 (fr) | 2017-12-28 |
Family
ID=60735320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/088101 WO2017219896A1 (fr) | 2016-06-21 | 2017-06-13 | Procédé et dispositif de transmission de flux vidéo |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107529069A (fr) |
WO (1) | WO2017219896A1 (fr) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109089153A (zh) * | 2018-08-31 | 2018-12-25 | 平安科技(深圳)有限公司 | Ps数据流解码方法、装置、计算机设备及存储介质 |
CN111093091A (zh) * | 2019-12-11 | 2020-05-01 | 西安万像电子科技有限公司 | 视频处理方法、服务器及系统 |
CN111582024A (zh) * | 2020-03-31 | 2020-08-25 | 西安天和防务技术股份有限公司 | 视频流处理方法、装置、计算机设备和存储介质 |
CN111866443A (zh) * | 2019-04-25 | 2020-10-30 | 黄河 | 视频流数据存储方法、装置、系统和存储介质 |
CN111949826A (zh) * | 2020-08-21 | 2020-11-17 | 上海连尚网络科技有限公司 | 在视频中添加和显示物品信息的方法、电子设备及存储介质 |
CN112039844A (zh) * | 2020-07-24 | 2020-12-04 | 南斗六星系统集成有限公司 | 一种车载终端监控视频自适应码率的方法和系统 |
CN113163233A (zh) * | 2021-02-04 | 2021-07-23 | 福州大学 | 一种基于实时视频流传输的带宽探测方法 |
CN113706891A (zh) * | 2020-05-20 | 2021-11-26 | 阿里巴巴集团控股有限公司 | 交通数据传输方法、装置、电子设备和存储介质 |
CN113784094A (zh) * | 2021-08-31 | 2021-12-10 | 上海三旺奇通信息科技有限公司 | 视频数据处理方法、网关、终端设备及存储介质 |
CN113938705A (zh) * | 2020-07-13 | 2022-01-14 | 阿里巴巴集团控股有限公司 | 用于视频编解码的方法、装置、服务器、终端设备及系统 |
CN113973224A (zh) * | 2021-09-18 | 2022-01-25 | 阿里巴巴(中国)有限公司 | 媒体信息的传输方法、计算设备及存储介质 |
CN114741198A (zh) * | 2022-04-19 | 2022-07-12 | 中国电信股份有限公司 | 视频流处理方法及装置、电子设备、计算机可读介质 |
CN114866792A (zh) * | 2022-03-31 | 2022-08-05 | 广州方硅信息技术有限公司 | 直播视频质量检测方法及其装置、设备、介质 |
CN116320536A (zh) * | 2023-05-16 | 2023-06-23 | 瀚博半导体(上海)有限公司 | 视频处理方法、装置、计算机设备及计算机可读存储介质 |
CN116634089A (zh) * | 2023-07-24 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 视频传输方法、装置、设备及存储介质 |
CN117331880A (zh) * | 2023-08-15 | 2024-01-02 | 北京城建智控科技股份有限公司 | 双核通信装置、方法及电子设备 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113272777A (zh) * | 2019-01-31 | 2021-08-17 | 深圳市柔宇科技股份有限公司 | 一种柔性显示服饰的视频播放方法、柔性显示服饰和存储介质 |
CN111601109A (zh) * | 2020-05-13 | 2020-08-28 | 西安万像电子科技有限公司 | 图像数据的处理方法、装置和系统 |
CN111629234B (zh) * | 2020-06-24 | 2022-09-02 | 上海大因多媒体技术有限公司 | 不同类型视频共存的传输方法、装置、设备和存储介质 |
CN113676769B (zh) * | 2021-08-23 | 2023-03-31 | 北京字跳网络技术有限公司 | 视频解码方法、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080192830A1 (en) * | 2007-02-14 | 2008-08-14 | Samsung Electronics Co., Ltd. | Method of encoding and decoding motion picture frames |
CN101540905A (zh) * | 2008-03-20 | 2009-09-23 | 联发科技股份有限公司 | 视频编码方法 |
CN103428528A (zh) * | 2013-08-19 | 2013-12-04 | 江苏金智教育信息技术有限公司 | 一种云流媒体自适应播放装置及方法 |
CN103561279A (zh) * | 2013-10-10 | 2014-02-05 | 中兴通讯股份有限公司 | 一种多媒体文件播放的方法、系统及云转码服务设备 |
CN104168483A (zh) * | 2014-07-08 | 2014-11-26 | 大连民族学院 | 一种视频压缩方法及系统 |
CN104506868A (zh) * | 2014-12-31 | 2015-04-08 | 深圳市大疆创新科技有限公司 | 视频码流传输方法,装置及系统 |
CN105163117A (zh) * | 2015-08-26 | 2015-12-16 | 华为技术有限公司 | 一种图像编码、处理方法及装置 |
-
2016
- 2016-06-21 CN CN201610454729.5A patent/CN107529069A/zh not_active Withdrawn
-
2017
- 2017-06-13 WO PCT/CN2017/088101 patent/WO2017219896A1/fr active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080192830A1 (en) * | 2007-02-14 | 2008-08-14 | Samsung Electronics Co., Ltd. | Method of encoding and decoding motion picture frames |
CN101540905A (zh) * | 2008-03-20 | 2009-09-23 | 联发科技股份有限公司 | 视频编码方法 |
CN103428528A (zh) * | 2013-08-19 | 2013-12-04 | 江苏金智教育信息技术有限公司 | 一种云流媒体自适应播放装置及方法 |
CN103561279A (zh) * | 2013-10-10 | 2014-02-05 | 中兴通讯股份有限公司 | 一种多媒体文件播放的方法、系统及云转码服务设备 |
CN104168483A (zh) * | 2014-07-08 | 2014-11-26 | 大连民族学院 | 一种视频压缩方法及系统 |
CN104506868A (zh) * | 2014-12-31 | 2015-04-08 | 深圳市大疆创新科技有限公司 | 视频码流传输方法,装置及系统 |
CN105163117A (zh) * | 2015-08-26 | 2015-12-16 | 华为技术有限公司 | 一种图像编码、处理方法及装置 |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109089153B (zh) * | 2018-08-31 | 2022-08-19 | 平安科技(深圳)有限公司 | Ps数据流解码方法、装置、计算机设备及存储介质 |
CN109089153A (zh) * | 2018-08-31 | 2018-12-25 | 平安科技(深圳)有限公司 | Ps数据流解码方法、装置、计算机设备及存储介质 |
CN111866443A (zh) * | 2019-04-25 | 2020-10-30 | 黄河 | 视频流数据存储方法、装置、系统和存储介质 |
CN111093091A (zh) * | 2019-12-11 | 2020-05-01 | 西安万像电子科技有限公司 | 视频处理方法、服务器及系统 |
CN111582024A (zh) * | 2020-03-31 | 2020-08-25 | 西安天和防务技术股份有限公司 | 视频流处理方法、装置、计算机设备和存储介质 |
CN111582024B (zh) * | 2020-03-31 | 2023-05-05 | 西安天和防务技术股份有限公司 | 视频流处理方法、装置、计算机设备和存储介质 |
CN113706891A (zh) * | 2020-05-20 | 2021-11-26 | 阿里巴巴集团控股有限公司 | 交通数据传输方法、装置、电子设备和存储介质 |
CN113938705A (zh) * | 2020-07-13 | 2022-01-14 | 阿里巴巴集团控股有限公司 | 用于视频编解码的方法、装置、服务器、终端设备及系统 |
CN112039844A (zh) * | 2020-07-24 | 2020-12-04 | 南斗六星系统集成有限公司 | 一种车载终端监控视频自适应码率的方法和系统 |
CN111949826A (zh) * | 2020-08-21 | 2020-11-17 | 上海连尚网络科技有限公司 | 在视频中添加和显示物品信息的方法、电子设备及存储介质 |
CN111949826B (zh) * | 2020-08-21 | 2023-11-28 | 上海连尚网络科技有限公司 | 在视频中添加和显示物品信息的方法、电子设备及存储介质 |
CN113163233A (zh) * | 2021-02-04 | 2021-07-23 | 福州大学 | 一种基于实时视频流传输的带宽探测方法 |
CN113784094A (zh) * | 2021-08-31 | 2021-12-10 | 上海三旺奇通信息科技有限公司 | 视频数据处理方法、网关、终端设备及存储介质 |
CN113784094B (zh) * | 2021-08-31 | 2024-04-30 | 上海三旺奇通信息科技有限公司 | 视频数据处理方法、网关、终端设备及存储介质 |
CN113973224A (zh) * | 2021-09-18 | 2022-01-25 | 阿里巴巴(中国)有限公司 | 媒体信息的传输方法、计算设备及存储介质 |
CN113973224B (zh) * | 2021-09-18 | 2024-05-28 | 阿里巴巴(中国)有限公司 | 媒体信息的传输方法、计算设备及存储介质 |
CN114866792A (zh) * | 2022-03-31 | 2022-08-05 | 广州方硅信息技术有限公司 | 直播视频质量检测方法及其装置、设备、介质 |
CN114741198B (zh) * | 2022-04-19 | 2023-12-15 | 中国电信股份有限公司 | 视频流处理方法及装置、电子设备、计算机可读介质 |
CN114741198A (zh) * | 2022-04-19 | 2022-07-12 | 中国电信股份有限公司 | 视频流处理方法及装置、电子设备、计算机可读介质 |
CN116320536B (zh) * | 2023-05-16 | 2023-08-18 | 瀚博半导体(上海)有限公司 | 视频处理方法、装置、计算机设备及计算机可读存储介质 |
CN116320536A (zh) * | 2023-05-16 | 2023-06-23 | 瀚博半导体(上海)有限公司 | 视频处理方法、装置、计算机设备及计算机可读存储介质 |
CN116634089A (zh) * | 2023-07-24 | 2023-08-22 | 苏州浪潮智能科技有限公司 | 视频传输方法、装置、设备及存储介质 |
CN116634089B (zh) * | 2023-07-24 | 2023-11-03 | 苏州浪潮智能科技有限公司 | 视频传输方法、装置、设备及存储介质 |
CN117331880A (zh) * | 2023-08-15 | 2024-01-02 | 北京城建智控科技股份有限公司 | 双核通信装置、方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107529069A (zh) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017219896A1 (fr) | Procédé et dispositif de transmission de flux vidéo | |
JP7221957B2 (ja) | ビデオエンコーダレンダリング向けのゲームエンジンアプリケーション | |
WO2022028089A1 (fr) | Procédé et dispositif de traitement d'image, serveur et support | |
US20230393802A1 (en) | Real-time screen sharing | |
US11930246B2 (en) | Seamless switching method, device and storage medium of software and hardware decoding resolution | |
EP2759140B1 (fr) | Procédé de d'encodage et encodeur de session de présentation à distance à complexité réduite | |
WO2017096823A1 (fr) | Procédé, appareil et système permettant un transcodage vidéo | |
CN114600468A (zh) | 将复合视频流中的视频流与元数据组合 | |
WO2021052500A1 (fr) | Procédé de transmission d'image vidéo, dispositif d'envoi, et procédé et dispositif d'appel vidéo | |
WO2023040825A1 (fr) | Procédé de transmission d'informations multimédias, dispositif informatique et support de stockage | |
WO2021057697A1 (fr) | Procédé et appareils de codage et de décodage vidéo, support de stockage et dispositif informatique | |
WO2023226915A1 (fr) | Procédé et système de transmission vidéo, et support de stockage | |
CN110300278A (zh) | 视频传输方法和设备 | |
CN107295423B (zh) | 一种用于移动终端视频直播的自适应编码和传输方法 | |
US11943473B2 (en) | Video decoding method and apparatus, video encoding method and apparatus, storage medium, and electronic device | |
US20230388526A1 (en) | Image processing method and apparatus, computer device, storage medium and program product | |
WO2021121257A1 (fr) | Procédé de traitement vidéo, dispositif de traitement vidéo, terminal, et support de stockage lisible par ordinateur | |
WO2021237474A1 (fr) | Procédé, dispositif et système de transmission vidéo | |
CN112203097A (zh) | 一种自适应视频解码方法、装置,终端设备及存储介质 | |
CN116866658A (zh) | 视频数据的处理方法、装置、设备和介质 | |
JP2014075737A (ja) | 画像処理装置、画像処理方法及び画像処理システム | |
CN116112691A (zh) | 一种图片流智能分析巡检方法、装置、存储介质和终端 | |
WO2022206016A1 (fr) | Procédé, appareil et système de transport par stratification de données | |
CN110798705A (zh) | 一种视频图像传输方法、装置及设备 | |
WO2021057478A1 (fr) | Procédé de codage et de décodage vidéo et appareil associé |
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: 17814634 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17814634 Country of ref document: EP Kind code of ref document: A1 |