Video redirection method and system

By using the video redirection plug-in in a remote desktop environment to send video data and area information to the client for decoding and synthesis, the problem of independent video window and desktop window is solved, and user-friendly video display and efficient utilization of resources is achieved.

CN120583274APending Publication Date: 2025-09-02WUHAN OPENKER COMPUTING
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510658084.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-21
Publication Date
2025-09-02

AI Technical Summary

Technical Problem

In a remote desktop environment, video decoding and display occupy a large amount of CPU and GPU resources, resulting in the server being unable to host too many remote desktops to play videos at the same time, and the desktop window and the video window are independent of each other, which is inconvenient for user operation.

Method used

Use the video redirect plug-in to separate the original video data from the target player on the server, and send the video data to be decoded and the video area information to the client. The client decodes it and combines the coordinates and pixel values ​​of the desktop window for synthesis and display, ensuring that the video and the desktop are fused in the same window.

Benefits of technology

It realizes normal display of video and remote desktop in the same window, making users convenient to operate, reduces the computing load on the server and improves resource utilization efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120583274A_ABST
    Figure CN120583274A_ABST
Patent Text Reader

Abstract

The invention provides a video redirection method and system. The method comprises the steps that a video redirection plug-in separates original video data from a current video played by a target player; the video redirection plug-in returns a preset pixel value to the target player; the video redirection plug-in sends the to-be-decoded video data and the video area information to the client; and the client decodes the to-be-decoded video data to obtain a decoded video image, traverses each coordinate in the desktop window, and if the current coordinate is matched with the video region information and the pixel value of the current coordinate in the original desktop image is a preset pixel value, displays the pixel of the corresponding coordinate in the decoded video image at the current coordinate. And otherwise, displaying the pixel of the current coordinate in the original desktop image at the current coordinate. Through the application, the remote desktop and the video are fused in the same window, all parts of the player and the hierarchical relationship between the video display area and other windows can be normally displayed, and user operation is facilitated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of video redirection technology, and in particular to a video redirection method and system. Background Art

[0002] Video decoding and display consume significant CPU and GPU resources during video playback. Higher video resolutions and frame rates increase resource usage, significantly impacting VDI virtualized remote desktop environments. The server cannot handle too many remote desktops playing videos simultaneously. In remote desktop scenarios, the client receives raw video data for decoding and display. The client has ample CPU and GPU resources, shifting the burden of video decoding from the server to the client, freeing up server computing resources for other tasks. This is the principle behind video redirection.

[0003] The conventional video redirection method is as follows: On the server side, the video is opened using a custom program. After opening the video file, the custom program shares the video file with the client via a shared folder. The client then creates a local window and decodes and displays the video file in the shared folder. However, in this solution, the desktop window and the video window are independent of each other, making it inconvenient for users to operate. Summary of the Invention

[0004] The present application provides a video redirection method and system, which can solve the technical problem in the prior art that the desktop window and the video window are independent of each other, making it inconvenient for users to operate.

[0005] In a first aspect, an embodiment of the present application provides a video redirection method, the video redirection method comprising:

[0006] After the separator interface is called by the target player, the video redirection plug-in separates the original video data from the current video played by the target player, wherein the video redirection plug-in and the target player are both set on the server side;

[0007] After the decoding interface of the video redirection plug-in is called by the target player, it returns the preset pixel value to the target player so that the target player can display it in the video display area;

[0008] The video redirection plug-in sends the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frames of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window;

[0009] The client decodes the video data to be decoded to obtain a decoded video image, and traverses each coordinate in the desktop window. If the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

[0010] Furthermore, in one embodiment, for the video redirection plug-in, the step of sending the to-be-decoded video data and the video region information to the client includes:

[0011] Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number;

[0012] When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue;

[0013] Send the video area information to the client every second duration;

[0014] For the client, before the step of decoding the video data to be decoded to obtain a decoded video image, the method further includes:

[0015] The earliest video data to be decoded is taken out from the cache queue.

[0016] Furthermore, in one embodiment, for the video redirection plug-in, after the step of returning the preset pixel value to the target player, the method further includes:

[0017] The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.

[0018] Furthermore, in one embodiment, the video area information includes the reference coordinates of the video display area in the desktop window, and the width and height of the video display area.

[0019] Furthermore, in one embodiment, for the client, if the current coordinates match the video area information and the pixel value of the current coordinates in the original desktop image is a preset pixel value, then displaying the pixel of the corresponding coordinates in the decoded video image at the current coordinates; otherwise, displaying the pixel of the current coordinates in the original desktop image at the current coordinates includes:

[0020] Match the current coordinates with the video area information;

[0021] If the current coordinates do not match the video area information, the pixel at the current coordinates in the original desktop image is displayed at the current coordinates;

[0022] If the current coordinates match the video area information, the pixel value of the current coordinates in the original desktop image is compared with the preset pixel value;

[0023] If the pixel value of the current coordinate in the original desktop image is not the preset pixel value, then displaying the pixel of the current coordinate in the original desktop image at the current coordinate;

[0024] If the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate.

[0025] Furthermore, in one embodiment, the target player is Windows Media Player, and the video redirection plug-in provides a separator interface and a decoding interface that comply with the Windows DirectShow specification.

[0026] Furthermore, in one embodiment, the preset pixel value is RGB (3, 3, 3).

[0027] In a second aspect, an embodiment of the present application further provides a video redirection system, the video redirection system comprising a client and a server, the server being provided with a video redirection plug-in and a target player;

[0028] The video redirection plug-in is used to separate the original video data from the current video played by the target player after the separator interface is called by the target player. The video redirection plug-in and the target player are both set on the server side;

[0029] The video redirection plug-in is also used to return preset pixel values ​​to the target player after the decoding interface is called by the target player, so that the target player can display it in the video display area;

[0030] The video redirection plug-in is further used to send the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frames of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window;

[0031] The client is also used to decode the video data to be decoded to obtain a decoded video image, traverse each coordinate in the desktop window, and if the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is a preset pixel value, then the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

[0032] Furthermore, in one embodiment, the video redirection plug-in is used to:

[0033] Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number;

[0034] When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue;

[0035] Send the video area information to the client every second duration;

[0036] The client is also used to:

[0037] The earliest video data to be decoded is taken out from the cache queue.

[0038] Furthermore, in one embodiment, the video redirection plug-in is further configured to:

[0039] The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.

[0040] In this application, in the original desktop image sent by the server to the client, the pixel value of each coordinate in the video display area is a preset pixel value. When the client merges the original desktop image and the decoded video image in the desktop window, it will perform a dual judgment of the pixel area and the pixel value. When both judgments meet the requirements, the pixels of the decoded video image are displayed. When either judgment does not meet the requirements, the pixels of the original desktop image are displayed. Through this application, the remote desktop and video are merged into the same window, and the various parts of the player and the hierarchical relationship between the video display area and other windows can be displayed normally, which is convenient for user operation. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Figure 1 This is a flowchart of a video redirection method according to an embodiment of the present application;

[0042] Figure 2 This is a schematic diagram of the architecture of a video redirection system in one embodiment of the present application;

[0043] Figure 3 This is a schematic diagram of an original desktop image in one embodiment of the present application;

[0044] Figure 4 for Figure 3 Schematic diagram of abnormal display effects of original desktop image and decoded video image in the desktop window of the client;

[0045] Figure 5 for Figure 3 Schematic diagram of the normal display effect of the original desktop image and the decoded video image in the desktop window of the client;

[0046] Figure 6This is a schematic diagram of the client's operation on the desktop window in one embodiment of the present application. DETAILED DESCRIPTION

[0047] In order to enable those skilled in the art to better understand the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0048] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0049] In a first aspect, an embodiment of the present application provides a video redirection method.

[0050] Figure 1 FIG. 1 shows a flow chart of a video redirection method in an embodiment of the present application. Figure 2 A schematic diagram of the architecture of a video redirection system in one embodiment of the present application is shown.

[0051] Reference Figure 1 and Figure 2 In one embodiment, the video redirection method includes the following steps:

[0052] S1. After the separator interface is called by the target player, the video redirection plug-in separates the original video data from the current video played by the target player, wherein the video redirection plug-in and the target player are both set on the server.

[0053] Specifically, the separator interface provided by the video redirection plug-in needs to comply with the specifications of the video decoder interface used by the target player. The video file includes original video data, audio data, subtitle data, etc.

[0054] Optionally, the video redirection plug-in can parse mainstream video packaging formats such as mp4, mkv and flv, and separate the original video data from them.

[0055] S2. After the decoding interface is called by the target player, the video redirection plug-in returns the preset pixel value to the target player so that the target player can display it in the video display area.

[0056] Specifically, the decoding interface provided by the video redirection plug-in needs to comply with the specifications of the video decoder interface used by the target player. After the video redirection plug-in returns the preset pixel value to the target player, the target player will draw a color block of the corresponding size of the preset pixel value in the video display area.

[0057] For example, the target player is Windows Media Player, and the video redirection plug-in provides a separator interface and a decoding interface that comply with the Windows DirectShow specification.

[0058] S3. The video redirection plug-in sends the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frame data of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window.

[0059] Specifically, the video playback progress and video display area are controlled by the target player in response to user operations, and the target player is set on the server. The video redirection plug-in intercepts the corresponding frame data from the original video data and sends it to the client as the video data to be decoded to ensure that the playback progress of the current video on the client matches the playback progress controlled by the target player. The video redirection plug-in sends the video area information to the client so that the client knows which area of ​​the desktop window the current video needs to be displayed in, and ensures that the parts of the target player other than the video display area (such as the video operation bar, play list, etc.) are displayed normally for user operation.

[0060] It should be noted that due to the hierarchical relationship between different windows on the server side, the video area information will not change due to other windows covering the video display area. Therefore, the area where the user actually sees the video image on the client may only be a part of the video display area. The client needs to combine the preset pixel value to determine the hierarchical relationship between other windows and the video display area. The preset pixel value needs to be a pixel value with low frequency of use to avoid duplication with pixel values ​​in other windows.

[0061] For example, the video area information includes the reference coordinates of the video display area in the desktop window, and the width and height of the video display area.

[0062] For example, the preset pixel value is RGB (3, 3, 3).

[0063] S4. The client decodes the video data to be decoded to obtain a decoded video image, and traverses each coordinate in the desktop window. If the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is a preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

[0064] It can be understood that for other areas outside the video display area in the desktop window, the corresponding part of the original desktop image needs to be drawn. For the video display area in the desktop window, if it is covered by other windows, the corresponding part of the original desktop image also needs to be drawn. If it is not covered by other windows, the corresponding part in the decoded video image needs to be drawn.

[0065] Specifically in this embodiment, if the current coordinates match the video area information, it means that the current coordinates are within the video display area; otherwise, it means that the current coordinates are outside the video display area. If the pixel value of the current coordinates in the original desktop image is a preset pixel value, it means that the video display area is not covered by other windows at the current coordinates; otherwise, it means that the video display area is covered by other windows at the current coordinates.

[0066] It should be noted that the coordinate systems of the desktop window and the decoded video image are different. Relevant information is needed to project the current coordinates from the coordinate system of the desktop window to the coordinate system of the decoded video image to obtain the corresponding coordinates in the decoded video image.

[0067] The following is an example with reference to a specific schematic diagram.

[0068] Figure 3 A schematic diagram of an original desktop image in an embodiment of the present application is shown.

[0069] Reference Figure 3 The target player includes a video display area, a playlist, and a video operation bar. The start menu is expanded, covering a portion of the video display area and the video operation bar. In the original desktop image, the sub-area of ​​the video display area not covered by the start menu is a preset pixel value, and the sub-area covered by the start menu is the content of the start menu.

[0070] Figure 4 Shown Figure 3 Schematic diagram of the abnormal display effect of the original desktop image and the decoded video image in the client's desktop window.

[0071] Reference Figure 4 When the client merges the original desktop image and the decoded video image in the desktop window, if only the pixel area is judged, the decoded video image will be drawn in the entire video display area, causing the sub-area that should be covered by the start menu to still display the decoded video image, resulting in display abnormality.

[0072] Figure 5 Shown Figure 3 Schematic diagram of the normal display effect of the original desktop image and the decoded video image in the client's desktop window.

[0073] Reference Figure 5When the client merges the original desktop image and the decoded video image in the desktop window, if a dual judgment is made on the pixel area and the pixel value, the decoded video image will only be drawn in the sub-area of ​​the video display area that is not covered by the start menu, and the hierarchical relationship between the video display area and the start menu will be displayed normally.

[0074] Therefore, in this embodiment, in the original desktop image sent by the server to the client, the pixel value at each coordinate in the video display area is a preset pixel value. When the client merges the original desktop image and the decoded video image in the desktop window, it performs a dual judgment of the pixel location and the pixel value. If both judgments meet the requirements, the pixels of the decoded video image are displayed. If either judgment does not meet the requirements, the pixels of the original desktop image are displayed. Through this embodiment, the remote desktop and video are merged into the same window, and the various parts of the player and the hierarchical relationship between the video display area and other windows are displayed normally, facilitating user operation.

[0075] Furthermore, in one embodiment, for the video redirection plug-in, the step of sending the to-be-decoded video data and the video region information to the client includes:

[0076] Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number;

[0077] When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue;

[0078] Send the video area information to the client every second duration;

[0079] For the client, before the step of decoding the video data to be decoded to obtain a decoded video image, the method further includes:

[0080] The earliest video data to be decoded is taken out from the cache queue.

[0081] In this embodiment, a cache queue is used to cache the video data to be decoded, so as to avoid the fluctuation of the client decoding rate causing the client video picture to be not smooth.

[0082] It should be noted that a sudden change in the playback time indicates that the user has manually operated the progress bar of the target player. The video data to be decoded previously placed in the cache queue does not need to be decoded and displayed. It is cleared and the video data to be decoded corresponding to the new playback time is re-added to ensure timely response to user operations.

[0083] Optionally, the first duration and the second duration may be the same or different.

[0084] Furthermore, in one embodiment, for the video redirection plug-in, after the step of returning the preset pixel value to the target player, the method further includes:

[0085] The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.

[0086] In this embodiment, after intercepting the display interface corresponding to the window handle, the target player will not repeatedly draw the color blocks of the preset pixel values. Without changing the playback video, it will only draw the color blocks of the preset pixel values ​​after the decoding interface is called for the first time, thereby minimizing resource consumption on the server side.

[0087] Currently, in other embodiments, the display interface corresponding to the window handle may not be intercepted. The target player will draw a color block with a preset pixel value each time the decoding interface is called. The resource consumption is relatively higher, but it is far less than the resource consumption required for normal decoding of video data.

[0088] Figure 6 A schematic diagram of operations of a client on a desktop window in one embodiment of the present application is shown.

[0089] Reference Figure 6 Furthermore, in one embodiment, for the client, if the current coordinates match the video area information and the pixel value of the current coordinates in the original desktop image is a preset pixel value, then displaying the pixel of the corresponding coordinates in the decoded video image at the current coordinates; otherwise, displaying the pixel of the current coordinates in the original desktop image at the current coordinates includes:

[0090] Match the current coordinates with the video area information;

[0091] If the current coordinates do not match the video area information, the pixel at the current coordinates in the original desktop image is displayed at the current coordinates;

[0092] If the current coordinates match the video area information, the pixel value of the current coordinates in the original desktop image is compared with the preset pixel value;

[0093] If the pixel value of the current coordinate in the original desktop image is not the preset pixel value, then displaying the pixel of the current coordinate in the original desktop image at the current coordinate;

[0094] If the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate.

[0095] In this embodiment, coordinate matching is performed first, and pixel value comparison is performed only when the coordinate matching is successful, thereby reducing resource consumption of the client and helping to improve display fluency of the client.

[0096] In a second aspect, an embodiment of the present application also provides a video redirection system.

[0097] Reference Figure 2 ,In one embodiment, a video redirection system includes a client and a server ,wherein the server is provided with a video redirection plug-in and a target ,player;

[0098] The video redirection plug-in is used to separate the original video data from the current video played by the target player after the separator interface is called by the target player. The video redirection plug-in and the target player are both set on the server side;

[0099] The video redirection plug-in is also used to return preset pixel values ​​to the target player after the decoding interface is called by the target player, so that the target player can display it in the video display area;

[0100] The video redirection plug-in is further used to send the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frames of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window;

[0101] The client is also used to decode the video data to be decoded to obtain a decoded video image, traverse each coordinate in the desktop window, and if the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is a preset pixel value, then the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

[0102] Furthermore, in one embodiment, the video redirection plug-in is used to:

[0103] Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number;

[0104] When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue;

[0105] Send the video area information to the client every second duration;

[0106] The client is also used to:

[0107] The earliest video data to be decoded is taken out from the cache queue.

[0108] Furthermore, in one embodiment, the video redirection plug-in is further configured to:

[0109] The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.

[0110] Furthermore, in one embodiment, the video area information includes the reference coordinates of the video display area in the desktop window, and the width and height of the video display area.

[0111] Furthermore, in one embodiment, the client is used to:

[0112] Match the current coordinates with the video area information;

[0113] If the current coordinates do not match the video area information, the pixel at the current coordinates in the original desktop image is displayed at the current coordinates;

[0114] If the current coordinates match the video area information, the pixel value of the current coordinates in the original desktop image is compared with the preset pixel value;

[0115] If the pixel value of the current coordinate in the original desktop image is not the preset pixel value, then displaying the pixel of the current coordinate in the original desktop image at the current coordinate;

[0116] If the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate.

[0117] Furthermore, in one embodiment, the target player is Windows Media Player, and the video redirection plug-in provides a separator interface and a decoding interface that comply with the Windows DirectShow specification.

[0118] Furthermore, in one embodiment, the preset pixel value is RGB (3, 3, 3).

[0119] Among them, the functional implementation of each module in the above-mentioned video redirection system corresponds to each step in the above-mentioned video redirection method embodiment, and its functions and implementation processes are no longer repeated here.

[0120] It should be noted that the serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.

[0121] The terms "including" and "having" and any variations thereof in the specification and claims of this application and the above-mentioned drawings are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices. The terms "first", "second" and "third" are used to distinguish different objects, etc., and do not represent a sequence, nor do they limit the "first", "second" and "third" to different types.

[0122] In the description of the embodiments of this application, the words "exemplary," "for example," or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary," "for example," or "for example" in the embodiments of this application should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary," "for example," or "for example" is intended to present the relevant concepts in a concrete manner.

[0123] In the description of the embodiments of the present application, unless otherwise specified, “ / ” means or, for example, A / B can mean A or B; “and / or” in the text is merely a description of the association relationship of associated objects, indicating that three relationships may exist, for example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, in the description of the embodiments of the present application, “multiple” refers to two or more than two.

[0124] In some processes described in the embodiments of the present application, multiple operations or steps are included that appear in a specific order. However, it should be understood that these operations or steps may not be performed in the order in which they appear in the embodiments of the present application or may be performed in parallel. The sequence numbers of the operations are only used to distinguish between different operations, and the sequence numbers themselves do not represent any order of execution. In addition, these processes may include more or fewer operations, and these operations or steps may be performed in sequence or in parallel, and these operations or steps may be combined.

[0125] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, of course, it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for enabling a terminal device to execute the methods described in each embodiment of the present application.

[0126] The above are only preferred embodiments of the present application and do not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.

Claims

1. A video redirection method, characterized in that: The video redirection method includes: After the separator interface is called by the target player, the video redirection plug-in separates the original video data from the current video played by the target player, wherein the video redirection plug-in and the target player are both set on the server side; After the decoding interface of the video redirection plug-in is called by the target player, it returns the preset pixel value to the target player so that the target player can display it in the video display area; The video redirection plug-in sends the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frames of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window; The client decodes the video data to be decoded to obtain a decoded video image, and traverses each coordinate in the desktop window. If the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

2. The video redirection method according to claim 1, wherein: For the video redirection plug-in, the step of sending the video data to be decoded and the video area information to the client includes: Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number; When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue; Send the video area information to the client every second duration; For the client, before the step of decoding the video data to be decoded to obtain a decoded video image, the method further includes: The earliest video data to be decoded is taken out from the cache queue.

3. The video redirection method according to claim 1, wherein: For the video redirection plug-in, after the step of returning the preset pixel value to the target player, the method further includes: The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.

4. The video redirection method according to claim 1, wherein: The video area information includes the reference coordinates of the video display area in the desktop window, and the width and height of the video display area.

5. The video redirection method according to claim 1, wherein: For the client, if the current coordinates match the video area information and the pixel value of the current coordinates in the original desktop image is a preset pixel value, then displaying the pixel of the corresponding coordinates in the decoded video image at the current coordinates; otherwise, displaying the pixel of the current coordinates in the original desktop image at the current coordinates includes: Match the current coordinates with the video area information; If the current coordinates do not match the video area information, the pixel at the current coordinates in the original desktop image is displayed at the current coordinates; If the current coordinates match the video area information, the pixel value of the current coordinates in the original desktop image is compared with the preset pixel value; If the pixel value of the current coordinate in the original desktop image is not the preset pixel value, then displaying the pixel of the current coordinate in the original desktop image at the current coordinate; If the pixel value of the current coordinate in the original desktop image is the preset pixel value, the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate.

6. The video redirection method according to claim 1, wherein: The target player is Windows Media Player, and the video redirection plug-in provides a demuxer interface and a decoding interface that conform to the Windows DirectShow specification.

7. The video redirection method according to claim 1, wherein: The default pixel value is RGB(3,3,3).

8. A video redirection system, characterized in that: The video redirection system includes a client and a server, wherein the server is provided with a video redirection plug-in and a target player; The video redirection plug-in is used to separate the original video data from the current video played by the target player after the separator interface is called by the target player. The video redirection plug-in and the target player are both set on the server side; The video redirection plug-in is also used to return preset pixel values ​​to the target player after the decoding interface is called by the target player, so that the target player can display it in the video display area; The video redirection plug-in is further used to send the video data to be decoded and the video area information to the client, wherein the video data to be decoded is a preset number of frames of the original video data starting from the playback time, and the video area information is the position information of the video display area in the desktop window; The client is also used to decode the video data to be decoded to obtain a decoded video image, traverse each coordinate in the desktop window, and if the current coordinate matches the video area information and the pixel value of the current coordinate in the original desktop image is a preset pixel value, then the pixel of the corresponding coordinate in the decoded video image is displayed at the current coordinate; otherwise, the pixel of the current coordinate in the original desktop image is displayed at the current coordinate.

9. The video redirection system according to claim 8, wherein: Video Redirection plugin is used to: Putting the video data to be decoded into the cache queue every first time duration, wherein the product of the first time duration and the frame rate of the current video is equal to a preset number; When a sudden change occurs at the playback time, the cache queue is cleared and the video data to be decoded is placed into the cache queue; Send the video area information to the client every second duration; The client is also used to: The earliest video data to be decoded is taken out from the cache queue.

10. The video redirection system according to claim 8, wherein: The Video Redirection plugin is also used to: The video redirection plug-in obtains the window handle of the current video display and intercepts the display interface corresponding to the window handle.