CN113938720B - 多设备协作的方法、电子设备及多设备协作系统 - Google Patents
多设备协作的方法、电子设备及多设备协作系统 Download PDFInfo
- Publication number
- CN113938720B CN113938720B CN202010677649.2A CN202010677649A CN113938720B CN 113938720 B CN113938720 B CN 113938720B CN 202010677649 A CN202010677649 A CN 202010677649A CN 113938720 B CN113938720 B CN 113938720B
- Authority
- CN
- China
- Prior art keywords
- service
- video
- teaching
- equipment
- cooperative
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 183
- 230000008569 process Effects 0.000 claims abstract description 75
- 238000000889 atomisation Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims description 102
- 230000033001 locomotion Effects 0.000 claims description 63
- 230000006870 function Effects 0.000 claims description 57
- 238000004458 analytical method Methods 0.000 claims description 51
- 230000001360 synchronised effect Effects 0.000 claims description 42
- 238000004590 computer program Methods 0.000 claims description 18
- 230000005012 migration Effects 0.000 claims description 14
- 238000013508 migration Methods 0.000 claims description 14
- 230000000977 initiatory effect Effects 0.000 claims description 5
- 230000009471 action Effects 0.000 abstract description 28
- 238000011161 development Methods 0.000 abstract description 7
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 238000012546 transfer Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 41
- 230000006854 communication Effects 0.000 description 41
- 238000007726 management method Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 15
- 230000005236 sound signal Effects 0.000 description 14
- 238000010295 mobile communication Methods 0.000 description 12
- 210000000988 bone and bone Anatomy 0.000 description 9
- 230000000694 effects Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 229920001621 AMOLED Polymers 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 210000004027 cell Anatomy 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 230000003416 augmentation Effects 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 239000002096 quantum dot Substances 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000002138 osteoinductive effect Effects 0.000 description 1
- 230000010349 pulsation Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 231100000430 skin reaction Toxicity 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0015—Dancing
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/06—Electrically-operated educational appliances with both visual and audible presentation of the material to be studied
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/06—Electrically-operated educational appliances with both visual and audible presentation of the material to be studied
- G09B5/065—Combinations of audio and video presentations, e.g. videotapes, videodiscs, television systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1094—Inter-user-equipment sessions transfer or sharing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L65/4015—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4122—Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/422—Input-only peripherals, i.e. input devices connected to specially adapted client devices, e.g. global positioning system [GPS]
- H04N21/4223—Cameras
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43076—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/4508—Management of client data or end-user data
- H04N21/4518—Management of client data or end-user data involving characteristics of one or more peripherals, e.g. peripheral type, software version, amount of memory available or display capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Business, Economics & Management (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本申请实施例提供一种多设备协作的方法、电子设备及多设备协作系统,涉及多设备协作技术领域,可以提高基于多设备协作的视频教学方法的开发效率,降低多设备协作的视频教学过程中的信息传输时延。该方法中的设备运行分布式系统,分布式系统包括:系统服务、位于系统服务上层的第一类服务、位于第一类服务上层且具有界面显示功能的第二类服务,第一类服务和第二类服务均为原子化服务;第二设备向第一设备迁移教学视频,第一设备播放教学视频,第一设备的第二类服务可以调用其他设备中的第一类服务,以控制其他设备采集用户动作画面视频,处理教学视频和用户动作画面视频得到教学指导意见,以及播放教学指导意见。
Description
技术领域
本申请涉及多设备协作领域,尤其涉及一种多设备协作的方法、电子设备及多设备协作系统。
背景技术
随着网络技术的发展,网络教学成为一种新兴的教学模式,例如,运动教学、舞蹈教学等。用户借助手机播放教学视频,同时将手机中播放的教学视频投屏到便于观看的大屏设备(例如,电视、平板电脑、智慧屏等)上;用户跟随大屏设备上播放的教学视频学习教学动作;通过摄像头采集用户动作画面视频,通过教学视频和用户动作画面视频确定学习效果。
上述网络教学过程需要多个设备参与,由于多个设备可能运行了不同的操作系统,使得上述网络教学过程需要针对每个设备开发单独的应用软件(Application,APP)版本;即使多个设备中运行了相同的操作系统(例如,android系统),也需要为每个设备开发单独的APP版本,导致开发效率较低。而且,由于运行目前的操作系统的多个设备之间需要通过信令的方式实现信息交互,使得多设备实现的视频教学过程中信息传输的时延较长。
发明内容
本申请实施例提供一种多设备协作的方法、电子设备及多设备协作系统,以解决多个设备实现的视频教学方法开发效率较低、视频教学过程中信息传输的时延较长的问题。
为达到上述目的,本申请采用如下技术方案:
第一方面提供一种多设备协作的方法,应用于运行分布式系统的第一设备,分布式系统包括:系统服务、位于系统服务上层的第一类服务、位于第一类服务上层且具有界面显示功能的第二类服务,第一类服务和第二类服务均为原子化服务,该方法包括:第一设备通过第一设备的第一教学服务播放第二设备通过第二设备的第二教学服务同步的第一视频,第一教学服务和第二教学服务属于第二类服务;第一设备通过第一教学服务调用第三设备的视频采集服务,视频采集服务用于控制第三设备的摄像装置采集第二视频;第一设备通过第一教学服务调用第四设备的视频处理服务,视频处理服务用于控制第四设备处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果;第一设备通过第一教学服务调用第五设备的语音播报服务,语音播报服务用于控制第五设备的扬声器播放比对分析结果;其中,视频采集服务、视频处理服务和语音播报服务均为第一类服务。
由于执行该多设备协作的方法的多个设备中均运行分布式系统,该分布式系统包括:系统服务、位于系统服务上层的第一类服务、位于第一类服务上层且具有界面显示功能的第二类服务,在开发阶段,可以开发一套第一类服务/第二类服务,将开发的第一类服务/第二类服务分发至不同的设备,从而提高了开发人员针对多设备参与的视频教学的开发效率;另外,由于运行分布式系统的各设备之间可以通过分布式软总线相互调用,即一个设备的第二类服务可以调用另一设备的第一类服务,且各设备之间的数据具有同步机制,从而提高了视频教学过程中各设备之间的数据同步效率,降低了各类数据的传输时延;再者,手机将教学视频同步至大屏设备上,使得用户在通过教学视频学习时,具有更佳的观看体验;某些大屏设备本身的计算能力可能较弱,借用手机的视频处理能力,从而通过分布式计算的方式解决大屏设备本身的视频处理能力不足的问题,提升了生态链中各个设备的利用率,具有较强的易用性和实用性。
在第一方面的一种可能的实现方式中,该方法还包括:第一设备通过第一教学服务调用第六设备的运动数据采集服务,运动数据采集服务用于控制第六设备采集运动数据,其中,运动数据采集服务为第一类服务。
用户在通过本申请实施例提供的多设备协作的方法进行运动学习时,存在获取运动数据的需求,第一设备可以通过第一教学服务调用第六设备的运动数据采集服务,从而获得用户的运动数据。另外,第一设备在获取用户的运动数据后,还可以将用户的运动数据通过第一教学服务进行显示,以方便用户通过第一设备的显示屏查看运动数据,提升用户的体验,解决大屏设备本身无法采集用户运动数据的问题,提升了生态链中各个设备的利用率,具有较强的易用性和实用性。
在第一方面的一种可能的实现方式中,在第一设备通过第一教学服务调用第三设备的视频采集服务之前,还包括:第一设备获取目标网络中各设备的信息,目标网络为第一设备所在的网络;第一设备根据目标网络中各设备的信息确定至少一个第三候选设备,该至少一个第三候选设备为目标网络中具有视频采集功能的设备;第一设备从该至少一个第三候选设备中确定第三设备。
在第一设备所在的网络中存在多个具有视频采集功能的设备时,可以根据实际情况从多个具有视频采集功能的设备中确定第三设备,从而使得第一设备的第一教学服务可以向第三设备发送视频采集服务的调用请求。
在第一方面的一种可能的实施方式中,第一设备从至少一个第三候选设备中确定第三设备包括:第一设备将该至少一个第三候选设备中视频采集优先级最高的一个或多个确定为第三设备;或,第一设备通过第一教学服务显示该至少一个第三候选设备的信息,以提示用户基于显示的该至少一个第三候选设备的信息选择一个或多个设备;第一设备将被选中的一个或多个设备确定为第三设备。
第一设备可以基于至少两种方式从第三候选设备中确定第三设备。可以通过预先设置的视频采集优先级确定第三设备,第一设备确定第三设备的过程中无需用户参与,提升用户体验。也可以将第三候选设备的信息在第一设备上进行显示,由用户从第三候选设备中选中一个或多个作为第三设备,提高了视频教学过程的灵活性。
在第一方面的一种可能的实现方式中,第一设备从该至少一个第三候选设备中确定第三设备之后,还包括:若第三设备不具有视频采集服务,第一设备向第三设备发送第一指令,第一指令用于指示第三设备下载与第三设备适配的视频采集服务;或,若第三设备不具有视频采集服务,第一设备向第三设备发送第一设备的视频采集服务,第一设备的视频采集服务用于指示第三设备根据第一设备的视频采集服务得到第三设备适配的视频采集服务。
在第一方面的一种可能的实现方式中,第一设备通过第一设备的第一教学服务播放第二设备通过第二设备的第二教学服务同步的第一视频包括:若第一设备不具有第一教学服务,第一设备获取第一设备适配的第一教学服务;第一设备通过第一教学服务接收第二设备的第二教学服务发送的第一视频的同步数据;第一设备通过第一教学服务根据同步数据播放第一视频;若第一设备具有第一教学服务,第一设备通过第一教学服务接收到第一视频的同步数据后,第一设备通过第一教学服务根据同步数据播放第一视频。
在第一方面的一种可能的实现方式中,第一设备获取第一设备适配的第一教学服务包括:第一设备在接收到第二设备发送的第二指令后,下载与第一设备适配的第一教学服务;或,第一设备在接收到第二设备发送的第二教学服务后,根据第二教学服务得到第一设备适配的第一教学服务。
在开发多设备实现视频教学的第一类服务和第二类服务之后,与第一设备同一网络下的其他设备中可能不具有第一类服务和/或第二类服务,本申请提供的分布式系统中的第一类服务和第二类服务无需针对各个设备独立开发,而是可以通过一个设备向另一设备推送的方式使得另一设备具有第一类服务或第二类服务,也可以通过一个设备向另一设备发送下载指令的方式使得另一设备从预设的服务器下载第一类服务或第二类服务,无需用户预先在另一设备上下载安装相应的原子化服务,提升了用户体验,且提高了多设备协作的视频教学过程的灵活性。
在第一方面的一种可能的实现方式中,当第四设备的个数为多个时,第一设备通过第一教学服务调用第四设备的视频处理服务包括:第一设备通过第一教学服务以串行的方式调用至少两个第四设备的视频处理服务,以控制该至少两个第四设备以串行的方式处理第一视频和/或第二视频;和/或,第一设备通过第一教学服务以并行的方式调用至少两个第四设备的视频处理服务,以控制该至少两个第四设备以并行的方式处理第一视频和/或第二视频。
第一设备可以根据该第一设备所在的网络中不同设备的计算能力合理分配计算资源,从而提高视频处理的速度和效率。
第二方面提供一种多设备协作的方法,应用于运行分布式系统的协作设备,分布式系统包括:系统服务、位于系统服务上层的第一类服务,第一类服务为原子化服务;该方法包括:
所述协作设备在接收到所述第一设备通过所述第一设备的第一教学服务发送的调用请求后,执行以下至少一种操作:
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的视频采集服务控制所述协作设备的摄像装置采集第二视频;
若所述调用请求为视频处理服务的调用请求,所述协作设备通过所述协作设备的视频处理服务控制所述协作设备处理第一视频和/或所述第二视频,其中,所述第一视频为教学视频;
若所述调用请求为语音播报服务的调用请求,所述协作设备通过所述协作设备的语音播报服务控制所述协作设备的扬声器播放比对分析结果,其中,该比对分析结果为第一视频和第二视频的比对分析结果;
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的运动数据采集服务控制所述协作设备的运动数据采集装置采集运动数据;
其中,所述视频采集服务、所述视频处理服务、所述语音播报服务和所述运动数据采集服务均为所述第一类服务。
在第二方面的一种可能的实现方式中,分布式系统还包括:位于第一类服务上层且具有界面显示功能的第二类服务,第二类服务为原子化服务;该方法还包括:协作设备通过协作设备的第二教学服务向第一设备发起第一视频迁移。
在第二方面的一种可能的实现方式中,协作设备通过协作设备的第二教学服务向第一设备发起第一视频迁移包括:若第一设备不具有第一教学服务,协作设备向第一设备推送第二教学服务,第二教学服务用于指示第一设备根据第二教学服务得到第一设备适配的第一教学服务;协作设备通过第二教学服务向第一设备的第一教学服务发送第一视频的同步数据;
或,若第一设备不具有第一教学服务,协作设备向第一设备发送第二指令,第二指令用于指示第一设备下载第一设备适配的第一教学服务;协作设备通过第二教学服务向第一设备的第一教学服务发送第一视频的同步数据。
在第二方面的一种可能的实现方式中,在协作设备通过协作设备的第二教学服务向第一设备发起第一视频迁移之前,还包括:协作设备获取目标网络中各设备的信息,目标网络为协作设备所在的网络;协作设备根据目标网络中各设备的信息确定至少一个第一候选设备,该至少一个第一候选设备为目标网络中具有视频播放功能的设备;协作设备从该至少一个第一候选设备中确定第一设备。
在第二方面的一种可能的实现方式中,协作设备从该至少一个第一候选设备中确定第一设备包括:协作设备将该至少一个第一候选设备中视频播放优先级最高的一个确定为第一设备;或,协作设备通过第二教学服务显示该至少一个第一候选设备的信息,以提示用户基于显示的该至少一个第一候选设备的信息选择一个设备;协作设备将被选中的一个设备确定为第一设备。
第三方面提供一种电子设备,运行分布式系统,该分布式系统包括:系统服务、位于系统服务上层的第一类服务、位于第一类服务上层且具有界面显示功能的第二类服务,第一类服务和第二类服务均为原子化服务,电子设备包括:
播放单元,用于播放第二设备同步的第一视频;
调用单元,用于调用第三设备的视频采集服务,视频采集服务用于控制第三设备的摄像装置采集第二视频;
调用单元,还用于调用第四设备的视频处理服务,视频处理服务用于控制第四设备处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果;
调用单元,还用于调用第五设备的语音播报服务,语音播报服务用于控制第五设备的扬声器播放比对分析结果;
其中,视频采集服务、视频处理服务和语音播报服务均为第一类服务。
第四方面提供一种电子设备,运行分布式系统,该分布式系统包括:系统服务、位于系统服务上层的第一类服务,第一类服务为原子化服务;该电子设备包括:
处理单元,用于接收到第一设备的第一教学服务的调用请求后,执行以下至少一种操作:
通过视频采集服务控制摄像装置采集第二视频;
通过视频处理服务控制电子设备处理第一视频和/或第二视频,其中,第一视频为教学视频;
通过语音播报服务控制扬声器播放比对分析结果,其中,所述比对分析结果为第一视频和第二视频的比对分析结果;
通过运动数据采集服务控制运动数据采集装置采集运动数据;
其中,视频采集服务、视频处理服务、语音播报服务和运动数据采集服务均为第一类服务。
第五方面提供一种电子设备,包括处理器,处理器用于运行存储器中存储的计算机程序,实现本申请第一方面任一项的方法。
第六方面提供一种电子设备,包括处理器,处理器用于运行存储器中存储的计算机程序,实现本申请第二方面任一项的方法。
第七方面,提供一种多设备协作系统,包括第五方面提供的电子设备和至少一个第六方面提供的电子设备。
第八方面提供一种芯片系统,包括处理器,处理器与存储器耦合,处理器执行存储器中存储的计算机程序,以实现本申请第一方面任一项的方法和/或第二方面任一项的方法。
第九方面提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被一个或多个处理器执行时实现本申请第一方面任一项的方法和/或第二方面任一项的方法。
第十方面本申请实施例提供了一种计算机程序产品,当计算机程序产品在设备上运行时,使得设备执行上述第一方面中任一项方法和/或第二方面任一项的方法。
可以理解的是,上述第二方面至第十方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
图1为本申请实施例提供的多设备协作的方法的一种应用场景示意图;
图2为本申请实施例提供的执行多设备协作的方法的一种电子设备的硬件结构示意图;
图3为本申请实施例提供的一种电子设备的软件系统架构示意图;
图4为图3所示实施例中第二类服务的一种架构示意图;
图5为本申请实施例提供的多设备协作的方法的另一应用场景示意图;
图6为图5所示应用场景表示的多设备协作的方法的一个示例图;
图7为图5所示应用场景表示的多设备协作的方法的另一示例图;
图8为图5所示应用场景表示的多设备协作的方法的另一示例图;
图9为图5所示应用场景表示的多设备协作的方法的另一示例图;
图10为本申请实施例提供的一种多设备协作的方法的流程示意图;
图11为本申请实施例提供的第二设备向第一设备迁移第一视频的三种方式对比示意图;
图12为本申请实施例提供的一种第一设备调用第四设备的视频处理服务的过程示意图;
图13为本申请实施例提供的一种电子设备的功能架构模块的示意框图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例可以应用在多设备协作的应用场景中,参见图1,图1为本申请实施例提供的多设备协作的方法的一种应用场景,该应用场景中,存在多个设备,例如,手机、大屏设备(指具有大屏幕的电子设备,例如电视机,智慧屏,计算机等)、智能音箱。图示中的手机、大屏设备、智能音箱组成多设备协作系统实现本申请实施例提供的多设备协作的方法。
该应用场景中,手机、大屏设备、智能音箱处于同一网络中,该同一网络可以是无线网络也可以是有线网络。以无线网络(Wireless Fidelity,Wi-Fi)为例,手机、大屏设备和智能音箱均连接在室内的同一Wi-Fi中,同一Wi-Fi中的手机、大屏设备和智能音箱可以基于该Wi-Fi通信。用户可以通过手机中的APP选择教学视频,并将手机中的教学视频投屏到大屏设备上;大屏设备在播放该教学视频时,用户可以在现场跟着教学视频学习;以教学视频为运动视频为例,用户可以跟随大屏设备播放的运动视频做运动视频中展示的动作;同时,大屏设备上的摄像头可以采集用户动作画面视频,大屏设备将捕捉到的用户动作画面视频传送给手机;手机上的智能算法分析教学视频和用户动作画面视频,以确定用户在学习的过程中动作是否标准以及给出用户学习指导意见;同时,还可以将学习指导意见同步至智能音箱,通过智能音箱播放该学习指导意见。
上述应用场景中,手机将教学视频同步至大屏设备上,使得用户在通过教学视频学习时,具有更佳的观看体验;大屏设备本身的计算能力可能较弱,借用手机的视频处理能力,从而通过分布式计算的方式解决大屏设备本身的视频处理能力不足的问题,提升了生态链中各个设备的利用率。
应理解,上述以运动教学应用场景为例,实际应用中,还可以是其他多设备协作的应用场景,例如,舞蹈教学应用场景、直播教学的应用场景等。
本申请实施例提供一种多设备协作的方法,执行该多设备协作的方法的电子设备可以是后续描述的第一设备,第一设备可以为:平板电脑、智慧屏、大屏设备、电视、笔记本等电子设备,执行该多设备协作的方法还可以是后续描述的第二设备、第三设备、第四设备、第五设备和第六设备;将第二设备至第六设备中的任一个称为协作设备,该协作设备可以为:手机、智慧屏、大屏设备、平板电脑、摄像装置、穿戴设备、智能音箱等电子设备。作为举例,第二设备可以为手机,第三设备可以为智慧屏,也可以为摄像装置,第四设备可以为手机,也可以为平板电脑,第五设备可以为智能音箱,第六设备可以为运动手表。本申请实施例对电子设备的具体类型不作限定。
图2示出了一种电子设备的结构示意图。电子设备200可以包括处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,USB)接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriberidentification module,SIM)卡接口295等。其中传感器模块280可以包括压力传感器280A,陀螺仪传感器280B,气压传感器280C,磁传感器280D,加速度传感器280E,距离传感器280F,接近光传感器280G,指纹传感器280H,温度传感器280J,触摸传感器280K,环境光传感器280L,骨传导传感器280M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备200的具体限定。在本申请另一些实施例中,电子设备200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
作为举例,当电子设备200为手机时,可以包括图示中的全部部件,也可以仅包括图示中的部分部件。
当电子设备200为大屏设备时,可以包括图示中的处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,USB)接口230,充电管理模块240,电源管理模块241,无线通信模块260,音频模块270,扬声器270A,受话器270B,麦克风270C,摄像头293,显示屏294。
当电子设备200为摄像装置时,可以包括图示中的处理器210,内部存储器221,通用串行总线(universal serial bus,USB)接口230,充电管理模块240,电源管理模块241,无线通信模块260,摄像头293。
当电子设备200为智能音箱时,可以包括图示中的处理器210,内部存储器221,充电管理模块240,电源管理模块241,电池242,无线通信模块260,音频模块270,扬声器270A,受话器270B,麦克风270C,按键290。
当电子设备200为运动手环时,可以包括图示中的处理器210,内部存储器221,充电管理模块240,电源管理模块241,电池242,无线通信模块260,传感器模块280,按键290,显示屏294等。其中传感器模块280可以包括陀螺仪传感器280B,加速度传感器280E,温度传感器280J,心率传感器、皮电反应传感器等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备200的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器210可以包含多组I2C总线。处理器210可以通过不同的I2C总线接口分别耦合触摸传感器280K,充电器,闪光灯,摄像头293等。例如:处理器210可以通过I2C接口耦合触摸传感器280K,使处理器210与触摸传感器280K通过I2C总线接口通信,实现电子设备200的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器210可以包含多组I2S总线。处理器210可以通过I2S总线与音频模块270耦合,实现处理器210与音频模块270之间的通信。在一些实施例中,音频模块270可以通过I2S接口向无线通信模块260传递音频信号。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块270与无线通信模块260可以通过PCM总线接口耦合。
在一些实施例中,音频模块270也可以通过PCM接口向无线通信模块260传递音频信号。I2S接口和PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。
在一些实施例中,UART接口通常被用于连接处理器210与无线通信模块260。例如:处理器210通过UART接口与无线通信模块260中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块270可以通过UART接口向无线通信模块260传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器210与显示屏294,摄像头293等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器210和摄像头293通过CSI接口通信,实现电子设备200的拍摄功能。处理器210和显示屏294通过DSI接口通信,实现电子设备200的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器210与摄像头293,显示屏294,无线通信模块260,音频模块270,传感器模块280等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口230是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口230可以用于连接充电器为电子设备200充电,也可以用于电子设备200与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备200的结构限定。在本申请另一些实施例中,电子设备200也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块240用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块240可以通过USB接口230接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块240可以通过电子设备200的无线充电线圈接收无线充电输入。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为电子设备供电。
电源管理模块241用于连接电池242,充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为处理器210,内部存储器221,外部存储器,显示屏294,摄像头293,和无线通信模块260等供电。电源管理模块241还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。
在其他一些实施例中,电源管理模块241也可以设置于处理器210中。在另一些实施例中,电源管理模块241和充电管理模块240也可以设置于同一个器件中。
电子设备200的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备200中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块250可以提供应用在电子设备200上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块250可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块250可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块250还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。
在一些实施例中,移动通信模块250的至少部分功能模块可以被设置于处理器210中。在一些实施例中,移动通信模块250的至少部分功能模块可以与处理器210的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器270A,受话器270B等)输出声音信号,或通过显示屏294显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器210,与移动通信模块250或其他功能模块设置在同一个器件中。
无线通信模块260可以提供应用在电子设备200上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块260可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块260经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块260还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备200的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得电子设备200可以通过无线通信技术与网络以及其他设备通信。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备200通过GPU,显示屏294,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏294和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏294用于显示图像,视频等。例如本申请实施例中的教学视频和用户动作画面视频,显示屏294包括显示面板。显示面板可以采用液晶显示屏(liquid crystaldisplay,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备200可以包括1个或N个显示屏294,N为大于1的正整数。
电子设备200可以通过ISP,摄像头293,视频编解码器,GPU,显示屏294以及应用处理器等实现拍摄功能。
ISP用于处理摄像头293反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头293中。
摄像头293用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备200可以包括1个或N个摄像头293,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备200在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备200可以支持一种或多种视频编解码器。这样,电子设备200可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备200的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
在本申请实施例中,NPU或其他处理器可以用于对电子设备200存储的视频中的图像进行分析处理等操作。
外部存储器接口220可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备200的存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行电子设备200的各种功能应用以及数据处理。内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)。存储数据区可存储电子设备200使用过程中所创建的数据(比如音频数据,电话本等)。
此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备200可以通过音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,以及应用处理器等实现音频功能。
音频模块270用于将数字音频信号转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块270还可以用于对音频信号编码和解码。在一些实施例中,音频模块270可以设置于处理器210中,或将音频模块270的部分功能模块设置于处理器210中。
扬声器270A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备200可以通过扬声器270A收听音乐,或收听免提通话,例如扬声器可以播放本申请实施例提供的比对分析结果。
受话器270B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备200接听电话或语音信息时,可以通过将受话器270B靠近人耳接听语音。
麦克风270C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风270C发声,将声音信号输入到麦克风270C。电子设备200可以设置至少一个麦克风270C。在另一些实施例中,电子设备200可以设置两个麦克风270C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备200还可以设置三个,四个或更多麦克风270C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口270D用于连接有线耳机。耳机接口270D可以是USB接口230,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器280A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器280A可以设置于显示屏294。压力传感器280A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器280A,电极之间的电容改变。电子设备200根据电容的变化确定压力的强度。当有触摸操作作用于显示屏294,电子设备200根据压力传感器280A检测触摸操作强度。电子设备200也可以根据压力传感器280A的检测信号计算触摸的位置。
在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器280B可以用于确定电子设备200的运动姿态。在一些实施例中,可以通过陀螺仪传感器280B确定电子设备200围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器280B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器280B检测电子设备200抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备200的抖动,实现防抖。陀螺仪传感器280B还可以用于导航,体感游戏场景。
气压传感器280C用于测量气压。在一些实施例中,电子设备200通过气压传感器280C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器280D包括霍尔传感器。电子设备200可以利用磁传感器280D检测翻盖皮套的开合。在一些实施例中,当电子设备200是翻盖机时,电子设备200可以根据磁传感器280D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器280E可检测电子设备200在各个方向上(一般为三轴)加速度的大小。当电子设备200静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器280F,用于测量距离。电子设备200可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备200可以利用距离传感器280F测距以实现快速对焦。
接近光传感器280G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备200通过发光二极管向外发射红外光。电子设备200使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备200附近有物体。当检测到不充分的反射光时,电子设备200可以确定电子设备200附近没有物体。电子设备200可以利用接近光传感器280G检测用户手持电子设备200贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器280G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器280L用于感知环境光亮度。电子设备200可以根据感知的环境光亮度自适应调节显示屏294亮度。环境光传感器280L也可用于拍照时自动调节白平衡。环境光传感器280L还可以与接近光传感器280G配合,检测电子设备200是否在口袋里,以防误触。
指纹传感器280H用于采集指纹。电子设备200可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器280J用于检测温度。在一些实施例中,电子设备200利用温度传感器280J检测的温度,执行温度处理策略。例如,当温度传感器280J上报的温度超过阈值,电子设备200执行降低位于温度传感器280J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备200对电池242加热,以避免低温导致电子设备200异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备200对电池242的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器280K,也称“触控面板”。触摸传感器280K可以设置于显示屏294,由触摸传感器280K与显示屏294组成触摸屏,也称“触控屏”。触摸传感器280K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏294提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器280K也可以设置于电子设备200的表面,与显示屏294所处的位置不同。
骨传导传感器280M可以获取振动信号。在一些实施例中,骨传导传感器280M可以获取人体声部振动骨块的振动信号。骨传导传感器280M也可以接触人体脉搏,接收血压跳动信号。
在一些实施例中,骨传导传感器280M也可以设置于耳机中,结合成骨传导耳机。音频模块270可以基于骨传导传感器280M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于骨传导传感器280M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键290包括开机键,音量键等。按键290可以是机械按键。也可以是触摸式按键。电子设备200可以接收按键输入,产生与电子设备200的用户设置以及功能控制有关的键信号输入。
马达291可以产生振动提示。马达291可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏294不同区域的触摸操作,马达291也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器292可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口295用于连接SIM卡。SIM卡可以通过插入SIM卡接口295,或从SIM卡接口295拔出,实现和电子设备200的接触和分离。电子设备200可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口295可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口295可以同时插入多张卡。多张卡的类型可以相同,也可以不同。SIM卡接口295也可以兼容不同类型的SIM卡。SIM卡接口295也可以兼容外部存储卡。电子设备200通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备200采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备200中,不能和电子设备200分离。
在本申请实施例中,一种多设备协作的方法的执行主体的具体结构,本申请实施例并未特别限定,只要可以通过运行记录有本申请实施例提供的一种多设备协作的方法的代码的程序,以根据本申请实施例提供的一种多设备协作的方法进行通信即可。例如,本申请实施例提供的一种多设备协作的方法的执行主体可以是第一设备中能够调用程序并执行程序的功能模块,或者为应用于第一设备中的通信装置,例如,芯片。
上面描述的实施多设备协作的方法的电子设备均需要运行分布式系统,参见图3,图3为本申请实施例提供的多设备协作的方法中各设备运行的分布式系统,该分布式系统中存在底层的系统服务,该分布式系统支持开发人员根据应用场景开发原子化服务,例如,图示中位于系统服务上层的第一类服务,位于第一类服务上层的第二类服务。每个原子化服务完成单一服务,并且每个原子化服务可以独立下载、安装和运行。作为举例,开发人员针对该应用场景开发多个原子化服务,其中一部分原子化服务被安装在手机上,其中一部分原子化服务被安装在大屏设备上,还有一个部分原子化服务被安装在智能音箱上。这些原子化服务基于底层的系统服务具有消息同步和通信机制,例如,一个设备上的第二类服务可以通过系统服务中的分布式软总线调用另一设备上的第一类服务。为了便于描述,后续从原子化服务层级描述设备之间协作,省略了系统服务的中间桥梁的描述,作为举例,后续描述的一个设备的原子化服务调用另一设备的原子化服务,实际上表示一个设备的原子化服务通过系统服务中的分布式软总线调用另一设备的原子化服务。
第一类服务为AA(Atomic Ability)服务,AA服务无界面显示功能,对系统服务有依赖关系,是实现单一功能的程序实体。第二类服务为FA(Feature Ability)服务,FA服务有界面显示功能,可以调用本设备或其他设备的AA服务。
为了便于对FA服务和AA服务具有更清晰的理解,通过图示4对FA服务进行举例说明,如图4所示,FA服务中,用户界面、业务逻辑和数据模型相互分离。其中,用户界面中有UI(User Interface)框架,UI框架支持按需裁剪和分离,并且支持多模输入和输出,例如,输入可以包括键盘、触控屏、麦克风、视觉等,输出可以包括液晶屏、语音、文本、震动等,实际应用中,根据设备形态和用户场景选择合适的输出。业务逻辑也支持多设备部署和差异化裁剪,即不同设备上可以存在不同的逻辑形态。数据模型具有自动同步机制,可以提供数据自动持久化和自动恢复机制,例如,数据在不同设备上共享和迁移时,可标记需要同步和不需要同步的用户数据,迁移过程中,持久化与运行状态(例如播放进度、音量等)相关的用户数据,保护数据不丢失;迁移发生后,基于持久化数据恢复运行状态。所以,运行分布式系统的多个设备之间的数据是可以自动同步的。
通过上述分布式系统的描述可以理解,本申请实施例提供的分布式系统使得运行该分布式系统的多个设备在系统级上实现协作,兼容性较好,解决了一个设备向另一设备发送私有协议的信令以实现一个设备对另一设备的控制导致的兼容性较差的问题。另外,虽然本申请实施例提供的多设备协作的方法需要多个设备参与,然而无需针对每个设备开发独立的APP,开发人员可以开发一套FA服务/AA服务,将开发成功的FA服务/AA服务打包上传应用市场,通过应用市场根据各设备的信息分发至合适的各设备,也可以由用户在各设备上主动下载适配的FA服务和/或AA服务,从而提高了开发效率;再者,由于运行分布式系统的各设备之间可以通过分布式软总线相互调用,且各设备之间的数据具有同步机制,从而提高了视频教学过程中各设备之间的数据同步效率,降低了各类数据的传输时延。
需要说明,有的设备中可能存在上面描述的针对多设备协作的方法开发的FA服务,有的设备中可能存在上面描述的针对多设备协作的方法开发的AA服务,有的设备可能同时存在针对多设备协作的方法开发的FA服务和AA服务。然而,对于某个设备而言,可能不存在本申请实施例提供的多设备协作的方法对应的AA服务,而存在其他功能方法对应的AA服务。对于某个设备而言,可能不存在本申请实施例提供的多设备协作的方法对应的FA服务,而存在其他功能方法对应的FA服务。
为了对本申请实施例提供的多设备协作的方法具有更清晰的理解,以下对本申请实施例可以应用的场景以及对应的示例分别进行描述。
参见图5,图5为本申请实施例提供的多设备协作的方法的一种应用场景,该应用场景中,存在第一设备、第二设备、第三设备、第四设备和第五设备。第一设备至第五设备均运行上面描述的分布式系统,并且第一设备至第五设备处于同一网络中,第一设备至第五设备组成多设备协作系统执行本申请实施例提供的多设备协作的方法,以实现多设备参与的视频教学。
其中,第一设备可以是具有视频显示功能的设备,例如,大屏设备;第二设备可以是具有视频显示功能的设备,例如,手机;第三设备可以是具有视频采集功能的设备,例如,设有摄像装置的手机、设有摄像装置的大屏设备、摄像装置;第四设备可以是具有视频处理能力的设备,例如,手机、大屏设备、计算机;第五设备可以是具有语音播报功能的设备,例如,手机、大屏设备、智能音箱等。通过上面的描述可以理解,第一设备至第五设备可以为不同的设备,例如,如图中所示,第一设备为手机、第二设备为大屏设备、第三设备为摄像装置、第四设备为计算机,第五设备为智能音箱。第一设备至第五设备中也可以存在相同的设备,例如,图1所示中,第三设备可以和第一设备相同,为大屏设备;第四设备可以与第二设备相同,为手机。
实际应用中,第三设备可以是多个,例如第三设备可以是大屏设备、手机和摄像装置,第四设备也可以是多个,例如第四设备可以是大屏设备、手机和计算机。当然,上述第一设备、第二设备、第三设备、第四设备和第五设备的举例仅用于示例,并不表示第一设备至第五设备只能是上述举例的电子设备。
作为该应用场景的简述示例,用户可以通过手机(图5中第二设备)中的APP下载教学视频并播放,用户可以选择将手机上播放的教学视频同步至大屏设备(图5中第一设备),大屏设备播放该教学视频,用户现场跟随大屏设备播放的教学视频学习动作,摄像装置(图5中第三设备)采集用户动作画面视频,并将该用户动作画面视频同步至计算机(图5中第四设备),计算机分析教学视频和用户动作画面视频,获得比对分析结果,并将比对分析结果同步至智能音箱(图5中第五设备),智能音箱通过语音的形式播放教学分析结果。其中,分析教学视频和用户动作画面视频的过程可以包括:对捕捉的用户动作画面视频中的图像帧进行分析。作为举例,可以使用人体关键点技术判断图像帧中用户的动作是否标准(例如,判断用户的动作与教学视频中展示的动作是否一致)。
另外,需要说明,手机中的教学视频持续在播放,大屏设备也在持续获取手机中播放的教学视频的同步数据,例如,当前播放的进度;大屏设备上的摄像头在持续采集用户动作画面视频,手机也在持续处理教学视频中的部分帧和用户动作画面视频中的部分帧,智能音箱在持续播放教学视频中的部分帧和用户动作画面视频中的部分帧的比对分析结果,上述过程是同时在进行,然而,对于教学视频的部分帧而言,与该部分帧有关的步骤存在先后顺序。
作为举例,可以以一定的时间间隔或者教学视频中一定数量的图像帧作为分界点,例如,每间隔1秒(实际应用中,还可以是其他时间设置,例如,30毫秒、2秒、3秒等),将教学视频对应的图像帧作为第一视频,将该间隔时间对应的用户动作画面视频对应的图像帧作为第二视频,然后,手机处理第一视频和第二视频,得到当前间隔时间对应的比对分析结果,智能音箱播放当前间隔时间对应的比对分析结果。当然,还可以将教学视频中的每5个图像帧(实际应用中,还可以是其他数量设置,例如10、15、20等)作为第一视频,将这5个图像帧对应的播放时间段采集的用户动作画面视频作为第二视频,然后,手机处理第一视频和第二视频,得到当前5个图像帧或当前播放时间段对应的比对分析结果,智能音箱播放该比对分析结果。可以理解,从宏观的角度,多个设备执行的操作过程是同时在进行的;从微观的角度,步骤之间存在先后顺序,例如,只有第三设备采集到用户动作画面视频的某些图像帧后,第四设备才可能处理这些图像帧得到与这些图像帧相关的比对分析结果,第五设备才可能播放该比对分析结果。
通过上述应用场景的简述示例可以理解,开发人员需要根据该应用场景创建FA服务(例如,该应用场景下的FA服务可以包括:课程内容、个人资料、历史成绩单、运动计划)和AA服务(视频采集服务、视频处理服务和语音播报服务)。其中,FA服务支持手机和大屏设备;视频采集服务支持摄像装置,当然,实际应用中还可以支持手机摄像头和大屏设备摄像头;视频处理服务可以支持第四设备,当然,实际应用中还可以支持大屏设备和手机;语音播报服务支持智能音箱,当然,实际应用中还可以支持手机扬声器和大屏设备扬声器。所以,按照上述描述,手机上的分布式系统至少包括系统服务和FA服务,还可以包括视频处理服务和视频采集服务等;大屏设备上的分布式系统至少包括系统服务和FA服务,还可以包括视频采集服务和视频处理服务;摄像装置上的分布式系统至少包括系统服务和视频采集服务;笔记本上分布式系统至少包括系统服务和视频处理服务;智能音箱上的分布式系统至少包括系统服务和语音播报服务。
结合分布式系统中的原子化服务描述的简述示例,为了便于区分,可以将第一设备的FA服务记作第一教学服务,将第二设备的FA服务记作第二教学服务。该示例详述如下:
第二设备的第二教学服务将教学视频迁移到第一设备上,第一设备的第一教学服务播放第二设备的第二教学服务同步的第一视频,第一设备的第一教学服务通过分布式软总线调用第三设备的视频采集服务,第三设备接收到调用指令后,第三设备的视频采集服务控制第三设备上的摄像装置采集用户的第二视频,第三设备将第二视频同步至第四设备上,第一设备的第一教学服务通过分布式软总线调用第四设备的视频处理服务,第四设备接收到调用指令后,第四设备的视频处理服务控制第四设备处理第一视频和第二视频,从而获得第一视频和第二视频的比对分析结果;第四设备将比对分析结果同步至第五设备,第一设备的第一教学服务通过分布式软总线调用第五设备的语音播报服务,第五设备接收到调用指令后,第五设备的语音播报服务控制智能音箱的扬声器以语音的形式播放比对分析结果。
可以理解,实际应用中,比对分析结果也可以不以语音播报的形式输出,而是以其他方式输出,作为举例,可以将比对分析结果以图文的形式输出,在将比对结果以图文的形式输出时,可以是第一设备的第一教学服务显示比对分析结果。
本申请实施例中,第二设备的第二教学服务将第一视频迁移到第一设备的过程可以有如下方式:
第一种方式,用户第一次将第二设备中的第一视频投屏到第一设备上,第一设备中未存储第一视频,第二设备将第一视频发送至第一设备中,第二设备将第一视频的同步数据发送至第一设备,第一设备基于接收到的第一视频以及第一视频的同步数据播放第一视频。同步数据可以包括以下数据中的一个或多个:播放进度、播放音量、播放背景色、播放中弹幕的设置,当然,同步数据还可以包括以上未示出的其他数据,在此不再一一举例。
第二种方式,用户曾经将第二设备中的第一视频投屏到第一设备,第一设备中存储了第二设备投屏时发送的第一视频,第二设备无需再次将第一视频发送至第一设备中,第二设备可以将第一视频的同步数据发送至第一设备。
由于第二设备的屏幕较小,用户在通过视频学习的过程中,不便于跟随第二设备播放的第一视频进行学习,因此,第二设备的第二教学服务可以将第一视频同步至屏幕较大的第二设备,第二设备的第二教学服务播放第一视频,用户就可以跟随第二设备播放的第一视频进行学习,同时通过摄像头采集用户的现场学习的第二视频,具有视频处理能力的第四设备处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果,比对分析结果用于判断用户的学习动作是否标准,以及提示用户如何矫正不标准的动作,通过第五设备的扬声器播放比对分析结果,用户就可以一边观看教学视频进行学习,一边听比对分析结果,从而达到较好的学习效果。
作为图5所示应用场景的另一示例,参见图6,图6为图5所示应用场景表示的多设备协作的方法的另一示例,该示例中,第三设备和第一设备为同一设备,例如图示中设有摄像装置的大屏设备。第四设备和第二设备为同一设备,例如图示中具有视频处理能力的手机。第五设备为智能音箱。
该示例中,第一设备运行的分布式系统包括:系统服务、位于系统服务上层的视频采集服务2和语音播报服务1、位于视频采集服务2和语音播报服务1上层的第一教学服务;第二设备运行的分布式系统包括:系统服务、位于系统服务上层的视频处理服务和视频采集服务1、位于视频处理服务和视频采集服务1上层的第二教学服务;第五设备运行的分布式系统包括:系统服务、位于系统服务上层的语音播报服务2。第二设备通过第二教学服务向第一设备的第一教学服务迁移第一视频,第一设备的第一教学服务调用第一设备的视频采集服务2,第一设备视频采集服务2控制第一设备的摄像装置采集第二视频(用户动作画面视频),第一设备的第一教学服务还调用第二设备的视频处理服务,第二设备的视频处理服务控制第二设备的处理器处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果,第一设备的第一教学服务还调用第五设备的语音播报服务2,第五设备的语音播报服务2控制第五设备的扬声器播放比对分析结果。
作为图5所示应用场景的另一示例,参见图7,图7为图5所示应用场景表示的多设备协作的方法的另一示例,该示例中,第三设备和第一设备为同一设备,例如大屏设备。第四设备为两个设备,其中一个第四设备为第一设备,例如大屏设备,另一个第四设备为第二设备,例如手机,第五设备为智能音箱。
该示例中,每个设备运行的分布式系统不再赘述,具体可参照附图中表示,与图6所示示例的一个区别点在于:第一设备的第一教学服务可以调用第一个第四设备(第一设备)的视频处理服务2,也可以调用第二个第四设备(第二设备)的视频处理服务1。两个第四设备(第一设备和第二设备)均承担部分视频处理工作,从而综合利用各个设备的计算能力,提升视频处理速度和效率。该示例中,第一设备的第一教学服务调用多个第四设备的视频处理服务,以控制多个第四设备均承担部分视频处理工作的过程可以参照后续实施例的描述。
作为图5所示应用场景的另一示例,参见图8,图8为图5所示应用场景表示的多设备协作的方法的另一示例,该示例中,第三设备有两个,分别为第一设备(图示中的大屏设备)和摄像装置,第四设备与第二设备为同一设备,例如图示中的手机,第五设备为智能音箱。
该示例中,每个设备运行的分布式系统不再赘述,具体可参照附图中表示,第一设备的第一教学服务可以调用第一个第三设备(第一设备)的视频采集服务2和第二个第三设备(摄像装置)的视频采集服务3。该应用场景下,可以有两个摄像头同时采集用户现场学习的第二视频,这样就可以获得用户全方位多角度的第二视频,还可以根据全方位多角度的第二视频进行三维构图,从而获得更精确的比对分析结果,这样用户就可以获得更精确的教学指导意见。
当然,实际应用中,第一设备的第一教学服务也可以调用第三个第三设备(第二设备)的视频采集服务1;第一设备的第一教学服务也可以仅调用摄像装置的视频采集服务3。
作为图5所示应用场景的另一示例,还可以存在第六设备,第一设备至第六设备组成多设备协作系统执行本申请实施例提供的多设备协作的方法,第六设备可以是运动手表,运动手表具有采集用户的运动数据的功能,即第六设备运行的分布式系统包括:系统服务、位于系统服务上层的运动数据采集服务,运动数据采集服务属于第一类服务。第六设备可以采集用户运动时的运动数据,例如用户的心率、消耗的卡路里等数据。第一设备的第一教学服务可以通过分布式总线调用第六设备的运动数据采集服务,以控制第六设备采集用户的运动数据,并控制第六设备将采集的运动数据同步到第一设备上,第一设备的第一教学服务可以将用户的运动数据进行显示。当然,实际应用中,第六设备的数据采集装置在被调用之前就在采集用户的运动数据,第六设备的运动数据采集服务被调用后,第六设备将采集的历史运动数据和/或实时运动数据同步至第二设备。
参见图9,图9为本申请实施例提供的多设备协作的方法的另一应用场景的示例,该示例中,第一设备为大屏设备,第二设备和第六设备为同一设备,例如运动手表,且该第六设备运行的分布式系统包括:系统服务、位于系统服务上层的运动数据采集服务、位于运动数据采集服务上层的第二教学服务,第三设备为摄像装置,第四设备为手机,第五设备为智能音箱。
在该示例中,第二设备(智能手表)的第二教学服务将第一视频同步至大屏设备的第一教学服务,大屏设备的第一教学服务调用摄像装置的视频采集服务3采集第二视频,……,后续的步骤不再赘述,可参照上述任一示例的描述。
该示例中,不再以手机作为视频教学的入口,而是以运动手表一侧作为视频教学的入口发起第一视频的迁移,从而摆脱了以手机为中心化的控制。
在描述本申请实施例提供的多设备协作的方法的多个应用场景以及对应的示例后,描述上述应用场景表示的多设备协作的方法的具体实现方式。参见图10,图10为本申请实施例提供的一种多设备协作的方法的流程示意图,如图所示,该方法包括以下步骤:
步骤1001,第二设备通过第二设备的第二教学服务向第一设备发起第一视频迁移。
步骤1002,第一设备通过第一教学服务播放第二设备通过第二设备的第二教学服务同步的第一视频。
在本实施例中,由于第二设备的显示屏较小,用户不方便跟随第一设备播放的第一视频学习,所以第二设备需要将第一视频同步至屏幕较大的其他设备中,例如具有较大显示屏的设备。然而,第二设备所在的网络中可能存在多个具有较大显示屏的设备,因此,第二设备需要从多个具有显示屏的设备中确定第一设备。第二设备确定第一设备的过程通过以下方式:
第二设备获取目标网络中各设备的信息,目标网络为第二设备所在的网络;第二设备根据目标网络中各设备的信息确定至少一个第一候选设备,至少一个第一候选设备为目标网络中具有视频播放功能的设备;第二设备从至少一个第一候选设备中确定第一设备。
第二设备首先获取目标网络中各个设备的信息,例如,第二设备为第一手机,目标网络中除了第一手机,还存在大屏设备、智能音箱、空调、摄像装置、第二手机、运动手表、计算机等。第一手机可以获取到目标网络中每个设备的信息,获取的设备的信息中包含了设备的设备类型(例如,设备类型可以是音箱、可以是手机、可以是计算机、可以是空调等)、设备可支持的功能(例如,具有视频采集功能、具有视频处理功能、具有语音播报功能等)。第二设备根据目标网络中各设备的信息就可以确定出具有视频播放功能的至少一个第一候选设备。
作为本申请另一实施例,第二设备从至少一个第一候选设备中确定第一设备包括:
第一种方式,第二设备将至少一个第一候选设备中视频播放优先级最高的一个确定为第一设备。
该方式下,可以预先设置视频播放的优先级,例如,视频播放优先级为:第一大屏设备>第二大屏设备>计算机>第一手机>第二手机>运动手表,此时第二设备可以将第一大屏设备确定为第一设备。
第二种方式,第二设备通过第二教学服务显示至少一个第一候选设备的信息,以提示用户基于显示的至少一个第一候选设备的信息选择一个或多个设备。
第二设备将被选中的一个或多个设备确定为第一设备。
该方式下,第二设备通过第二设备的第二教学服务显示所有的第一候选设备的信息,例如可以显示每个第一候选设备的名称,也可以显示每个第一候选设备可支持的功能。用户可以根据第二设备的显示屏显示的至少一个第一候选设备的信息,从至少一个第一候选设备中选择一个或多个设备作为第一设备。
作为本申请另一实施例,第二设备在确定了第一设备后,还需要确定第一设备是否具有第一教学服务,只有在第一设备具有第一教学服务的情况下,第二设备才能向第一设备迁移第一视频。
对于第一设备而言,存在以下几种情况:
情况1,第一设备不具有第一教学服务。
情况2,第一设备具有第一教学服务。
对应于上述第一设备中的情况1和情况2,参见图11,图11为第二设备向第一设备迁移第一视频的过程示意图,如图所示,第二设备的执行步骤存在以下几种情况:
情况1-1,在第一设备不具有第一教学服务时,第二设备向第一设备推送第二教学服务,第二教学服务用于指示第一设备根据第二教学服务得到第一设备适配的第一教学服务;第二设备通过第二教学服务向第一设备的第一教学服务发送第一视频的同步数据。
情况1-2,在第一设备不具有第一教学服务时,第二设备向第一设备发送第二指令,第二指令用于指示第一设备下载第一设备适配的第一教学服务;第二设备通过第二教学服务向第一设备的第一教学服务发送第一视频的同步数据。
情况2,在第一设备具有第一教学服务时,第二设备通过第二教学服务向第一设备的第一教学服务发送第一视频的同步数据。
对于第一设备而言,与第二设备中的情况1-1对应的执行步骤为:
第一设备在接收到第二设备发送的第二教学服务后,根据第二教学服务得到第一设备适配的第一教学服务;第一设备通过第一教学服务接收第二设备的第二教学服务发送的第一视频的同步数据;第一设备通过第一教学服务根据同步数据播放第一视频。
对于第一设备而言,与第二设备中的情况1-2对应的执行步骤为:
第一设备在接收到第二设备发送的第二指令后,下载与第一设备适配的第一教学服务;第一设备通过第一教学服务接收第二设备的第二教学服务发送的第一视频的同步数据;第一设备通过第一教学服务根据同步数据播放第一视频。作为举例,第一设备可以以第一设备内的应用市场作为入口从服务器下载与第一设备适配的第一教学服务,也可以在第一设备内存储服务器的地址链接,第一设备可以以存储的地址链接作为入口从服务器下载与第一设备适配的第一教学服务。
对于第一设备而言,与第二设备中的情况2对应的为:
第一设备通过第一教学服务接收到第一视频的同步数据后,第一设备通过第一教学服务根据同步数据播放第一视频。
通过上述的描述可以理解,第二设备可以通过推送第二教学服务或发送下载指令的方式指示第一设备部署第一教学服务。
步骤1003,第一设备通过第一教学服务调用第三设备的视频采集服务,视频采集服务用于控制第三设备的摄像装置采集第二视频。
步骤1004,第三设备通过第三设备的视频采集服务控制第三设备的摄像装置采集第二视频。
在本申请实施例中,第一设备通过第一设备的第一教学服务调用第三设备的视频采集服务之前,第一设备还需要确定第三设备,第一设备确定第三设备的过程可以通过以下方式:
第一设备获取目标网络中各设备的信息,目标网络为第一设备所在的网络;
第一设备根据目标网络中各设备的信息确定至少一个第三候选设备,至少一个第三候选设备为目标网络中具有视频采集功能的设备;
第一设备从至少一个第三候选设备中确定第三设备。
作为本申请另一实施例,第一设备从至少一个第三候选设备中确定第三设备包括:
第一种方式,第一设备将至少一个第三候选设备中视频采集优先级最高的一个或多个确定为第三设备;
第二种方式,第一设备通过第一教学服务显示至少一个第三候选设备的信息,以提示用户基于显示的至少一个第三候选设备的信息选择一个或多个设备;
第一设备将被选中的一个或多个设备确定为第三设备。
可以理解,第一设备可以基于至少两种方式从至少一个第三候选设备中确定一个或多个第三设备。可以通过预先设置的视频采集优先级确定第三设备,第一设备确定第三设备的过程中无需用户参与,提升用户体验。也可以将至少一个第三候选设备的信息在第一设备上进行显示,由用户从至少一个第三候选设备中选中一个或多个设备作为第三设备,提高了视频教学过程的灵活性。
作为本申请另一实施例,第一设备确定第三设备后,还需要确定第三设备是否具有视频采集服务,并在第三设备不具有视频采集服务的情况下,通过以下两种方式使得第三设备具有视频采集服务。例如:
第一种方式,在第三设备不具有视频采集服务时,第一设备向第三设备发送第一指令,第一指令用于指示第三设备下载与第三设备适配的视频采集服务;
第二种方式,在第三设备不具有视频采集服务时,第一设备向第三设备发送第一设备的视频采集服务,第一设备的视频采集服务用于指示第三设备根据第一设备的视频采集服务得到第三设备适配的视频采集服务。
对于第三设备而言,对应于第一种方式,第三设备接收到第一指令后,第三设备下载与第三设备适配的视频采集服务。第三设备下载视频采集服务的方式可以参照如前描述的第一设备下载第一教学服务的方式,在此不再赘述。
对于第三设备而言,对应于第二种方式,第三设备接收到第一设备发送的视频采集服务后,第三设备根据第一设备发送的视频采集服务得到第三设备适配的视频采集服务。
在开发多设备实现视频教学的第一类服务和第二类服务之后,与第一设备同一网络下的其他设备中可能不具有第一类服务和/或第二类服务,本申请提供的分布式系统中的第一类服务和第二类服务无需针对各个设备独立开发,而是可以通过一个设备向另一设备推送的方式使得另一设备具有第一类服务或第二类服务,也可以通过一个设备向另一设备发送下载指令的方式使得另一设备下载第一类服务或第二类服务,无需用户预先在另一设备上下载安装相应的原子化服务,提升了用户体验,且提高了多设备协作的视频教学过程的灵活性。
在本申请实施例中,第一设备调用第三设备上的视频采集服务的过程与第二设备向第一设备迁移第一视频的过程类似,均需要首先发现网络中可用于当前服务的设备,在确定了当前服务的第三设备之后,如果第三设备上没有当前服务,还需要通过推送或发送下载指令的方式,使得第三设备部署当前服务。
步骤1005,第一设备通过第一教学服务调用第四设备的视频处理服务,视频处理服务用于控制第四设备处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果。
步骤1006,第四设备通过第四设备的视频处理服务控制第四设备处理第一视频和/或第二视频,获得第一视频和第二视频的比对分析结果。
步骤1007,第一设备通过第一教学服务调用第五设备的语音播报服务,语音播报服务用于控制第五设备的扬声器播放比对分析结果。
步骤1008,第五设备通过第五设备的语音播报服务控制第五设备的扬声器播放第一视频和第二视频的比对分析结果。
步骤1009,第一设备通过第一教学服务调用第六设备的运动数据采集服务,运动数据采集服务用于控制第六设备采集运动数据。
步骤1010,第六设备通过第六设备的运动数据采集服务控制第六设备的运动数据采集装置采集运动数据。
步骤1011,第一设备通过第一教学服务显示运动数据。
在本实施例中,第一设备的第一教学服务还需要调用第四设备的视频处理服务,调用第五设备的语音播报服务,调用第六设备的运动数据采集服务。第一设备的第一教学服务调用第四设备的视频处理服务,调用第五设备的语音播报服务,调用第六设备的运动数据采集服务的过程可以参照上述第一设备的第一教学服务调用第三设备的视频采集服务中的相关描述,在此不再赘述。
另外,为了便于描述,可以将第二设备、第三设备、第四设备、第五设备和第六设备中的任一个记为协作设备,当然,协作设备也可以是第一设备。
对于协作设备而言,协作设备在接收到所述第一设备通过所述第一设备的第一教学服务发送的调用请求后,执行以下至少一种操作:
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的视频采集服务控制所述协作设备的摄像装置采集第二视频;
若所述调用请求为视频处理服务的调用请求,所述协作设备通过所述协作设备的视频处理服务控制所述协作设备处理第一视频和/或所述第二视频,获得所述第一视频和所述第二视频的比对分析结果,其中,所述第一视频为教学视频;
若所述调用请求为语音播报服务的调用请求,所述协作设备通过所述协作设备的语音播报服务控制所述协作设备的扬声器播放所述比对分析结果;
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的运动数据采集服务控制所述协作设备的运动数据采集装置采集运动数据;
其中,所述视频采集服务、所述视频处理服务、所述语音播报服务和所述运动数据采集服务均为所述第一类服务。
作为本申请另一实施例,第四设备的个数为多个时,第一设备通过第一设备的第一教学服务调用第四设备的视频处理服务包括:
第一设备通过第一教学服务以串行的方式调用至少两个第四设备的视频处理服务,以控制至少两个第四设备以串行的方式处理第一视频和/或第二视频;
和/或,
第一设备通过第一教学服务以并行的方式调用至少两个第四设备的视频处理服务,以控制至少两个第四设备以并行的方式处理第一视频和/或第二视频。
参见图12,图12为本申请实施例提供的一种第一设备调用第四设备的方式的示意图,如图所示,第一设备(大屏设备)的第一教学服务调用第一个第四设备(手机1)的视频处理服务1,第一设备(大屏设备)的第一教学服务调用第二个第四设备(大屏设备)的视频处理服务2,第一设备(大屏设备)的第一教学服务调用了第三个第四设备(手机2)的视频处理服务3。
作为举例,第一视频和第二视频的处理过程可以分为以下几个步骤:
步骤A、从第一视频中识别人像,并抽取出第一视频中的第一目标帧,第一目标帧为包含人像的图像帧,
步骤B、从第二视频中识别人像,并抽取出第二视频中的第二目标帧,第二目标帧为包含人像的图像帧;
步骤C、第一目标帧输入卷积神经网络模型中的第一并联通道,获得第一目标帧中的关键点;
步骤D、第二目标帧输入卷积神经网络模型中的第二并联通道,获得第二目标帧中的关键点;
步骤E、第一目标帧中的关键点和第二目标帧中的关键点输入第三串联通道,获得第一视频和第二视频的比对分析结果。需要说明,第一视频和第二视频并非表示完整的第一视频和第二视频,而是,在用户学习的过程第二设备同步到第一设备上的画面以及第三设备实时采集的画面。
上述步骤A可以在手机1上执行,即手机1上的视频处理服务1执行步骤A;
上述步骤B可以在大屏设备上执行,即大屏设备上的视频处理服务2执行步骤B;
上述步骤C、D、E可以在手机2上执行,即手机2上的视频处理服务3执行步骤C至步骤E。
通过上述描述可以看出,手机1和大屏设备以并行的方式处理第一视频和第二视频,手机1和手机2以串行的方式处理第一视频和第二视频;大屏设备和手机2以串行的方式处理第一视频和第二视频。
实际应用中,还可以按照其他方式处理第一视频和第二视频,例如,步骤A、步骤B和步骤E的处理设备不变,步骤C中卷积神经网络模型的第一并联通道可以运行在手机1的视频处理服务1中,步骤D中卷积神经网络模型的第二并联通道可以运行在大屏设备的视频处理服务2中。
在实施例中,处理第一视频和第二视频得到第一视频和第二视频的比对分析结果的过程可以包括多个步骤,这些步骤可以根据内在逻辑被多个第四设备执行,即某个第四设备可能仅参与第一视频的处理过程,某个第四设备可能仅参与第二视频的处理过程,某个第四设备可能参与第一视频和第二视频的处理过程。即,这些步骤中可以并行存在的步骤可以被至少两个第四设备并行的执行,这些步骤中,可以串行存在的步骤可以被至少两个第四设备串行的执行。
需要说明,上述第一设备调用第四设备的方式,使得第四设备中的至少两个设备以串行的方式处理第一视频和/或第二视频,同时第四设备中的至少两个以并行的方式处理第一视频和/或第二视频。实际应用中,第一设备调用第四设备后,全部第四设备可以以串行的方式处理第一视频和/或第二视频,全部第四设备也可以以并行的方式处理第一视频和/或第二视频。
当然,上述第一视频和第二视频的处理过程仅用于示例,实际应用中,还可以是其他处理方式,在此不再限定。
本申请实施例中,第一设备可以根据不同设备的计算能力合理分配计算资源,从而提高视频处理的速度和效率。
本申请实施例中,未明确说明某些步骤或操作是第一类服务或第二类服务实现的,表示可以是第一类服务实现的(第一类服务基于系统服务实现的),也可以是第二类服务实现的(第二类服务基于系统服务实现的)。例如,第一设备获取目标网络中各设备的信息的步骤或操作,第一设备确定至少一个第三候选设备的步骤或操作等,其他步骤不再一一举例。
应理解,上述实施例中第一设备的第一教学服务调用其他设备的第一类服务的描述先后过程并不意味着执行顺序的先后,各个步骤之间的先后顺序应以其内在逻辑确定。
本申请实施例可以根据上述多设备协作的方法示例对第一设备进行功能模块的划分,例如,可以对应每一个功能划分每一个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面以采用对应每一个功能划分每一个功能模块为例进行说明:
参照图13,该第一设备1300运行上面描述的分布式系统,第一设备1300包括:
播放单元1301,用于播放第二设备同步的第一视频;
调用单元1302,用于调用第三设备的视频采集服务,视频采集服务用于控制第三设备的摄像装置采集第二视频;
调用单元1302,还用于调用第四设备的视频处理服务,视频处理服务用于控制第四设备处理第一视频和第二视频,得到第一视频和第二视频的比对分析结果;
调用单元1302,还用于调用第五设备的语音播报服务,语音播报服务用于控制第五设备的扬声器播放比对分析结果;
其中,视频采集服务、视频处理服务和语音播报服务均为第一类服务。
播放单元1301和调用单元1302可以以第二类服务的形式存在。
作为本申请另一实施例,调用单元还用于:调用第六设备的运动数据采集服务,运动数据采集服务用于控制第六设备采集运动数据,其中,运动数据采集服务为第一类服务。
作为本申请另一实施例,第一设备1300还包括:
设备确定单元,用于获取目标网络中各设备的信息,目标网络为第一设备所在的网络;根据目标网络中各设备的信息确定至少一个第三候选设备,该至少一个第三候选设备为目标网络中具有视频采集功能的设备;从该至少一个第三候选设备中确定一个或多个第三设备。
作为本申请另一实施例,设备确定单元还用于:
将至少一个第三候选设备中视频采集优先级最高的一个或多个确定为第三设备;
或,显示至少一个第三候选设备的信息,以提示用户基于显示的至少一个第三候选设备的信息选择一个或多个设备;将被选中的一个或多个设备确定为第三设备。
设备确定单元可以以第一类服务和/或第二类服务的形式存在。
作为本申请另一实施例,第一设备1300还包括:
推送单元,用于在第三设备不具有视频采集服务时,向第三设备发送第一指令,第一指令用于指示第三设备下载与第三设备适配的视频采集服务;或,在第三设备不具有视频采集服务时,向第三设备发送第一设备的视频采集服务,第一设备的视频采集服务用于指示第三设备根据第一设备的视频采集服务得到第三设备适配的视频采集服务。
推送单元可以以第一类服务的形式存在。
作为本申请另一实施例,第一设备1300还包括:
适配单元,用于第一设备不具有第一教学服务时,获取第一设备适配的第一教学服务;接收第二设备的第二教学服务发送的第一视频的同步数据;根据同步数据播放第一视频;
适配单元还用于第一设备具有第一教学服务时,接收到第一视频的同步数据后,根据同步数据播放第一视频。
作为本申请另一实施例,适配单元还用于:
在接收到第二设备发送的第二指令后,下载与第一设备适配的第一教学服务;
或,在接收到第二设备发送的第二教学服务后,根据第二教学服务得到第一设备适配的第一教学服务。
适配单元可以以第一类服务和/或第二类服务的形式存在。
作为本申请另一实施例,第四设备的个数为多个时,调用单元1302还用于:
以串行的方式调用至少两个第四设备的视频处理服务,以控制至少两个第四设备以串行的方式处理第一视频和/或第二视频;
和/或,
以并行的方式调用至少两个第四设备的视频处理服务,以控制至少两个第四设备以并行的方式处理第一视频和/或第二视频。
调用单元可以以第一类服务的形式存在。
需要说明的是,上述第一设备/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
本申请实施例可以根据上述多设备协作的方法示例对协作设备进行功能模块的划分,例如,可以对应每一个功能划分每一个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面以采用对应每一个功能划分每一个功能模块为例进行说明:
该协作设备运行上面描述的分布式系统,该协作设备包括:
处理单元,用于接收到第一设备的第一教学服务的调用请求后,执行以下至少一种操作:
通过视频采集服务控制协作设备的摄像装置采集第二视频;
通过视频处理服务控制协作设备处理第一视频和/或第二视频,其中,第一视频为教学视频;
通过语音播报服务控制协作设备的扬声器播放比对分析结果,该比对分析结果为第一视频和第二视频的比对分析结果;
通过运动数据采集服务控制协作设备的运动数据采集装置采集运动数据;
其中,视频采集服务、视频处理服务、语音播报服务和运动数据采集服务均为第一类服务。
处理单元可以是第一类服务。
作为本申请另一实施例,协作设备还包括:
视频迁移单元,用于向第一设备发起第一视频迁移。
视频迁移单元可以是第二类服务。
作为本申请另一实施例,视频迁移单元还用于:
在第一设备不具有第一教学服务时,向第一设备推送第二教学服务,第二教学服务用于指示第一设备根据第二教学服务得到第一设备适配的第一教学服务;向第一设备的第一教学服务发送第一视频的同步数据;
或,在第一设备不具有第一教学服务时,向第一设备发送第二指令,第二指令用于指示第一设备下载第一设备适配的第一教学服务;向第一设备的第一教学服务发送第一视频的同步数据。
作为本申请另一实施例,协作设备还包括:
设备确定单元,用于获取目标网络中各设备的信息,目标网络为协作设备所在的网络;根据目标网络中各设备的信息确定至少一个第一候选设备,至少一个第一候选设备为目标网络中具有视频播放功能的设备;从至少一个第一候选设备中确定第一设备。
作为本申请另一实施例,设备确定单元还用于:
将至少一个第一候选设备中视频播放优先级最高的一个确定为第一设备;
或,显示该至少一个第一候选设备的信息,以提示用户基于显示的至少一个第一候选设备的信息选择一个或多个设备;将被选中一个或多个设备确定为第一设备。
设备确定单元可以以第一类服务的形式存在也可以以第二类服务的形式存在。
需要说明的是,上述协作设备/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将设备的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时可实现上述各个方法实施例中的步骤。
本申请实施例还提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现上述各个方法实施例中的步骤。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质至少可以包括:能够将计算机程序代码携带到第一设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
本申请实施例还提供了一种芯片系统,芯片系统包括处理器,处理器与存储器耦合,处理器执行存储器中存储的计算机程序,以实现本申请任一方法实施例的步骤。芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (14)
1.一种多设备协作的方法,其特征在于,应用于运行分布式系统的第一设备,所述分布式系统包括:系统服务、位于所述系统服务上层的第一类服务、位于所述第一类服务上层且具有界面显示功能的第二类服务,所述第一类服务和所述第二类服务均为原子化服务,第二设备、第三设备、第四设备以及第五设备均运行分布式系统,一个设备的原子化服务通过系统服务中的分布式软总线调用另一设备的原子化服务,所述方法包括:
所述第一设备通过所述第一设备的第一教学服务播放第二设备通过所述第二设备的第二教学服务同步的第一视频,所述第一教学服务和所述第二教学服务属于所述第二类服务,包括: 若所述第一设备不具有第一教学服务,所述第一设备获取所述第一设备适配的第一教学服务;所述第一设备通过所述第一教学服务接收所述第二设备的第二教学服务发送的所述第一视频的同步数据;所述第一设备通过所述第一教学服务根据所述同步数据播放所述第一视频;若所述第一设备具有第一教学服务,所述第一设备通过所述第一教学服务接收到所述第一视频的同步数据后,所述第一设备通过所述第一教学服务根据所述同步数据播放所述第一视频;其中,第二设备通过推送第二教学服务或发送下载指令的方式指示第一设备部署第一教学服务;
所述第一设备通过所述第一教学服务调用第三设备的视频采集服务,所述视频采集服务用于控制所述第三设备的摄像装置采集第二视频;
所述第一设备通过所述第一教学服务调用第四设备的视频处理服务,所述视频处理服务用于控制所述第四设备处理所述第一视频和所述第二视频,得到所述第一视频和所述第二视频的比对分析结果;
所述第一设备通过所述第一教学服务调用第五设备的语音播报服务,所述语音播报服务用于控制所述第五设备的扬声器播放所述比对分析结果;
其中,所述视频采集服务、所述视频处理服务和所述语音播报服务均为第一类服务;
所述第一设备通过所述第一教学服务调用第六设备的运动数据采集服务,所述运动数据采集服务用于控制所述第六设备采集运动数据,其中,所述运动数据采集服务为第一类服务。
2.如权利要求1所述的方法,其特征在于,在所述第一设备通过所述第一教学服务调用第三设备的视频采集服务之前,还包括:
所述第一设备获取目标网络中各设备的信息,所述目标网络为所述第一设备所在的网络;
所述第一设备根据所述目标网络中各设备的信息确定至少一个第三候选设备,所述至少一个第三候选设备为所述目标网络中具有视频采集功能的设备;
所述第一设备从所述至少一个第三候选设备中确定所述第三设备。
3.如权利要求2所述的方法,其特征在于,所述第一设备从所述至少一个第三候选设备中确定所述第三设备包括:
所述第一设备将所述至少一个第三候选设备中视频采集优先级最高的一个或多个确定为所述第三设备;
或,
所述第一设备通过所述第一教学服务显示所述至少一个第三候选设备的信息,以提示用户基于显示的所述至少一个第三候选设备的信息选择一个或多个设备;
所述第一设备将被选中的一个或多个设备确定为所述第三设备。
4.如权利要求3所述的方法,其特征在于,在所述第一设备从所述至少一个第三候选设备中确定所述第三设备之后,还包括:
若所述第三设备不具有视频采集服务,所述第一设备向所述第三设备发送第一指令,所述第一指令用于指示所述第三设备下载与所述第三设备适配的视频采集服务;
或,
若所述第三设备不具有视频采集服务,所述第一设备向所述第三设备发送第一设备的视频采集服务,所述第一设备的视频采集服务用于指示所述第三设备根据所述第一设备的视频采集服务得到所述第三设备适配的视频采集服务。
5.如权利要求1所述的方法,其特征在于,所述第一设备获取所述第一设备适配的第一教学服务包括:
所述第一设备在接收到所述第二设备发送的第二指令后,下载与所述第一设备适配的第一教学服务;
或,
所述第一设备在接收到所述第二设备发送的第二教学服务后,根据所述第二教学服务得到所述第一设备适配的第一教学服务。
6.如权利要求1至4任一项所述的方法,其特征在于,当所述第四设备的个数为多个时,所述第一设备通过所述第一教学服务调用第四设备的视频处理服务包括:
所述第一设备通过所述第一教学服务以串行的方式调用至少两个第四设备的视频处理服务,以控制所述至少两个第四设备以串行的方式处理所述第一视频和/或所述第二视频;
和/或,
所述第一设备通过所述第一教学服务以并行的方式调用至少两个第四设备的视频处理服务,以控制所述至少两个第四设备以并行的方式处理所述第一视频和/或所述第二视频。
7.一种多设备协作的方法,其特征在于,应用于运行分布式系统的协作设备,所述分布式系统包括:系统服务、位于所述系统服务上层的第一类服务,所述第一类服务为原子化服务,位于所述第一类服务上层且具有界面显示功能的第二类服务,所述第二类服务为原子化服务,所述协作设备包括第二设备、第三设备、第四设备以及第五设备,一个设备的原子化服务通过系统服务中的分布式软总线调用另一设备的原子化服务;所述方法包括:
所述协作设备在接收到第一设备通过所述第一设备的第一教学服务发送的调用请求后,执行以下至少一种操作:
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的视频采集服务控制所述协作设备的摄像装置采集第二视频;
若所述调用请求为视频处理服务的调用请求,所述协作设备通过所述协作设备的视频处理服务控制所述协作设备处理第一视频和/或所述第二视频,其中,所述第一视频为教学视频;
若所述调用请求为语音播报服务的调用请求,所述协作设备通过所述协作设备的语音播报服务控制所述协作设备的扬声器播放比对分析结果,其中,所述比对分析结果为所述第一视频和所述第二视频的比对分析结果;
若所述调用请求为视频采集服务的调用请求,所述协作设备通过所述协作设备的运动数据采集服务控制所述协作设备的运动数据采集装置采集运动数据;
所述协作设备通过所述协作设备的第二教学服务向所述第一设备发起第一视频迁移,所述第二教学服务为所述第二类服务,包括: 若所述第一设备不具有第一教学服务,所述协作设备通过推送第二教学服务或发送下载指令的方式指示第一设备部署第一教学服务;所述协作设备通过所述第二教学服务向所述第一设备的第一教学服务发送所述第一视频的同步数据;若所述第一设备具有第一教学服务,所述协作设备通过所述第二教学服务向所述第一设备的第一教学服务发送所述第一视频的同步数据;
其中,所述视频采集服务、所述视频处理服务、所述语音播报服务和所述运动数据采集服务均为所述第一类服务。
8.如权利要求7所述的方法,其特征在于,所述协作设备通过所述协作设备的第二教学服务向所述第一设备发起第一视频迁移包括:
若所述第一设备不具有第一教学服务,所述协作设备向所述第一设备推送所述第二教学服务,所述第二教学服务用于指示所述第一设备根据所述第二教学服务得到所述第一设备适配的第一教学服务;
所述协作设备通过所述第二教学服务向所述第一设备的第一教学服务发送所述第一视频的同步数据;
或,
若所述第一设备不具有第一教学服务,所述协作设备向所述第一设备发送第二指令,所述第二指令用于指示所述第一设备下载所述第一设备适配的第一教学服务;
所述协作设备通过所述第二教学服务向所述第一设备的第一教学服务发送所述第一视频的同步数据。
9.如权利要求7或8所述的方法,其特征在于,在所述协作设备通过所述协作设备的第二教学服务向所述第一设备发起第一视频迁移之前,还包括:
所述协作设备获取目标网络中各设备的信息,所述目标网络为所述协作设备所在的网络;
所述协作设备根据所述目标网络中各设备的信息确定至少一个第一候选设备,所述至少一个第一候选设备为所述目标网络中具有视频播放功能的设备;
所述协作设备从所述至少一个第一候选设备中确定所述第一设备。
10.如权利要求9所述的方法,其特征在于,所述协作设备从所述至少一个第一候选设备中确定所述第一设备包括:
所述协作设备将所述至少一个第一候选设备中视频播放优先级最高的一个确定为第一设备;
或,
所述协作设备通过所述第二教学服务显示所述至少一个第一候选设备的信息,以提示用户基于显示的所述至少一个第一候选设备的信息选择一个设备;
所述协作设备将被选中的一个设备确定为所述第一设备。
11.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于运行存储器中存储的计算机程序,以实现如权利要求1至6任一项所述的方法。
12.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于运行存储器中存储的计算机程序,以实现如权利要求7至10任一项所述的方法。
13.一种多设备协作系统,其特征在于,包括:如权利要求11所述的电子设备和至少一个如权利要求12所述的电子设备。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被一个或多个处理器执行时实现如权利要求1至6任一项所述的方法和/或如权利要求7至10任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677649.2A CN113938720B (zh) | 2020-07-13 | 2020-07-13 | 多设备协作的方法、电子设备及多设备协作系统 |
US18/005,324 US11979632B2 (en) | 2020-07-13 | 2021-07-09 | Multi-device collaboration method, electronic device, and multi-device collaboration system |
EP21841623.8A EP4175302A4 (en) | 2020-07-13 | 2021-07-09 | METHOD FOR COOPERATION OF MULTIPLE DEVICES, ELECTRONIC DEVICE AND SYSTEM FOR COOPERATION OF MULTIPLE DEVICES |
PCT/CN2021/105603 WO2022012444A1 (zh) | 2020-07-13 | 2021-07-09 | 多设备协作的方法、电子设备及多设备协作系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010677649.2A CN113938720B (zh) | 2020-07-13 | 2020-07-13 | 多设备协作的方法、电子设备及多设备协作系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113938720A CN113938720A (zh) | 2022-01-14 |
CN113938720B true CN113938720B (zh) | 2023-11-17 |
Family
ID=79273991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010677649.2A Active CN113938720B (zh) | 2020-07-13 | 2020-07-13 | 多设备协作的方法、电子设备及多设备协作系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11979632B2 (zh) |
EP (1) | EP4175302A4 (zh) |
CN (1) | CN113938720B (zh) |
WO (1) | WO2022012444A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114512041B (zh) * | 2022-02-21 | 2024-03-08 | 重庆第二师范学院 | 一种基于全景摄像的教学行为大数据分析装置 |
CN114245267B (zh) * | 2022-02-27 | 2022-07-08 | 北京荣耀终端有限公司 | 多设备协同工作的方法、系统及电子设备 |
CN115209202A (zh) * | 2022-06-24 | 2022-10-18 | 广西世纪创新显示电子有限公司 | 一种运动过程画面的同步显示方法及电子设备 |
CN115242547B (zh) * | 2022-09-19 | 2023-02-14 | 荣耀终端有限公司 | 一种远程协助的系统、方法和电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950495A (zh) * | 2010-10-19 | 2011-01-19 | 冠捷显示科技(厦门)有限公司 | 一种新型视频教育技术 |
CN103974101A (zh) * | 2014-06-03 | 2014-08-06 | 王军明 | 一种关于视频的任务流程化调度方法 |
CN104038511A (zh) * | 2013-03-04 | 2014-09-10 | 联想(北京)有限公司 | 一种资源管理方法及装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004207951A (ja) * | 2002-12-25 | 2004-07-22 | Fuji Xerox Co Ltd | ビデオ閲覧システム |
CN101699393B (zh) * | 2009-10-09 | 2013-03-20 | 中国电子科技集团公司第二十八研究所 | 一种面向网络的智能化软件界面动态生成方法 |
TW201335902A (zh) * | 2012-02-24 | 2013-09-01 | Univ Nat Chiao Tung | 雲端化多媒體教學系統、其製作方法及其互動方法 |
KR101304111B1 (ko) * | 2012-03-20 | 2013-09-05 | 김영대 | 댄싱 가라오케 시스템 |
CN103248956B (zh) * | 2013-05-20 | 2016-12-28 | 浙江传媒学院 | 一种多屏协作模式的智能家庭视频业务的实现方法及系统 |
JP6178234B2 (ja) * | 2013-12-27 | 2017-08-09 | 日立マクセル株式会社 | 放送受信装置及び映像表示方法 |
JP6539941B2 (ja) * | 2014-01-07 | 2019-07-10 | 富士通株式会社 | 評価プログラム、評価方法及び評価装置 |
CN104618383B (zh) * | 2015-02-12 | 2018-05-29 | 刘肖兵 | 一种大型的多场地平台、分布式广场舞的通信及管理系统 |
CN105260962A (zh) * | 2015-11-13 | 2016-01-20 | 苏州中科知图信息科技有限公司 | 协同教育平台系统及其构建方法 |
WO2017115887A1 (ko) * | 2015-12-29 | 2017-07-06 | 경일대학교 산학협력단 | 동작 인식 기반의 게임을 제공하기 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 |
US10286280B2 (en) * | 2016-04-11 | 2019-05-14 | Charles Chungyohl Lee | Motivational kinesthetic virtual training program for martial arts and fitness |
-
2020
- 2020-07-13 CN CN202010677649.2A patent/CN113938720B/zh active Active
-
2021
- 2021-07-09 WO PCT/CN2021/105603 patent/WO2022012444A1/zh unknown
- 2021-07-09 EP EP21841623.8A patent/EP4175302A4/en active Pending
- 2021-07-09 US US18/005,324 patent/US11979632B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101950495A (zh) * | 2010-10-19 | 2011-01-19 | 冠捷显示科技(厦门)有限公司 | 一种新型视频教育技术 |
CN104038511A (zh) * | 2013-03-04 | 2014-09-10 | 联想(北京)有限公司 | 一种资源管理方法及装置 |
CN103974101A (zh) * | 2014-06-03 | 2014-08-06 | 王军明 | 一种关于视频的任务流程化调度方法 |
Non-Patent Citations (2)
Title |
---|
软件绿色联盟.原子化服务通用技术标准.《原子化服务通用技术标准》.2019, * |
软件绿色联盟开发者大会开幕,联合泰尔终端实验室发布三大标准;资深科技控;《百度APP》;20191121;全文 * |
Also Published As
Publication number | Publication date |
---|---|
US20230345074A1 (en) | 2023-10-26 |
WO2022012444A1 (zh) | 2022-01-20 |
CN113938720A (zh) | 2022-01-14 |
EP4175302A4 (en) | 2024-01-03 |
US11979632B2 (en) | 2024-05-07 |
EP4175302A1 (en) | 2023-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113938720B (zh) | 多设备协作的方法、电子设备及多设备协作系统 | |
CN111132234B (zh) | 一种数据传输方法及对应的终端 | |
US20220174143A1 (en) | Message notification method and electronic device | |
WO2021213031A1 (zh) | 图像合成方法及相关装置 | |
CN114827581A (zh) | 同步时延测量方法、内容同步方法、终端设备及存储介质 | |
CN114422340B (zh) | 日志上报方法、电子设备及存储介质 | |
CN116233300A (zh) | 控制通信服务状态的方法、终端设备和可读存储介质 | |
CN111343326A (zh) | 获取测试日志的方法及相关装置 | |
US20240098354A1 (en) | Connection establishment method and electronic device | |
WO2022022319A1 (zh) | 一种图像处理方法、电子设备、图像处理系统及芯片系统 | |
CN113490291B (zh) | 数据下载方法、装置和终端设备 | |
CN113645595B (zh) | 设备交互方法和装置 | |
WO2021052408A1 (zh) | 一种电子设备显示方法及电子设备 | |
CN114844542A (zh) | 天线选择方法、装置、电子设备及可读存储介质 | |
CN114500725B (zh) | 目标内容传输方法、主设备、从设备和存储介质 | |
CN116321265B (zh) | 网络质量评估方法、电子设备以及存储介质 | |
CN116668763B (zh) | 录屏方法及装置 | |
CN116450026B (zh) | 用于识别触控操作的方法和系统 | |
CN114079694B (zh) | 控件标注方法及装置 | |
CN115580541B (zh) | 信息同步方法及电子设备 | |
CN116320123B (zh) | 一种语音信号的输出方法和电子设备 | |
CN111801931B (zh) | 通话发生srvcc切换时,接通和挂断电话的方法 | |
CN117319369A (zh) | 文件投送方法、电子设备及存储介质 | |
CN117991954A (zh) | 设备输入方法、系统、电子设备及存储介质 | |
CN116266088A (zh) | 应用卡片显示方法、装置、终端设备及可读存储介质 |
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 |