[go: up one dir, main page]

CN116132434A - A method and system for sharing a notebook camera device to a cloud desktop - Google Patents

A method and system for sharing a notebook camera device to a cloud desktop Download PDF

Info

Publication number
CN116132434A
CN116132434A CN202211720635.XA CN202211720635A CN116132434A CN 116132434 A CN116132434 A CN 116132434A CN 202211720635 A CN202211720635 A CN 202211720635A CN 116132434 A CN116132434 A CN 116132434A
Authority
CN
China
Prior art keywords
cloud desktop
video data
camera device
sharing
notebook
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.)
Pending
Application number
CN202211720635.XA
Other languages
Chinese (zh)
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.)
Nanjing Astute Tec Co ltd
Original Assignee
Nanjing Astute Tec 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 Nanjing Astute Tec Co ltd filed Critical Nanjing Astute Tec Co ltd
Priority to CN202211720635.XA priority Critical patent/CN116132434A/en
Publication of CN116132434A publication Critical patent/CN116132434A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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 or manipulating encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Studio Devices (AREA)

Abstract

本发明涉及云桌面技术领域,尤其涉及一种共享笔记本摄像头设备到云桌面的方法和系统,方法包括:用于控制笔记本的客户端模块初始化并云桌面建立连接通道;用于控制云桌面的服务端模块初始化;客户端模块对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;服务端模块对视频数据进行接收、解码并存储。本发明免装驱动,实现笔记本摄像头设备到云桌面的共享。

Figure 202211720635

The present invention relates to the field of cloud desktop technology, and in particular to a method and system for sharing a notebook camera device to a cloud desktop. The method includes: controlling the initialization of the client module of the notebook and establishing a connection channel for the cloud desktop; and controlling the service of the cloud desktop The terminal module is initialized; the client module collects and encodes the video data of the local notebook camera device and sends it to the cloud desktop; the server module receives, decodes and stores the video data. The invention does not install the driver, and realizes the sharing of the notebook camera device to the cloud desktop.

Figure 202211720635

Description

一种共享笔记本摄像头设备到云桌面的方法和系统A method and system for sharing a notebook camera device to a cloud desktop

技术领域technical field

本发明涉及云桌面技术领域,尤其涉及一种共享笔记本摄像头设备到云桌面的方法和系统。The invention relates to the technical field of cloud desktops, in particular to a method and system for sharing a notebook camera device to a cloud desktop.

背景技术Background technique

摄像头设备是Windows电脑桌面中最常用的视频输入设备之一,它在社交、会议、直播等场景中都有广泛的应用。在使用普通PC机时,只要将外接的摄像头设备插入到USB或其它专用接口中,就可以被各种领域的视频采集应用软件所使用,如果摄像头设备需要安装专有驱动,则需要在该PC机上安装后再进行使用。但是位于互联网的Windows云桌面可能会被多个PC机、笔记本等客户端发起连接和使用,客户端本地设备变化多端,如果直接选择将本地的USB摄像头通过虚拟USB总线重定向的手段透传到云桌面中的方案,首先云桌面同一时刻只会使用一个摄像头,不适合安装太多的设备驱动,可能会有冲突;其次,作为云桌面客户端的笔记本电脑通常自身带有摄像头设备,没有采用外接的USB摄像头,因此也无法通过USB外设重定向的手段在云桌面中使用本地笔记本电脑的摄像头。The camera device is one of the most commonly used video input devices on the Windows computer desktop, and it is widely used in social, conference, live broadcast and other scenarios. When using an ordinary PC, as long as the external camera device is inserted into a USB or other dedicated interface, it can be used by video capture application software in various fields. If the camera device needs to install a proprietary driver, it needs to be installed on the PC. Install it on the machine before using it. However, the Windows cloud desktop located on the Internet may be connected and used by multiple PCs, notebooks and other clients, and the local devices of the clients are varied. If you directly choose to transparently transmit the local USB camera to the For the solution in the cloud desktop, firstly, the cloud desktop will only use one camera at a time, and it is not suitable to install too many device drivers, as there may be conflicts; secondly, the laptop as the cloud desktop client usually has its own camera device, and no external camera is used. Therefore, the camera of the local laptop cannot be used in the cloud desktop through the means of USB peripheral redirection.

使用普通配置或者低配的笔记本电脑客户端访问位于私有云或公有云上的高配置云桌面进行高性能需求场景的音视频相关操作,已经是比较常见的云桌面消费场景。It is already a relatively common cloud desktop consumption scenario to use ordinary or low-configuration laptop clients to access high-configuration cloud desktops located on private clouds or public clouds to perform audio and video-related operations in high-performance scenarios.

鉴于此,提供一种共享笔记本摄像头设备到云桌面的方法和系统成为本领域亟待解决的问题。In view of this, it is an urgent problem to be solved in this field to provide a method and system for sharing a notebook camera device to a cloud desktop.

发明内容Contents of the invention

本发明的目的是为了提供一种共享笔记本摄像头设备到云桌面的方法和系统,免装驱动,实现笔记本摄像头设备到云桌面的共享。The purpose of the present invention is to provide a method and system for sharing a notebook camera device to a cloud desktop, free from installation of a driver, and realize sharing of a notebook camera device to a cloud desktop.

为解决以上技术问题,本发明的技术方案为:For solving above technical problem, technical scheme of the present invention is:

一种共享笔记本摄像头设备到云桌面的方法,包括:A method for sharing a notebook camera device to a cloud desktop, including:

S100:用于控制笔记本的客户端模块初始化并云桌面建立连接通道;S100: Initialize the client module for controlling the notebook and establish a connection channel for the cloud desktop;

S200:用于控制云桌面的服务端模块初始化;S200: Initialize the server module for controlling the cloud desktop;

S300:客户端模块对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;S400:服务端模块对视频数据进行接收、解码并存储。S300: the client module collects and encodes the video data of the local notebook camera device and sends it to the cloud desktop; S400: the server module receives, decodes and stores the video data.

进一步地,步骤S100包括:Further, step S100 includes:

S110:获取云桌面连接参数;S110: Obtain cloud desktop connection parameters;

S120:与云桌面建立连接通道;S120: Establish a connection channel with the cloud desktop;

S130:建立并启动视频数据采集线程。S130: Establish and start a video data collection thread.

进一步地,步骤S110中,参数包括地址和端口号。Further, in step S110, the parameters include address and port number.

进一步地,步骤S120中,连接通道为TCP通道。Further, in step S120, the connection channel is a TCP channel.

进一步地,步骤S200包括:Further, step S200 includes:

S210:侦听预设的地址和端口号;S210: listening to a preset address and port number;

S220:接收来自客户端的连接;S220: Receive a connection from the client;

S230:启动视频数据接收线程。S230: Start a video data receiving thread.

进一步地,步骤S300中,客户端模块使用视频数据采集线程采集视频数据,具体包括:Further, in step S300, the client module collects video data using a video data collection thread, specifically including:

S310:根据设备索引号从摄像头读取数据帧;S310: Read the data frame from the camera according to the device index number;

S320:将数据帧编码为YUV视频数据包;S320: encode the data frame into a YUV video data packet;

S330:发送到云桌面后返回步骤S310进行循环采集。S330: After sending to the cloud desktop, return to step S310 for cyclic collection.

进一步地,步骤S400中,服务端模块使用视频数据接收线程来接收数据,具体包括:S410:创建视频缓冲区队列;Further, in step S400, the server module uses the video data receiving thread to receive data, specifically including: S410: Create a video buffer queue;

S420:接收视频数据包;S420: Receive video data packets;

S430:将视频数据包通过解码器进行解码,获取解码后的数据帧;S430: Decode the video data packet through a decoder to obtain a decoded data frame;

S440:将数据帧写入视频缓冲区队列,然后判断解码器是否空闲,若空闲,则返回步骤S420继续接收数据包,否则,返回步骤S430。S440: Write the data frame into the video buffer queue, and then judge whether the decoder is idle, if idle, return to step S420 to continue receiving data packets, otherwise, return to step S430.

进一步地,在步骤S300和S400中,编码和解码,采用的是H264协议。Further, in steps S300 and S400, the encoding and decoding adopt the H264 protocol.

一种共享笔记本摄像头设备到云桌面的系统,包括客户端模块和服务端模块;A system for sharing a notebook camera device to a cloud desktop, including a client module and a server module;

客户端模块,用于初始化并云桌面建立连接通道;用于对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;The client module is used to initialize and establish a connection channel for the cloud desktop; it is used to collect and encode the video data of the local notebook camera device and send it to the cloud desktop;

服务端模块,用于初始化;用于在云桌面中对视频数据进行接收、解码并存储。The server module is used for initialization; it is used for receiving, decoding and storing video data in the cloud desktop.

本发明具有如下有益效果:The present invention has following beneficial effects:

本发明通过客户端模块在笔记本电脑的本地摄像头进行视频数据采集、编码,通过TCP网络传输到云桌面中,在云桌面中通过服务端模块对数据进行解码。本发明中,摄像头设备为笔记本电脑自带的位于屏幕上方的摄像头设备,并未接入到USB总线,本发明远程云桌面内部不需要安装摄像设备内核驱动,仅需在用户态进行设备模拟和数据渲染,可以将本地笔记本自带的非USB摄像头透传到云桌面中,被云桌面中的常见的网络会议等视频录制类应用软件所正常使用,满足云桌面用户的摄像头共享方案,省去了各式各样的驱动安装过程,给云桌面系统带来不稳定性。In the present invention, the video data is collected and encoded by the local camera of the notebook computer through the client module, transmitted to the cloud desktop through the TCP network, and the data is decoded by the server module in the cloud desktop. In the present invention, the camera device is the camera device located above the screen that comes with the notebook computer, and is not connected to the USB bus. The remote cloud desktop of the present invention does not need to install the camera device kernel driver, and only needs to perform device simulation and Data rendering can transparently transmit the non-USB camera that comes with the local notebook to the cloud desktop, which can be normally used by common video recording applications such as web conferencing in the cloud desktop, satisfying the camera sharing scheme of cloud desktop users, eliminating the need for A variety of driver installation processes have been introduced, which brings instability to the cloud desktop system.

附图说明Description of drawings

图1为本发明方法的整体流程示意图;Fig. 1 is the overall flow diagram of the inventive method;

图2为本发明方法中客户端模块初始化的流程示意图;Fig. 2 is a schematic flow chart of client module initialization in the method of the present invention;

图3为本发明方法中服务端模块初始化的流程示意图;Fig. 3 is a schematic flow chart of server module initialization in the method of the present invention;

图4为本发明方法中视频数据采集线程的流程示意图;Fig. 4 is the schematic flow sheet of video data acquisition thread in the inventive method;

图5为本发明方法中视频数据接收线程的流程示意图。Fig. 5 is a schematic flowchart of the video data receiving thread in the method of the present invention.

图6为本发明系统的结构示意图。Fig. 6 is a schematic structural diagram of the system of the present invention.

具体实施方式Detailed ways

为了使本发明的目的、技术方案及优点更加清楚明白,下面结合附图和具体实施例对本发明作进一步详细说明。In order to make the object, technical solution and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.

请参考图1,本发明为一种免装驱动共享笔记本摄像头设备到云桌面的方法,其包括:Please refer to Fig. 1, the present invention is a kind of installation-free drive shared notebook camera device to the method for cloud desktop, and it comprises:

S100:用于控制笔记本的客户端模块初始化并云桌面建立连接通道;S100: Initialize the client module for controlling the notebook and establish a connection channel for the cloud desktop;

S200:用于控制云桌面的服务端模块初始化;S200: Initialize the server module for controlling the cloud desktop;

S300:客户端模块对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;S400:服务端模块对视频数据进行接收、解码并存储。S300: the client module collects and encodes the video data of the local notebook camera device and sends it to the cloud desktop; S400: the server module receives, decodes and stores the video data.

下面分别对图1中的各个步骤进行具体说明。Each step in FIG. 1 will be specifically described below.

在步骤S100中,用于控制笔记本的客户端模块初始化并云桌面建立连接通道。In step S100, the client module for controlling the notebook is initialized and the cloud desktop establishes a connection channel.

具体而言,客户端模块初始化过程中创建了两个主要的工作线程,一是负责视频采集和编码发送的视频数据采集线程,二是负责处理和接收来自远程桌面中的设备控制消息的设备管理线程;Specifically, two main working threads are created during the initialization process of the client module, one is the video data collection thread responsible for video collection and encoding and sending, and the other is the device management thread responsible for processing and receiving device control messages from the remote desktop thread;

参阅图2,步骤S100初始化流程包括:Referring to Fig. 2, the initialization process of step S100 includes:

S110:获取云桌面连接参数;参数包括地址和端口号;S110: Obtain cloud desktop connection parameters; parameters include addresses and port numbers;

S120:与云桌面建立连接通道;连接通道为TCP通道;S120: Establish a connection channel with the cloud desktop; the connection channel is a TCP channel;

S130:建立并启动视频数据采集线程;建立并启动设备管理线程。S130: Establish and start a video data acquisition thread; establish and start a device management thread.

在步骤S200中,用于控制云桌面的服务端模块初始化。In step S200, the server module for controlling the cloud desktop is initialized.

参阅图3,步骤S200包括:Referring to Figure 3, step S200 includes:

S210:侦听预设的地址和端口号;S210: listening to a preset address and port number;

S220:接收来自客户端的连接;S220: Receive a connection from the client;

S230:启动视频数据接收线程。S230: Start a video data receiving thread.

在步骤S300中,客户端模块对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面。In step S300, the client module collects and encodes the video data of the local notebook camera device and sends it to the cloud desktop.

参阅图4,客户端模块使用视频数据采集线程采集视频数据,执行的是客户端的核心任务。视频数据采集线程是客户端模块初始化时创建的。步骤S300具体包括:Referring to Fig. 4, the client module uses the video data collection thread to collect video data, and executes the core task of the client. The video data acquisition thread is created when the client module is initialized. Step S300 specifically includes:

S310:根据设备索引号从摄像头读取数据帧;S310: Read the data frame from the camera according to the device index number;

S320:将数据帧编码为YUV视频数据包;S320: encode the data frame into a YUV video data packet;

S330:发送到云桌面后返回步骤S310进行循环采集;S330: return to step S310 for cyclic collection after sending to the cloud desktop;

本实施例中,视频数据采集线程基于OpenCV库,它的VideoCapture对象可以根据设备索引号进行数据采集,不依赖设备的PCI/USB总线类型。In this embodiment, the video data acquisition thread is based on the OpenCV library, and its VideoCapture object can perform data acquisition according to the device index number, independent of the PCI/USB bus type of the device.

在步骤S400中,服务端模块对视频数据进行接收、解码并存储。In step S400, the server module receives, decodes and stores the video data.

参阅图5,服务端模块使用视频数据接收线程来接收数据,将收到的每一个数据包,喂给解码器,再从解码器中读取解码后的图像帧;步骤S400具体包括:Referring to Fig. 5, the server module uses the video data receiving thread to receive data, feeds each data packet received to the decoder, and then reads the decoded image frame from the decoder; step S400 specifically includes:

S410:创建视频缓冲区队列;S410: Create a video buffer queue;

S420:接收视频数据包;S420: Receive video data packets;

S430:将视频数据包通过解码器进行解码,获取解码后的数据帧;S430: Decode the video data packet through a decoder to obtain a decoded data frame;

S440:将数据帧写入视频缓冲区队列,然后判断解码器是否空闲,若空闲,则返回步骤S420继续接收数据包,否则,返回步骤S430。S440: Write the data frame into the video buffer queue, and then judge whether the decoder is idle, if idle, return to step S420 to continue receiving data packets, otherwise, return to step S430.

在步骤S300和S400中,编码和解码,采用的是H264协议。In steps S300 and S400, the encoding and decoding uses the H264 protocol.

本实施例中,视频缓冲区基于共享内存机制,是一个采用DirecxShow机制模拟的虚拟摄像头设备提供的,它负责从该缓冲区读取解码后的图像帧,并交给用于模拟摄像头的DirecxShow Source Filter。微软的DirectShow(简称dshow)提供了通用的接口供软硬件实现自己的Filter,基于DirectShow的应用程序则通过控制各Filter来控制各软硬件设备,它能够在用户态实现对音视频设备的模拟。In this embodiment, the video buffer is based on the shared memory mechanism and is provided by a virtual camera device simulated by the DirecxShow mechanism. It is responsible for reading the decoded image frame from the buffer and handing it over to the DirecxShow Source for simulating the camera. Filter. Microsoft's DirectShow (dshow for short) provides a general interface for software and hardware to realize their own Filter, and applications based on DirectShow control each software and hardware device by controlling each Filter, and it can realize the simulation of audio and video devices in user mode.

本发明基于dshow实现一个Source Filter,让其能够像其它物理摄像头所对应的Filter那样能够通过自己的输出Pin稳定向外传输视频流,这样下游的Filter就可以像调用摄像头Filter一样调用我们的虚拟摄像头Filter。将开发好的摄像头Filter组件部署在云桌面内部,并且登记到Windows云桌面的注册表中,就能够在云桌面内部模拟一个摄像头设备给各种应用软件所使用。The present invention implements a Source Filter based on dshow, so that it can stably transmit the video stream through its own output Pin like the Filter corresponding to other physical cameras, so that the downstream Filter can call our virtual camera like a camera Filter Filter. Deploy the developed camera Filter component inside the cloud desktop and register it in the registry of the Windows cloud desktop, so that a camera device can be simulated inside the cloud desktop for use by various application software.

在另外的实施例中,参阅图6,本发明还提供一种共享笔记本摄像头设备到云桌面的系统,包括客户端模块和服务端模块;In another embodiment, referring to FIG. 6, the present invention also provides a system for sharing a notebook camera device to a cloud desktop, including a client module and a server module;

客户端模块,用于实现上述步骤S100和S300,即用于初始化并云桌面建立连接通道;用于对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;The client module is used to implement the above steps S100 and S300, that is, it is used to initialize and establish a connection channel with the cloud desktop; it is used to collect and encode the video data of the local notebook camera device and send it to the cloud desktop;

服务端模块,用于实现上述步骤S200和S400,即用于初始化;用于在云桌面中对视频数据进行接收、解码并存储。The server module is used to implement the above steps S200 and S400, that is, to initialize; to receive, decode and store video data in the cloud desktop.

本发明未涉及部分均与现有技术相同或采用现有技术加以实现。The parts not involved in the present invention are the same as the prior art or implemented by adopting the prior art.

以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。The above content is a further detailed description of the present invention in conjunction with specific embodiments, and it cannot be assumed that the specific implementation of the present invention is limited to these descriptions. For those of ordinary skill in the technical field of the present invention, without departing from the concept of the present invention, some simple deduction or replacement can be made, which should be regarded as belonging to the protection scope of the present invention.

Claims (9)

1.一种共享笔记本摄像头设备到云桌面的方法,其特征在于:包括S100:用于控制笔记本的客户端模块初始化并云桌面建立连接通道;1. A method for sharing a notebook camera device to a cloud desktop, characterized in that: comprising S100: for controlling the initialization of the client module of the notebook and establishing a connection channel for the cloud desktop; S200:用于控制云桌面的服务端模块初始化;S200: Initialize the server module for controlling the cloud desktop; S300:客户端模块对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;S300: the client module collects and encodes the video data of the local notebook camera device and sends it to the cloud desktop; S400:服务端模块对视频数据进行接收、解码并存储。S400: The server module receives, decodes and stores the video data. 2.根据权利要求1所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S100包括:2. The method for sharing a notebook camera device to a cloud desktop according to claim 1, wherein step S100 includes: S110:获取云桌面连接参数;S110: Obtain cloud desktop connection parameters; S120:与云桌面建立连接通道;S120: Establish a connection channel with the cloud desktop; S130:建立并启动视频数据采集线程。S130: Establish and start a video data collection thread. 3.根据权利要求2所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S110中,参数包括地址和端口号。3. The method for sharing a notebook camera device to a cloud desktop according to claim 2, wherein in step S110, the parameters include address and port number. 4.根据权利要求2所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S120中,连接通道为TCP通道。4. The method for sharing a notebook camera device to a cloud desktop according to claim 2, wherein in step S120, the connection channel is a TCP channel. 5.根据权利要求1所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S200包括:5. The method for sharing a notebook camera device to a cloud desktop according to claim 1, wherein step S200 includes: S210:侦听预设的地址和端口号;S210: listening to a preset address and port number; S220:接收来自客户端的连接;S220: Receive a connection from the client; S230:启动视频数据接收线程。S230: Start a video data receiving thread. 6.根据权利要求1所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S300中,客户端模块使用视频数据采集线程采集视频数据,具体包括:6. The method for sharing a notebook camera device to a cloud desktop according to claim 1, characterized in that: in step S300, the client module uses a video data collection thread to collect video data, specifically comprising: S310:根据设备索引号从摄像头读取数据帧;S310: Read the data frame from the camera according to the device index number; S320:将数据帧编码为YUV视频数据包;S320: encode the data frame into a YUV video data packet; S330:发送到云桌面后返回步骤S310进行循环采集。S330: After sending to the cloud desktop, return to step S310 for cyclic collection. 7.根据权利要求1所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:步骤S400中,服务端模块使用视频数据接收线程来接收数据,具体包括:7. The method for sharing a notebook camera device to a cloud desktop according to claim 1, wherein in step S400, the server module uses a video data receiving thread to receive data, specifically comprising: S410:创建视频缓冲区队列;S410: Create a video buffer queue; S420:接收视频数据包;S420: Receive video data packets; S430:将视频数据包通过解码器进行解码,获取解码后的数据帧;S430: Decode the video data packet through a decoder to obtain a decoded data frame; S440:将数据帧写入视频缓冲区队列,然后判断解码器是否空闲,若空闲,则返回步骤S420继续接收数据包,否则,返回步骤S430。S440: Write the data frame into the video buffer queue, and then judge whether the decoder is idle, if idle, return to step S420 to continue receiving data packets, otherwise, return to step S430. 8.根据权利要求1所述的共享笔记本摄像头设备到云桌面的方法,其特征在于:在步骤S300和S400中,编码和解码,采用的是H264协议。8. The method for sharing a notebook camera device to a cloud desktop according to claim 1, characterized in that: in steps S300 and S400, the encoding and decoding adopt the H264 protocol. 9.一种共享笔记本摄像头设备到云桌面的系统,其特征在于:包括客户端模块和服务端模块;9. A system for sharing a notebook camera device to a cloud desktop, characterized in that: it includes a client module and a server module; 客户端模块,用于初始化并云桌面建立连接通道;用于对本地笔记本摄像头设备的视频数据进行采集、编码后发送至云桌面;The client module is used to initialize and establish a connection channel for the cloud desktop; it is used to collect and encode the video data of the local notebook camera device and send it to the cloud desktop; 服务端模块,用于初始化;用于在云桌面中对视频数据进行接收、解码并存储。The server module is used for initialization; it is used for receiving, decoding and storing video data in the cloud desktop.
CN202211720635.XA 2022-12-30 2022-12-30 A method and system for sharing a notebook camera device to a cloud desktop Pending CN116132434A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211720635.XA CN116132434A (en) 2022-12-30 2022-12-30 A method and system for sharing a notebook camera device to a cloud desktop

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211720635.XA CN116132434A (en) 2022-12-30 2022-12-30 A method and system for sharing a notebook camera device to a cloud desktop

Publications (1)

Publication Number Publication Date
CN116132434A true CN116132434A (en) 2023-05-16

Family

ID=86298612

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211720635.XA Pending CN116132434A (en) 2022-12-30 2022-12-30 A method and system for sharing a notebook camera device to a cloud desktop

Country Status (1)

Country Link
CN (1) CN116132434A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117319592A (en) * 2023-12-01 2023-12-29 银河麒麟软件(长沙)有限公司 Cloud desktop camera redirection method, system and medium

Citations (4)

* 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
CN106101548A (en) * 2016-07-08 2016-11-09 北京国电通网络技术有限公司 A kind of method and apparatus of cloud terminal processes camera video data
CN106331733A (en) * 2016-09-28 2017-01-11 广东科学技术职业学院 A method and system for real-time processing of audio and video data on a desktop cloud terminal
US10462216B1 (en) * 2018-05-04 2019-10-29 Citrix Systems, Inc. WebRTC API redirection with interception techniques

Patent Citations (4)

* 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
CN106101548A (en) * 2016-07-08 2016-11-09 北京国电通网络技术有限公司 A kind of method and apparatus of cloud terminal processes camera video data
CN106331733A (en) * 2016-09-28 2017-01-11 广东科学技术职业学院 A method and system for real-time processing of audio and video data on a desktop cloud terminal
US10462216B1 (en) * 2018-05-04 2019-10-29 Citrix Systems, Inc. WebRTC API redirection with interception techniques

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
剑指霄壤: ""DirectShow摄像头和虚拟摄像头"", Retrieved from the Internet <URL:https://www.jianshu.com/p/37c8de76271a> *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117319592A (en) * 2023-12-01 2023-12-29 银河麒麟软件(长沙)有限公司 Cloud desktop camera redirection method, system and medium
CN117319592B (en) * 2023-12-01 2024-03-26 银河麒麟软件(长沙)有限公司 Cloud desktop camera redirection method, system and medium

Similar Documents

Publication Publication Date Title
US10721282B2 (en) Media acceleration for virtual computing services
US9146884B2 (en) Push pull adaptive capture
JP2023126832A (en) Method and system for making functional devices available to participants of meetings
WO2022096017A1 (en) Content display method and apparatus
WO2015035767A1 (en) Media control method and device based on desktop cloud
TWI495330B (en) System and method for efficiently streaming digital video
US8504694B2 (en) Remote content classification and transmission using multiple transport channels
CN107592551B (en) Method and device for cloud streaming service
CN104023191A (en) Android-based camera projection system and implementation method
WO2015196590A1 (en) Method and apparatus for playing desktop cloud video
CA2563782A1 (en) System and methods for using graphics hardware for real time two and three dimensional, single definition, and high definition video effects
US8954851B2 (en) Adding video effects for video enabled applications
CN112843676A (en) Data processing method, device, terminal, server and storage medium
WO2014121477A1 (en) Video redirection method, device and system, and computer readable medium
CN116132434A (en) A method and system for sharing a notebook camera device to a cloud desktop
WO2023040825A1 (en) Media information transmission method, computing device and storage medium
US11776502B1 (en) Using variable refresh rate to seamlessly adapt to arbitrary and variable video frame rates
CN114938408A (en) Data transmission method, system, equipment and medium of cloud mobile phone
WO2024061307A1 (en) Interaction, processing and control methods for application service in cloud desktop
CN103701854A (en) Network real-time audio transmission method based on application virtualization
CN117714734A (en) Video processing methods, devices, equipment and media
CN111741343A (en) Video processing method and device, electronic equipment
CN115297357A (en) Cross-system screen projection method, device and system
CN107809671A (en) Video is redirected to the method and system of server decoding under a kind of virtualized environment
CN114339364A (en) Multimedia data processing method, device, electronic device and storage medium

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