CN109040786B - Camera data transmission method, device and system and storage medium - Google Patents

Camera data transmission method, device and system and storage medium Download PDF

Info

Publication number
CN109040786B
CN109040786B CN201811023333.0A CN201811023333A CN109040786B CN 109040786 B CN109040786 B CN 109040786B CN 201811023333 A CN201811023333 A CN 201811023333A CN 109040786 B CN109040786 B CN 109040786B
Authority
CN
China
Prior art keywords
data
data packet
image
image data
camera
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811023333.0A
Other languages
Chinese (zh)
Other versions
CN109040786A (en
Inventor
许永健
陈小芬
苏其雄
米杨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruijie Networks Co Ltd
Original Assignee
Ruijie Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ruijie Networks Co Ltd filed Critical Ruijie Networks Co Ltd
Priority to CN201811023333.0A priority Critical patent/CN109040786B/en
Publication of CN109040786A publication Critical patent/CN109040786A/en
Application granted granted Critical
Publication of CN109040786B publication Critical patent/CN109040786B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Abstract

The invention relates to the technical field of communication, and discloses a method, a device, a system and a storage medium for transmitting camera data in a VDI (virtual desktop infrastructure) system, which are used for reducing the overhead of the transmission bandwidth of the camera data in the VDI system, wherein the method comprises the following steps: acquiring a plurality of data packets sent by a camera, wherein the data packets form a frame of image; merging and compressing the plurality of data packets to form a target data packet; sending the target data packet to a server so that the server redirects the target data packet to a virtual desktop in the VDI system.

Description

Camera data transmission method, device and system and storage medium
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a method, an apparatus, a system, and a storage medium for transmitting data of a camera in a VDI system.
Background
A Virtual Desktop Infrastructure (VDI for short) refers to running a real operating system on a remote server, virtualizing a Desktop of the operating system, and transmitting and displaying the Virtual Desktop of the operating system to a local terminal in real time through a network, so that a user can remotely access the Virtual Desktop provided by the server through a client on the local terminal, and the operation of the user on the local terminal can be redirected to the operation of the Virtual Desktop through the client.
In a VDI system, it is usually necessary to redirect an access to a USB camera externally connected to a local terminal, for example, to obtain image data from the camera, and then to send the obtained image data of the camera to an operating system of a remote server.
Disclosure of Invention
The embodiment of the invention provides a method, a device and a system for transmitting camera data in a VDI system and a storage medium, which are used for reducing the overhead of the transmission bandwidth of the camera data in the VDI system.
In a first aspect, an embodiment of the present invention provides a method for transmitting camera data in a VDI system, including:
acquiring a plurality of data packets sent by a camera, wherein the data packets form a frame of image;
forming a target data packet after the plurality of data packets are combined and compressed;
sending the target data packet to a server so that the server redirects the target data packet to a virtual desktop in the VDI system.
Optionally, the merging and compressing the multiple data packets to form a target data packet specifically includes:
analyzing the plurality of data packets to obtain image data included in each data packet in the plurality of data packets;
synthesizing a frame of image according to the obtained image data;
and compressing the synthesized frame image by adopting a preset compression mode to form a target data packet.
Optionally, the file size of the target data packet is smaller than the sum of the plurality of data packets before merging and compressing, and/or the image quality after restoring the target data packet is not lower than a set standard.
Optionally, before obtaining the plurality of data packets sent by the camera, the method further includes:
sending the indication information of the camera access to the server;
obtaining an instruction which is fed back by the server based on the indication information and is used for reading the image data in the camera;
and sending the obtained instruction to the camera.
Optionally, the sending the target data packet to a server so that the server redirects the target data packet to a virtual desktop in the VDI system, specifically:
and sending the target data packet to a server, so that the server decompresses the target data packet, and splits the decompressed target data packet into a plurality of data packets, thereby redirecting the plurality of data packets to a virtual desktop in the VDI system.
In a second aspect, an embodiment of the present invention provides a method for transmitting camera data in a VDI system, including:
acquiring a target data packet sent by terminal equipment, wherein the target data packet is a data packet formed by merging and compressing a plurality of data packets corresponding to a frame of image transmitted to the terminal equipment by a camera accessed to the terminal equipment;
decompressing the target data packet and splitting the decompressed target data packet into a plurality of data packets;
redirecting the plurality of data packets to a virtual desktop in the VDI system.
Optionally, decompressing the target data packet, and splitting the decompressed target data packet into a plurality of data packets, specifically including:
decompressing the target data packet to obtain a frame of image data;
splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
for one image data in the plurality of image data, combining the one image data and the control information corresponding to the one image data into one data packet with a specific format, and combining the plurality of image data into a plurality of data packets, wherein the specific format is a format which can be identified by the virtual desktop.
Optionally, before obtaining the data packet sent by the terminal device, the method includes:
acquiring indication information of the camera access sent by the terminal equipment;
and sending an instruction for reading the image data in the camera to the terminal equipment based on the indication information.
In a third aspect, an embodiment of the present invention provides a terminal device for data transmission of a camera, including:
the device comprises a first obtaining unit, a second obtaining unit and a processing unit, wherein the first obtaining unit is used for obtaining a plurality of data packets sent by a camera, and the data packets are data packets forming a frame of image;
the compression unit is used for combining and compressing the plurality of data packets to form a target data packet;
a sending unit, configured to send the target data packet to a server, so that the server redirects the target data packet to a virtual desktop in the VDI system.
Optionally, the compressing unit is further configured to:
analyzing the plurality of data packets to obtain image data included in each data packet in the plurality of data packets;
synthesizing a frame of image according to the obtained image data;
and compressing the synthesized frame image by adopting a preset compression mode to form a target data packet.
Optionally, the file size of the target data packet is smaller than the sum of the plurality of data packets before merging and compressing, and/or the image quality after restoring the target data packet is not lower than a set standard.
Optionally, the first obtaining unit is further configured to:
sending the indication information of the camera access to the server;
obtaining an instruction which is fed back by the server based on the indication information and is used for reading the image data in the camera;
and sending the obtained instruction to the camera.
Optionally, the sending unit is further configured to:
and sending the target data packet to a server, so that the server decompresses the target data packet, and splits the decompressed target data packet into a plurality of data packets, thereby redirecting the plurality of data packets to a virtual desktop in the VDI system.
In a fourth aspect, an embodiment of the present invention provides a camera data transmission server, including:
a second obtaining unit, configured to obtain a target data packet sent by a terminal device, where the data packet is a data packet formed by merging and compressing a plurality of data packets corresponding to a frame of image transmitted to the terminal device by a camera accessing the terminal device;
the decompression unit is used for decompressing the target data packet and splitting the decompressed target data packet into a plurality of data packets;
and the redirecting unit is used for redirecting the plurality of data packets to a virtual desktop in the VDI system.
Optionally, the decompression unit is further configured to:
decompressing the target data packet to obtain a frame of image data;
splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
for one image data in the plurality of image data, combining the one image data and the control information corresponding to the one image data into one data packet with a specific format, and combining the plurality of image data into a plurality of data packets, wherein the specific format is a format which can be identified by the virtual desktop.
Optionally, the second obtaining unit is further configured to:
acquiring indication information of the camera access sent by the terminal equipment;
and sending an instruction for reading the image in the camera to the terminal equipment based on the indication information.
In a fifth aspect, an embodiment of the present invention provides a camera data transmission system, including:
at least one terminal device according to the third aspect; and
at least one server according to the fourth aspect.
In a sixth aspect, an embodiment of the present invention provides an information processing apparatus, including at least one processor and at least one memory, where the memory stores a computer program, and when the program is executed by the processor, the processor is caused to execute the steps of the method according to the first aspect.
In a seventh aspect, an embodiment of the present invention provides a storage medium, which stores computer instructions, and when the computer instructions are executed on a computer, the computer is caused to execute the steps of the method according to the first aspect.
The method for transmitting the camera data in the VDI system provided by the embodiment of the present invention can obtain a plurality of data packets sent by the camera, where the plurality of data packets are data packets forming a frame of image, then merge and compress the plurality of data packets into a target data packet to reduce the size of the transmitted image data file, and finally, compress the target data packet to form a target data packet and send the target data packet to the server, so that the server redirects the formed target data packet to the virtual desktop in the virtual VDI system of the server, thereby reducing the overhead of transmission bandwidth when the camera data is transmitted in the VDI system.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention.
FIG. 1 is a schematic diagram of a VDI system framework according to an embodiment of the present invention;
fig. 2 is a schematic view of an application scenario provided in the embodiment of the present invention;
fig. 3 is a flowchart of a method for transmitting data of a camera in a VDI system according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of data transmission of a camera in a VDI system according to an embodiment of the present invention;
fig. 5 is a schematic diagram of caching camera data according to an embodiment of the present invention;
FIG. 6 is a flowchart of another method for transmitting data of a camera in a VDI system according to an embodiment of the present invention;
fig. 7 is a schematic diagram of decompressing and splitting camera data according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the technical solutions of the present invention. All other embodiments obtained by a person skilled in the art without any inventive work based on the embodiments described in the present application are within the scope of the protection of the technical solution of the present invention.
In the following, some terms related to the embodiments of the present invention will be described.
UVC: all known as USB Video Class or USB Video Device Class, is a protocol standard defined by Microsoft in conjunction with several other Device vendors for USB Video capture devices, and is currently one of the USB ORG standards. A plurality of data interaction formats are specified in the UVC protocol, and the current mainstream USB camera on the market supports YUV and MJPEG image output.
YUV format: the USB camera is in a bitmap format and has a large data volume, most USB cameras currently adopt a YUV format, each pixel occupies 2 bytes, and for example, 640x480 resolution of 30 frames/s, the data volume per second is 640x480x2x 30-18432000 bytes, which is approximately equal to 17 MB.
Redirection: redirect, is to Redirect various network requests to other locations by various methods, such as: web page redirection, domain name redirection, and routing changes are also a type of redirection of data messages via a path.
In the prior art, the framework of the VDI system is shown in fig. 1, and includes a remote server with high performance, on which a plurality of virtual desktops can run, and a terminal is connected to the server through a network, so that a user can access the remote desktop through the terminal as if accessing a locally installed desktop. In the VDI system, the main computational burden is on a remote server, so that the terminal has a small computational burden, and can use a relatively inexpensive device with low computational power, or be referred to as a thin terminal. The thin terminal can request the server to access the virtual desktop, and in the VDI system, an administrator can conveniently operate the virtual desktop through a WEB configuration module on the server, for example, adding the virtual desktop, deleting the virtual desktop and the like.
Compared with a conventional PC, VDI has the following advantages: the desktop environment of a team or even a company is conveniently deployed, and only a few seconds are needed for creating and deleting a desktop; through a high-performance server, a plurality of desktops can be virtualized; because the cost of the terminal is lower, the cost of the server is shared, and the price is lower than that of the traditional computer; the data is stored in the server in a centralized manner, so that the leakage of confidential data and the like can be prevented.
In a VDI system, it is usually necessary to redirect an access to a USB camera externally connected to a local terminal, for example, to obtain image data from the camera, and then to send the obtained image data of the camera to an operating system of a remote server.
To this end, an embodiment of the present invention provides a method for transmitting data of a camera in a VDI system, the method can obtain each data packet in the process of obtaining a plurality of data packets sent by the camera, the one packet is buffered in the buffer area until a plurality of packets are buffered in the buffer area, wherein, the plurality of data packets are data packets forming a frame of image, then the image data in the plurality of data packets cached in the cache region are merged, so as to compress the merged image data into a target data packet by adopting a preset compression mode, reduce the size of the transmitted image data file, finally, send the compressed target data packet to the server, so that the server redirects the formed one target packet to the virtual desktop in the server virtual VDI system, therefore, it is possible to reduce overhead of a transmission bandwidth when transmitting camera data in the VDI system.
The method for transmitting camera data in the VDI system in the embodiment of the present invention may be applied to an application scenario as shown in fig. 2, where the application scenario includes a terminal device 10, a USB camera 11 in an external terminal device 10, and a server 12, where the terminal device may be any intelligent electronic device that can run according to a program and automatically process a large amount of data at a high speed, and such terminal devices may be a computer, an ipad, a mobile phone, and the like. The server 12 may be one server, or may be a server cluster or a cloud computing center formed by several servers.
The terminal device 10 and the server 12 are respectively provided with a redirection module, an operating system in the server 12 is provided with a virtual desktop, the terminal device 10 and the server 12 are connected through a network, and the network may be any one of communication networks such as a local area network, a wide area network, or a mobile internet. In this scenario, when image data sent by the USB camera 11 needs to be transmitted between the terminal device 10 and the server 12, the camera data in the VDI system may be transmitted according to the method provided by the embodiment of the present invention, so as to reduce overhead of data outgoing bandwidth.
It should be noted that the above-mentioned application scenarios are only presented to facilitate understanding of the spirit and principles of the present invention, and the present invention is not limited in this respect. Rather, embodiments of the present invention may be applied in any scenario where applicable.
The following describes a data transmission method for a camera in a VDI system according to an embodiment of the present invention with reference to an application scenario shown in fig. 2.
Referring to fig. 3, a method for transmitting data of a camera in a VDI system according to an embodiment of the present invention includes:
step 101: and sending the indication information of the camera access terminal equipment to the server.
In the embodiment of the present invention, the camera is a physical USB camera (hereinafter referred to as a camera for short) externally connected to the terminal device, when the camera is inserted into the terminal device, the terminal device sends a message that the camera is inserted into the terminal device to the remote server, where the message is the indication information in step 101, after the server receives the message, the server virtualizes a same USB camera and simulates an insertion signal through a USB redirection module in the server, and a virtual desktop in the server captures the virtual signal.
Step 102: and obtaining an instruction fed back by the server based on the indication information to read the image data in the camera.
In the embodiment of the present invention, the virtual desktop can perform an operation of reading the image data of the virtualized USB camera for the virtualized USB camera, that is, the USB redirection module on the server receives a read instruction for the device in the virtual desktop, redirects the read instruction to an instruction for reading the image data of the external USB camera in the terminal device, and then forwards the instruction to the terminal device through the network by the USB redirection module on the server. And the terminal equipment receives an instruction for reading the image data of the USB camera sent by the server through the USB redirection module arranged on the terminal equipment.
Step 103: and sending the obtained instruction to the camera.
In the embodiment of the present invention, the image data of the camera belongs to stream data, where the stream data refers to a group of data sequences that arrive sequentially, massively, quickly, and continuously, in VDI, a server end generally only needs to send a read instruction, that is, in the above 102, a terminal device generally only receives one instruction for acquiring image data in a camera externally connected to the terminal device, which is sent by the server end, and then the terminal device may continuously construct an instruction for reading the image data in the camera according to the received instruction, and send the continuously constructed read instruction to the camera.
Step 104: and acquiring a plurality of data packets sent by the camera, wherein the plurality of data packets are data packets forming one frame of image.
Referring to fig. 4, in the embodiment of the present invention, the image data of the camera is image data in YUV format, and before the camera sends the data of one frame of image to the terminal device, the camera divides the frame of image into a plurality of data packets, for example, in fig. 4, the frame of image is divided into N +1 data packets, which are data packet 1 to data packet N +1, respectively, each data packet in data packet 1 to data packet N +1 includes a part of the area in the frame of image in YUV format, for example, includes one or more lines in the frame of image, and then sends the plurality of data packets to the terminal device in sequence.
In the embodiment of the invention, in order to reduce the transmission bandwidth overhead of image data in the camera, when the camera sequentially sends a plurality of data packets to the terminal equipment, the terminal equipment buffers one data packet sent by the camera in the buffer unit every time the terminal equipment receives the data packet, until all the data packets of one frame of image are stored in the buffer unit.
In practical application, after a frame of image is divided into a plurality of data packets by a camera, each data packet consists of two parts, one part is a packet header and contains the information of the data packet; the other part is a data part, and the data of each data packet is a part of one image, which is hereinafter referred to as image data.
Therefore, in the embodiment of the present invention, the terminal device may further parse one data packet of the plurality of data packets, obtain image data included in the one data packet, and cache the image data in the cache unit until the plurality of image data in the obtained plurality of data packets are cached in the cache unit.
After the terminal device receives a data packet sent by the camera, the data packet is analyzed, so that image data is obtained from the data packet, then the image data is stored in the cache unit in sequence, then when a next data packet is obtained, the next data packet is analyzed, image data is obtained from the next data packet, and then the image data is stored in the cache unit in sequence until all the image data in a plurality of data packets of a frame of image received in sequence are stored in the cache unit.
For example, as shown in fig. 5, when receiving the data packet 1, the image data in the data packet 1 is obtained after parsing the data packet 1, and the image data in the data packet 1 is further stored in the buffer area, and then, when receiving the data packet 2, the image data in the data packet 2 is obtained after parsing the data packet 2, and the image data in the data packet 2 is stored in the buffer area until the image data in the data packet N +1 is popped out of the buffer area.
Step 105: and merging and compressing the plurality of data packets to form a target data packet.
In the embodiment of the present invention, after all image data in a plurality of data packets sent by a camera are stored in a cache unit, a terminal device may merge a plurality of image data cached in a cache region first, and then splice into a frame of complete image, and then compress the spliced frame of complete image by using a preset image compression method to form a compressed target data packet.
The preset image compression method may be a JPEG (Joint Photographic Experts GROUP, which is an international digital image compression standard), an HEVC (High Efficiency Video Coding, which is a new generation Video Coding standard after h.264) compression method, or lossy compression methods in other formats, which is not listed here.
In the embodiment of the invention, after a preset image compression method is adopted to compress a spliced complete image, the file size of a formed target data packet is far smaller than the sum of a plurality of data packets corresponding to a frame of image before merging and compression, and the quality of the restored image of the compressed target data packet is not lower than a set standard.
Step 106: and the terminal equipment sends the merged and compressed target data packet to a server.
In the embodiment of the present invention, after merging and compressing image data in a plurality of data packets corresponding to one frame of image into one target data packet, the terminal device may transmit the target data packet to a redirection module of the terminal device, and then send the target data packet to a server through the redirection module of the terminal device, so that the server receives the target data packet sent by the terminal device through the redirection module in the server.
Therefore, by the above method, in the process of obtaining a plurality of data packets sent by the camera, each time one data packet is obtained, the data packet is cached in the cache region until the data packets are cached in the cache region, wherein the data packets are data packets forming one frame of image, then the image data in the data packets cached in the cache region are merged so as to compress the merged image data into one target data packet by adopting a preset compression mode, the size of the transmitted image data file is reduced, and finally, the compressed target data packet is sent to the server so that the server redirects the formed target data packet to the virtual desktop in the VDI system of the server.
In this embodiment of the present invention, after receiving the data packet sent by the terminal device, the server may further execute the steps shown in fig. 6:
step 201: after obtaining a target data packet sent by the terminal equipment, the server decompresses the target data packet and splits the decompressed target data packet into a plurality of data packets;
step 202: redirecting the plurality of data packets to a virtual desktop in the VDI system.
In the embodiment of the present invention, in step 201, the server obtains the target data packet, that is, the merged and compressed target data sent by the terminal device in step 106, in step 201, the target data packet is decompressed, and the decompressed target data packet is split into a plurality of data packets, which may be specifically executed according to the following procedures:
step A: decompressing the target data packet to obtain a frame of image data;
and B: splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
and C: for one image data of the plurality of image data, one data packet having a specific format is combined by the one image data and the control information corresponding to the one image data, and the plurality of image data are combined into the plurality of data packets.
The specific format is a format that can be identified by the virtual desktop, and in the embodiment of the invention, the specific format is a YUV format used when the camera transmits image data.
In the embodiment of the present invention, after obtaining a target data packet sent by a terminal device, a server may decompress, that is, decompress, the target data packet to further reduce the target data packet into a frame of image data in a YUV format, split the frame of image data into a plurality of image data according to a preset protocol, that is, a UVC protocol, and then construct control information for each data packet in the plurality of split data packets according to the UVC protocol.
And for each image data in the plurality of image data, combining the image data and the corresponding control information into one data packet with YUV format, and combining the data packets into a plurality of data packets which are similar to the data packets transmitted to the terminal equipment by the camera equipment.
For example, as shown in fig. 7, after obtaining the target data packet sent by the terminal device, the server decompresses and restores the target data packet into one frame of image data in YUV format, and then splits (packetizing in fig. 7) the target data packet into 10 pieces of image data, only data packet 1 and data packet 2 are shown in fig. 7, and then constructs control information for each of the 10 pieces of image data according to the UVC protocol, and assuming that the 10 pieces of image data are respectively referred to as image data 1, image data 2, and image data 3 … … image data 10, and constructs control information as control information 1, control information 2, and control information 3 … … control information 10 for the 10 pieces of image data, then, data packet 1 in YUV format composed of image data 1 and control information 1, data packet 2 in YUV format composed of image data 2 and control information 2, and data packet 3 in YUV format composed of image data 3 and control information 3 YUV format 3 … … composed of image data 10 and control information 10 A data packet 10.
After decompressing and splitting the received target data packet sent by the terminal device into a plurality of data packets with specific formats according to the method described above, the server may execute step 202: and redirecting the plurality of data packets to the virtual desktop, namely redirecting the plurality of data packets to the virtual desktop in the server through a redirecting module in the server, and further completing the transmission of the image data of the camera.
Based on the same inventive concept, the embodiment of the present invention provides a terminal device for transmitting camera data, and the specific implementation of the camera data transmission method of the terminal device can refer to the description of the above method embodiment, and repeated details are not described again, and the terminal device includes:
the first obtaining unit is used for obtaining a plurality of data packets sent by the camera, wherein the data packets form a frame of image;
the compression unit is used for combining and compressing the plurality of data packets to form a target data packet;
a sending unit, configured to send the target data packet to a server, so that the server redirects the target data packet to a virtual desktop in the VDI system.
The compression unit is further configured to:
analyzing the plurality of data packets to obtain image data included in each data packet in the plurality of data packets;
synthesizing a frame of image according to the obtained image data;
and compressing the synthesized frame image by adopting a preset compression mode to form a target data packet.
Optionally, the file size of the target data packet is smaller than the sum of the plurality of data packets before merging and compressing, and/or the image quality after restoring the target data packet is not lower than a set standard.
Optionally, the first obtaining unit is further configured to:
sending the indication information of the camera access to the server;
obtaining an instruction which is fed back by the server based on the indication information and is used for reading the image data in the camera;
and sending the obtained instruction to the camera.
Optionally, the sending the target data packet to a server so that the server redirects the target data packet to a virtual desktop in the VDI system, specifically:
and sending the target data packet to a server, so that the server decompresses the target data packet, and splits the decompressed target data packet into a plurality of data packets, thereby redirecting the plurality of data packets to a virtual desktop in the VDI system.
Based on the same inventive concept, an embodiment of the present invention provides a server for data transmission of a camera, where specific implementation of a camera data transmission method of the server may refer to the description of the above method embodiment, and repeated descriptions are omitted, and the server includes:
a second obtaining unit, configured to obtain a target data packet sent by a terminal device, where the target data packet is a data packet formed by merging and compressing a plurality of data packets corresponding to a frame of image transmitted to the terminal device by a camera accessing the terminal device;
the decompression unit is used for decompressing the target data packet and splitting the decompressed target data packet into a plurality of data packets;
and the redirecting unit is used for redirecting the plurality of data packets to a virtual desktop in the VDI system.
Optionally, the decompression unit is further configured to:
decompressing the target data packet to obtain a frame of image data;
splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
for one image data in the plurality of image data, combining the one image data and the control information corresponding to the one image data into one data packet with a specific format, and combining the data packets into a plurality of data packets, wherein the specific format is a format which can be identified by the virtual desktop.
Optionally, the second obtaining unit is further configured to:
acquiring indication information of the camera access sent by the terminal equipment;
and sending an instruction for reading the image in the camera to the terminal equipment based on the indication information.
Based on the same inventive concept, the embodiment of the present invention provides a camera data transmission system, where the system includes a terminal device and a server for performing camera data transmission, where specific implementation of the terminal device and the server for performing camera data transmission may refer to the description of the above method embodiment, and repeated details are not described again.
Based on the same inventive concept, an embodiment of the present invention provides an information processing apparatus, comprising at least one processor and at least one memory, wherein the memory stores a computer program, which, when executed by the processor, causes the processor to execute the steps of the method for transmitting the camera data in the VDI system as described above.
Based on the same inventive concept, an embodiment of the present invention provides a storage medium storing computer instructions which, when run on a computer, cause the computer to perform the steps of a method for transmitting camera data in a VDI system as described above.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (13)

1. A method for transmitting camera data in a VDI system is characterized by comprising the following steps:
acquiring a plurality of data packets sent by a camera, wherein the data packets form a frame of image;
merging and compressing the plurality of data packets to form a target data packet;
sending the target data packet to a server so that the server redirects the target data packet to a virtual desktop in the VDI system;
the merging and compressing the multiple data packets to form a target data packet specifically includes:
analyzing the plurality of data packets to obtain image data included in each data packet in the plurality of data packets;
synthesizing a frame of complete image according to the obtained image data;
compressing the synthesized complete image frame by adopting a preset compression mode to form a target data packet; and decompressing the target data packet into a frame of image data.
2. The method as claimed in claim 1, wherein the file size of the target data packet is smaller than the sum of the plurality of data packets before merging and compression, and/or the image quality after restoration of the target data packet is not lower than a set standard.
3. The method of claim 2, wherein prior to obtaining the plurality of data packets sent by the camera, the method further comprises:
sending the indication information of the camera access to the server;
obtaining an instruction which is fed back by the server based on the indication information and is used for reading the image data in the camera;
and sending the obtained instruction to the camera.
4. The method according to any of claims 1 to 3, wherein the sending of the target packet to a server causes the server to redirect the target packet to a virtual desktop in the server Virtual Desktop Infrastructure (VDI) system, in particular:
and sending the target data packet to a server, so that the server decompresses the target data packet, and splits the decompressed target data packet into a plurality of data packets, thereby redirecting the plurality of data packets to a virtual desktop in the VDI system.
5. A method for transmitting camera data in a VDI system is characterized by comprising the following steps:
acquiring a target data packet sent by terminal equipment, wherein the target data packet is a plurality of data packets corresponding to a frame of image transmitted to the terminal equipment by a camera accessed to the terminal equipment, and the plurality of data packets are analyzed by the terminal equipment to acquire image data included in each data packet in the plurality of data packets; synthesizing a frame of complete image according to the obtained image data; compressing a data packet formed by a frame of complete image synthesized by adopting a preset compression mode, and decompressing the target data packet into a frame of image data;
decompressing the target data packet and splitting the decompressed target data packet into a plurality of data packets;
redirecting the plurality of data packets to a virtual desktop in the VDI system.
6. The method according to claim 5, wherein the decompressing the target packet and splitting the decompressed target packet into a plurality of packets specifically comprises:
decompressing the target data packet to obtain a frame of image data;
splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
for one image data in the plurality of image data, combining the one image data and the control information corresponding to the one image data into one data packet with a specific format, and combining the plurality of image data into a plurality of data packets, wherein the specific format is a format which can be identified by the virtual desktop.
7. The method of claim 5 or 6, wherein before obtaining the target data packet sent by the terminal device, the method comprises:
acquiring indication information of the camera access sent by the terminal equipment;
and sending an instruction for reading the image data in the camera to the terminal equipment based on the indication information.
8. A terminal device for data transmission of a camera, comprising:
the device comprises a first obtaining unit, a second obtaining unit and a processing unit, wherein the first obtaining unit is used for obtaining a plurality of data packets sent by a camera, and the data packets are data packets forming a frame of image;
the compression unit is used for combining and compressing the plurality of data packets to form a target data packet;
a sending unit, configured to send the target data packet to a server, so that the server redirects the target data packet to a virtual desktop in the VDI system;
wherein the compression unit is further configured to:
analyzing the plurality of data packets to obtain image data included in each data packet in the plurality of data packets;
synthesizing a frame of image according to the obtained image data;
compressing the synthesized frame image by adopting a preset compression mode to form a target data packet; and decompressing the target data packet into a frame of image data.
9. A server for data transmission of a camera, comprising:
a second obtaining unit, configured to obtain a target data packet sent by a terminal device, where the data packet is a plurality of data packets corresponding to a frame of image transmitted to the terminal device by a camera accessing the terminal device, and the plurality of data packets are analyzed by the terminal device, so as to obtain image data included in each of the plurality of data packets; synthesizing a frame of image according to the obtained image data; compressing a data packet formed by a frame of image synthesized by adopting a preset compression mode, and decompressing the target data packet into frame of image data;
the decompression unit is used for decompressing the target data packet and splitting the decompressed target data packet into a plurality of data packets;
and the redirecting unit is used for redirecting the plurality of data packets to a virtual desktop in the VDI system.
10. The server of claim 9, wherein the decompression unit is further to:
decompressing the target data packet to obtain a frame of image data;
splitting the frame of image data into a plurality of image data according to a preset protocol, and constructing control information for each of the plurality of image data;
for one image data in the plurality of image data, combining the one image data and the control information corresponding to the one image data into one data packet with a specific format, and combining the plurality of image data into a plurality of data packets, wherein the specific format is a format which can be identified by the virtual desktop.
11. A camera data transmission system, comprising:
at least one terminal device according to claim 8; and
at least one server according to claim 9 or 10.
12. An information processing apparatus comprising at least one processor and at least one memory, wherein the memory stores a computer program that, when executed by the processor, causes the processor to perform the steps of the method of any one of claims 1 to 7.
13. A storage medium storing computer instructions which, when executed on a computer, cause the computer to perform the steps of the method according to any one of claims 1 to 7.
CN201811023333.0A 2018-09-03 2018-09-03 Camera data transmission method, device and system and storage medium Active CN109040786B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811023333.0A CN109040786B (en) 2018-09-03 2018-09-03 Camera data transmission method, device and system and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811023333.0A CN109040786B (en) 2018-09-03 2018-09-03 Camera data transmission method, device and system and storage medium

Publications (2)

Publication Number Publication Date
CN109040786A CN109040786A (en) 2018-12-18
CN109040786B true CN109040786B (en) 2022-01-11

Family

ID=64623064

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811023333.0A Active CN109040786B (en) 2018-09-03 2018-09-03 Camera data transmission method, device and system and storage medium

Country Status (1)

Country Link
CN (1) CN109040786B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109587085A (en) * 2018-12-29 2019-04-05 深圳市网心科技有限公司 A kind of data transmission method and its relevant device
CN109639826A (en) * 2019-01-04 2019-04-16 厦门中控智慧信息技术有限公司 A kind of data transmission method, terminal device and server
CN114040017A (en) * 2021-11-08 2022-02-11 麒麟软件有限公司 Remote desktop server camera relocation system and method for Android system
CN115065868A (en) * 2022-04-12 2022-09-16 北京字节跳动网络技术有限公司 Image processing method, apparatus, device, system and medium
CN116405733B (en) * 2023-06-08 2023-09-19 新华三技术有限公司 Data transmission method and electronic equipment

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103533034A (en) * 2013-09-28 2014-01-22 福建星网锐捷软件有限公司 Method for seamlessly using cloud terminal local camera in VDI (Virtual Device Interface) virtual desktop
CN104123244A (en) * 2013-04-25 2014-10-29 鸿富锦精密工业(深圳)有限公司 USB redirection system and method
CN105207975A (en) * 2014-06-20 2015-12-30 北京云端时代科技有限公司 Data transmission method and data transmission system for USB image equipment under VDI architecture
CN106101548A (en) * 2016-07-08 2016-11-09 北京国电通网络技术有限公司 A kind of method and apparatus of cloud terminal processes camera video data
CN106161541A (en) * 2015-04-10 2016-11-23 中兴通讯股份有限公司 Data transmission method, device and system
CN106375233A (en) * 2015-11-09 2017-02-01 北京智谷技术服务有限公司 Data transmission method and data transmission device

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635844B (en) * 2008-07-23 2012-05-30 比亚迪股份有限公司 Image data transmission method and device
CN101634677B (en) * 2008-07-24 2012-05-23 芯原股份有限公司 Digital instrument based on UVC transmission protocol and use method thereof
US8886708B2 (en) * 2009-12-02 2014-11-11 Vmware, Inc. Centralized computer network virtualization environment
CN104639501B (en) * 2013-11-07 2018-11-16 华为技术有限公司 A kind of method of data stream transmitting, equipment and system
CN106027882A (en) * 2016-05-16 2016-10-12 深圳市青葡萄科技有限公司 Redirection method for camera arranged in virtual environment
CN106851317A (en) * 2017-02-15 2017-06-13 福建时迅信息科技有限公司 A kind of method and system for improving view data transmission speed
CN107087169B (en) * 2017-03-22 2019-11-12 建荣半导体(深圳)有限公司 A kind of compression method, UVC video equipment and electronic equipment
CN108319493A (en) * 2017-06-28 2018-07-24 新华三云计算技术有限公司 Data processing method, device and machine readable storage medium
CN107506232A (en) * 2017-09-26 2017-12-22 深信服科技股份有限公司 A kind of image acquisition method and system
CN107643936A (en) * 2017-10-26 2018-01-30 上海金途信息科技有限公司 A kind of image class peripheral data Redirectional system based on QEMU camera devices
CN108304247A (en) * 2017-12-19 2018-07-20 华为技术有限公司 The method and apparatus of access camera, server, readable storage medium storing program for executing
CN108055595B (en) * 2017-12-26 2020-10-27 蚌埠中科云巢信息科技有限公司 Video image redirection method and computer-readable storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104123244A (en) * 2013-04-25 2014-10-29 鸿富锦精密工业(深圳)有限公司 USB redirection system and method
CN103533034A (en) * 2013-09-28 2014-01-22 福建星网锐捷软件有限公司 Method for seamlessly using cloud terminal local camera in VDI (Virtual Device Interface) virtual desktop
CN105207975A (en) * 2014-06-20 2015-12-30 北京云端时代科技有限公司 Data transmission method and data transmission system for USB image equipment under VDI architecture
CN106161541A (en) * 2015-04-10 2016-11-23 中兴通讯股份有限公司 Data transmission method, device and system
CN106375233A (en) * 2015-11-09 2017-02-01 北京智谷技术服务有限公司 Data transmission method and data transmission device
CN106101548A (en) * 2016-07-08 2016-11-09 北京国电通网络技术有限公司 A kind of method and apparatus of cloud terminal processes camera video data

Also Published As

Publication number Publication date
CN109040786A (en) 2018-12-18

Similar Documents

Publication Publication Date Title
CN109040786B (en) Camera data transmission method, device and system and storage medium
JP5123186B2 (en) Remote protocol support for large object communication in any format
US20150201043A1 (en) Methods and systems for encoding/decoding files and transmissions thereof
KR102277124B1 (en) Data transmission methods, devices, servers and storage media
JP2014534492A5 (en)
KR20040104515A (en) Method and apparatus for generating graphical and media displays at a client
JP2005521280A5 (en)
CN111625211B (en) Screen projection method and device, android device and display device
WO2024061295A1 (en) Video data processing method and system
US20240045641A1 (en) Screen sharing display method and apparatus, device, and storage medium
US20220066812A1 (en) Method for remotely accessing data of a usb device by a virtual machine
JPH07120319B2 (en) Computer workstation
WO2023040825A1 (en) Media information transmission method, computing device and storage medium
CN110740352B (en) SPICE protocol-based difference image display method in video card transparent transmission environment
KR20180086112A (en) Apparatus and method for playing back and seeking media in web browser
CN111436009B (en) Real-time video stream transmission and display method and transmission and play system
US20100049832A1 (en) Computer program product, a system and a method for providing video content to a target system
US20230082784A1 (en) Point cloud encoding and decoding method and apparatus, computer-readable medium, and electronic device
CN110798700B (en) Video processing method, video processing device, storage medium and electronic equipment
CN112954374B (en) Video data processing method and device, electronic equipment and storage medium
CN111800649A (en) Method and device for storing video and method and device for generating video
CN116708589B (en) Method, device, computer equipment and storage medium for compressing packet header
CN115802098B (en) Cloud application data interaction method, client, rendering end and system
CN110636374A (en) Method and device for searching information
JP6436762B2 (en) Information processing apparatus and service providing method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20181218

Assignee: Ruijie network (Suzhou) Co.,Ltd.

Assignor: RUIJIE NETWORKS Co.,Ltd.

Contract record no.: X2022350000027

Denomination of invention: Camera data transmission method, device, system and storage medium

Granted publication date: 20220111

License type: Common License

Record date: 20220817