Streaming video chat from a mobile device to a display device using a rotating base
By combining a rotating base with an application, the complexities of connecting mobile devices and display devices are solved, enabling seamless streaming and real-time display of video chat and enhancing the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ROKU INC
- Filing Date
- 2021-09-22
- Publication Date
- 2026-05-01
AI Technical Summary
Mobile device screens are typically too small to effectively enable seamless video chat connections to larger display devices, and traditional methods are complex and inconvenient.
By combining a rotating base and an application, seamless connectivity between mobile devices and display devices is achieved. Utilizing the rotating unit and controller of the rotating base, along with a camera and microphone, audio and video data is captured, formatted, and streamed to the display device.
It enables seamless display of video chat on display devices, allowing users to operate hands-free, and achieves real-time output and efficient connection of video chat.
Smart Images

Figure CN116195244B_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This application claims priority to U.S. Patent Application No. 17 / 028,561, filed September 22, 2020, the contents of which are incorporated herein by reference in their entirety. background Technical Field
[0004] In general, this disclosure relates to streaming video and audio data to a display device. Background Technology
[0006] Users use mobile devices (such as smartphones, laptops, tablets, etc.) to video chat with family and friends. However, mobile device screens are often too small for this purpose. For example, if a user tries to video chat with family, they may find it difficult to see all their family members on the small display of their mobile device. Traditional systems do not offer the ability to seamlessly connect mobile devices to larger display devices for streaming video chats. Therefore, connecting mobile devices to larger display devices can be cumbersome. Summary of the Invention
[0007] This document provides embodiments of systems, apparatuses, devices, methods, and / or computer program products for streaming video chat from mobile devices to display devices, and / or combinations and sub-combinations thereof.
[0008] The given embodiments include a method for streaming video chat from a mobile device to a display device. The method operates by receiving a streaming request and establishing a connection with the display device, the streaming request streaming incoming audio and video data received by a first mobile device from a second mobile device on the display device, and from the first mobile device. The method also operates by: capturing incoming audio and video data transmitted from the second mobile device to the first mobile device; formatting the incoming audio and video data to be output by the display device; and streaming the formatted incoming audio and video data to the display device. The display device outputs the formatted incoming audio and video data in response to receiving the formatted incoming audio and video data.
[0009] Another embodiment includes a system for streaming video chat from a mobile device to a display device. The system includes a camera, a microphone, and a first mobile device coupled to the camera and microphone. The first mobile device is configured to execute an application. When executed, the application is configured to transmit a chat request to initiate an audio and video chat with a second mobile device. Initiation of the audio and video chat enables the first mobile device to send and receive audio and video communications to and from the second mobile device. In response to establishing a connection with a swivel base, the application is also configured to establish a connection between the first mobile device and the swivel base and send a streaming request that streams incoming audio and video data received by the first mobile device from the second mobile device to the display device. In response to the sent streaming request, the incoming audio and video data is output by the display device. The application is also configured to capture outgoing audio and video data from the microphone and camera of the first mobile device and send the outgoing audio and video data to the second mobile device.
[0010] Another embodiment includes a rotating base. The rotating base includes a motor, a communication device, a rotatable unit coupled to the motor, a coupling unit coupled to the rotatable unit, and a controller coupled to the motor and the communication device. The controller is configured to establish a connection with the mobile device via the communication device and receive the mobile device in the coupling unit in response to a request from the mobile device to connect to the rotating base. The mobile device is communicatively coupled to the rotating base via the communication device and physically coupled to the rotating base via the coupling unit. The controller is also configured to receive instructions from an application running on the mobile device to move the rotatable unit by a predetermined amount and to instruct the motor to rotate the rotatable unit by the predetermined amount. Rotating the rotatable unit causes the coupling unit physically coupled to the mobile device to rotate by the predetermined amount.
[0011] Another embodiment includes a tangible computer-readable device having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations. These operations may include: receiving a streaming request to stream incoming audio and video data received by a first mobile device from a second mobile device on a display device; streaming the data from the first mobile device; and establishing a connection with the display device. These operations also include: capturing incoming audio and video data sent from the second mobile device to the first mobile device; formatting incoming audio and video data to be output by the display device; and streaming the formatted incoming audio and video data to the display device. In response to receiving the formatted incoming audio and video data, the display device outputs the formatted incoming audio and video data. Attached Figure Description
[0012] The accompanying drawings are incorporated herein and form part of the specification.
[0013] Figure 1 This is a block diagram of a system for streaming video chat from a mobile device to a display device, according to some embodiments.
[0014] Figure 2 This is a block diagram of a system data stream for streaming video chat from a mobile device to a display device, according to some embodiments.
[0015] Figure 3 This is a block diagram of a rotatable base according to an example embodiment.
[0016] Figure 4 This is a flowchart illustrating a video chat streaming process on a display device, according to some embodiments.
[0017] Figure 5 This is a flowchart illustrating, according to some embodiments, the transformation of user tracking data within the field of view of a mobile device's camera.
[0018] Figure 6 This is a block diagram of example components of a mobile device according to some embodiments.
[0019] Figure 7 These are example computer systems for implementing various embodiments.
[0020] In the accompanying drawings, similar reference numerals typically denote the same or similar elements. Furthermore, the leftmost number of the reference numerals usually indicates the figure number in which that reference numeral first appears. Detailed Implementation
[0021] This document provides embodiments of systems, apparatuses, devices, methods, and / or computer program products for streaming video chat from mobile devices to display devices, and / or combinations and sub-combinations thereof.
[0022] As shown above, users will want to view video chats on larger display devices. Therefore, users will want to stream video chats to a larger display. Traditional methods of connecting display devices to mobile devices are cumbersome and complex.
[0023] In a given embodiment, a first user can send a video chat request to a server using a first mobile device to initiate a video chat with a second user using a second mobile device. In response to receiving the video request, the server can communicate between the first and second mobile devices. This communication can include audio and video data. Audio data can be received via the microphones of the first and second mobile devices, and video data can be received via the cameras of the first and second video devices.
[0024] A first user can couple a first mobile device to a rotating base to stream video chat to a display device such as a television. The rotating base may include a rotatable unit coupled to a coupling unit, a motor coupled to the rotatable unit, and a controller coupled to the motor. The rotating base may also include a communication device coupled to the controller. The mobile device can be communicatively coupled to the rotating base using the communication device. Furthermore, the mobile device can be physically coupled to the rotating base using the coupling unit. In response to the first mobile device being communicatively coupled to the rotating base, a streaming request can be sent to a server. The server can establish a connection between the display device and the first mobile device. Incoming audio and video data received by the first mobile device can be output by the display device.
[0025] An application running on the first mobile device utilizes the camera of the first mobile device to determine whether the first mobile device needs to be moved to keep the first user within the camera's field of view, based on the first user's movement. The camera of the first mobile device is capable of capturing the movement of the first user (e.g., a target) within the camera's field of view. The application determines the amount by which the first mobile device needs to be moved to keep the first user within the field of view. The application sends a command to the rotating base to rotate the rotatable unit by the determined amount. In response to receiving the command, the controller can instruct the motor to move the rotatable unit by the determined amount. By doing so, the rotatable unit can move the coupling unit holding the first mobile device.
[0026] The above configuration allows for seamless streaming of audio and video data for video chats on display devices (such as a television, used as an example only). Furthermore, this configuration enables hands-free video chats.
[0027] Figure 1 This is a block diagram of a system for streaming video chat from a mobile device to a display device. In an embodiment, the system may include a server 100, a first mobile device 120, a display device 132, a rotating base 140, and a second mobile device 150. The server 100, the first mobile device 120, and the second mobile device 150 can be connected via a wired connection, a wireless connection, or a combination of wired and wireless connections. Furthermore, the server 100 and the display device 132 can be connected via a wired connection, a wireless connection, or a combination of wired and wireless connections.
[0028] For example, server 100, first mobile device 120, and second mobile device 150 can be connected via a network. Server 100 and display device 132 can also be connected via a network. This network can be an ad hoc network, intranet, extranet, virtual private network (VPN), local area network (LAN), wireless local area network (WLAN), wide area network (WAN), wireless wide area network (WWAN), metropolitan area network (MAN), part of the Internet, part of the public switched telephone network (PSTN), mobile phone network, wireless network, WiFi network, WiMax network, any other type of network, or a combination of two or more networks.
[0029] The rotating base 140 may include a communication device 142. The first mobile device 120 may be communicatively coupled to the communication device 142 of the rotating base 140 via a wired or wireless connection. For example, a data cable coupled to the data port of the first mobile device 120 may be connected to the communication device 142. In some embodiments, the communication device 142 may be a near-field communication (NFC) device, such as... Therefore, the first mobile device 120 can be wirelessly coupled to the communication device 142.
[0030] Server 100 may include a streaming system 102 and a video chat system 104. Streaming system 102 may be configured to stream incoming video and audio data to display device 132. Video chat system 104 may be configured to conduct video chat between a first mobile device 120 and a second mobile device 150. In this respect, through video chat system 104, the first mobile device 120 and the second mobile device 150 can send and receive audio and video data from each other.
[0031] The first mobile device 120 may include a first display 122, a first speaker 123, a first microphone 124, an application 126, a first camera 128, and a first video chat application 130. The first microphone 124 may be configured to receive and capture audio input. The first speaker 123 may output audio data. The first speaker 123 may be built into the first mobile device 120 or located externally to the first mobile device 120. If the first speaker 123 is located externally to the first mobile device 120, it may be coupled to the first mobile device using a wired or wireless connection. The first camera 128 may be configured to receive and capture image data, including still image data and video data. The first camera 128 may also include a sensor 129. The sensor 129 may be an optical sensor configured to track the movement of a target within the field of view of the first camera 128.
[0032] The first video chat application 130 can be a video chat platform or a Voice over IP (VoIP) system, configured to allow the first mobile device 120 to send and receive audio and video data to and from another mobile device (e.g., the second mobile device 150). The first video chat application 130 can communicate with the other mobile device (e.g., the second mobile device 150) via the video chat system 104. Alternatively, the first video chat application 130 can be configured to use a third-party video chat system (such as...). Google Microsoft A third-party video chat platform that communicates with other mobile devices, such as [etc.]. Furthermore, the first video chat application 130 can be a third-party Voice over IP (VoIP) platform, for example... wait.
[0033] Application 126 can be a streaming application. Application 126 can be configured to send a request to server 100 to stream audio and video data of a video chat from first mobile device 120 to display device 132. Display device 132 can output the audio and video data. Application 126 can also be configured to use sensor 129 to track the user's movement within the field of view of first camera 128.
[0034] The second mobile device 150 may include a second display 152, a second speaker 153, a second microphone 154, a second camera 156, and a second video chat application 151. The second microphone 154 may be configured to receive and capture audio input. The second speaker 153 may output audio data. The second speaker 153 may be built into the second mobile device 150 or located externally to the second mobile device 150. If the second speaker 153 is located externally to the second mobile device 150, it may be coupled to the first mobile device using a wired or wireless connection. The second camera 156 may be configured to receive and capture image data, including still image data and video data. The second video chat application 151 may be a video chat platform or a Voice over IP (VoIP) system configured to allow the second mobile device 150 to send and receive audio and video data to another mobile device (e.g., the first mobile device 120).
[0035] Display device 132 may include a display 134, a display speaker 136, and an application 138. Display 134 may output still and moving image data (e.g., video data). Display speaker 136 may be configured to output audio data. Application 138 may be a streaming application configured to receive audio and video data from the first mobile device 120 and output by display 134 and display speaker 136. Display device 132 may be a television, monitor, projector screen, or the like.
[0036] The rotating base 140 can be a base configured to fix, support, and rotate a mobile device (e.g., a first mobile device 120). The rotating base 140 can include a rotatable unit, a coupling unit, a communication device 142, a motor 144, and a controller 146. Figure 2 The rotatable unit and the coupling unit will be described in more detail below. The controller 146 can be coupled to the communication device 142 and the motor 144. In addition, the motor 144 can be coupled to the rotatable unit, and the rotatable unit can be coupled to the coupling unit.
[0037] The rotating base 140 can be physically coupled to the first mobile device 120 using a coupling unit. The coupling unit can include an attachment mechanism for securing and supporting the first mobile device 120. The attachment mechanism can include a latch, lock, magnet, or the like.
[0038] In some embodiments, the rotating base 140 can be configured to provide power to the first mobile device 120 in response to physical coupling with the first mobile device 120. This power can be provided via a power cable forming a connection between the rotating base 140 and the first mobile device 120. This power cable can receive power through a power outlet. Alternatively, the power cable can receive power from the power source of the rotating base 140 or the display device 132 via a USB port.
[0039] In some embodiments, the rotating base 140 or the display device 132 may also wirelessly supply power to the first mobile device 120 using the Qi standard.
[0040] As described above, the coupling unit can be coupled to a rotatable unit. The rotatable unit can be an arm or ball configured to rotate about a rotation axis. The rotatable unit can cause the coupling unit to rotate, thereby causing the first mobile device 120 physically coupled to the coupling unit to rotate. The rotatable unit can also move along the x-axis and z-axis. The motor 144 can control the operation (e.g., rotation) of the rotatable unit.
[0041] The rotating base 140 can be communicatively coupled to the first mobile device 120 via a communication device 142. The communication device 142 can be a data port configured to connect to the first mobile device using a data cable. Alternatively, the communication device 142 can be an NFC device configured to wirelessly connect to the first mobile device 120, for example... equipment.
[0042] In response to the first mobile device 120 being physically housed in and communicatively coupled to the rotating base 140, the controller 146 can receive instructions from the first mobile device 120 to rotate the rotatable unit by a predetermined amount. The controller 146 can instruct the motor to rotate the rotatable unit by the predetermined amount.
[0043] Figure 2 This is a block diagram illustrating the data flow of a system for streaming video chat from a mobile device to a display device. In a given embodiment, a first user of a first mobile device 120 can attempt to initiate a video chat with a second user of a second mobile device 150 using a first video chat application 130 of the first mobile device 120 and a second video chat application 151 of the second mobile device 150. For example, the first video chat application 130 can be a video chat platform or a VoIP platform. If the first video chat application 130 and the second video chat application 151 are VoIP platforms, then the first video chat application 130 can convert audio and video data into digital signals. Thus, the audio and video data can be transmitted over the network.
[0044] The first mobile device 120 can launch the first video chat application 130. First, the mobile device 120 can retrieve an identifier (e.g., phone number, user identifier, username, screen name, etc.) associated with the second mobile device 150. The first mobile device 120 sends a request 200-1 to the video chat system 104 to initiate a video chat with the second mobile device 150. Request 200-1 contains the identifier associated with the second mobile device 150.
[0045] Server 100 receives request 200-1, and video chat system 104 uses the identifier in request 200-1 to identify the second mobile device 150. Video chat system 104 sends request 200-2 to initiate a video chat with the second mobile device 150. Request 200-2 will contain the identifier of the first mobile device 150.
[0046] In response to the acceptance request 200-2, the second mobile device 150 launches a second video chat application 151. The second video chat application 151 generates an alarm indicating a request to initiate a video chat with the first mobile device 120. This alarm can be an audible alarm, a haptic alarm, a visual alarm, or a combination of both. The second user accepts the request to initiate the video chat by providing input (e.g., selecting an "Accept" button). In response to the second user's acceptance of the request, the second video chat application 151 sends a response 200-3 to the video chat system 104. Response 200-3 contains instructions to initiate a video chat with the first mobile device 150.
[0047] Server 100 receives response 200-3 and video chat system 104 generates response 200-4. Response 200-4 enables audio and video data transmission between the first mobile device 120 and the second mobile device 150. Video chat system 104 sends response 200-4 to the first video chat application 130 on the first mobile device 120. In some embodiments, audio and video transmission may also allow screen sharing functionality. Thus, the video data may include image data of the first mobile device 120 or the second mobile device 150 corresponding to image data displayed on the first display 122 or the second display 152.
[0048] When initiating a video chat, the first video chat application 130 on the first mobile device 120 and the second video chat application 151 on the second mobile device 150 negotiate the format for compressing, encoding, decoding, and synchronizing the transmitted audio and video data. The negotiated format is acceptable to both the first and second mobile devices 120 and the network connection. Thus, the first video chat application 130 compresses, encodes, and synchronizes the audio and video in a format that can be decompressed and decoded by the second video chat application 151. Similarly, the second video chat application 151 compresses, encodes, and synchronizes the audio and video in a format that can be decompressed and decoded by the first video chat application 130. Furthermore, adaptive streaming based on network connection, video quality, etc., allows for updates to the compression, encoding, decoding, and synchronization formats during the video chat.
[0049] In response to receiving response 200-4, the first video chat application 130 enables the first camera 128 and the first microphone 124 to function. The first camera 128 receives and captures outgoing video data within its field of view. The first microphone 124 receives and captures outgoing audio data within a given proximity range of the first mobile device 120. The first video chat application 130 then transmits the captured outgoing video and audio data to the second video chat application 151 on the second mobile device 150 via the video chat system 104.
[0050] In some embodiments, the first mobile device 120 and the second mobile device 150 can form a peer-to-peer connection after initiating a video chat. In this regard, the first mobile device 120 and the second mobile device 150 can directly send audio and video data to each other over the network using the first video chat application 130 and the second video chat application 151.
[0051] The second video chat application 151 of the second mobile device 150 receives incoming audio and video data from the first video chat application 130 of the first mobile device 150. The second video chat application 151 displays the incoming video data on the second display 152 and outputs the incoming audio data through the second speaker 153 of the second mobile device 150. The speaker 153 can be built into the second mobile device 150 or externally connected to the second mobile device 150.
[0052] The second camera 156 receives and captures outgoing video data within its field of view. The second microphone 154 receives and captures outgoing audio data within a given proximity range of the second mobile device 150. The second video chat application 151 transmits the captured outgoing video and audio data to the first video chat application 130 of the first mobile device 120 via the video chat system 104. As described above, the first mobile device 120 and the second mobile device 150 can also directly send audio and video communications to each other via a peer-to-peer connection.
[0053] The first video chat application 130 of the first mobile device 150 receives incoming audio and video data from the second video chat application 151 of the second mobile device 150. The first video chat application 130 displays the incoming video data on the first display 122 and outputs the incoming audio data through the first speaker 123 of the first mobile device 120. The first speaker 123 can be built into the first mobile device 120 or externally connected to the first mobile device 120. The audio and video data transmission and output between the first mobile device 120 and the second mobile device 150 can be (near) real-time.
[0054] In some embodiments, the first video chat application 130 of the first mobile device 150 and the second video chat application 151 of the second mobile device 150 can be a third-party video chat platform, such as... CISCO Google MICROSOFT Alternatively, the first video chat application 130 of the first mobile device 150 and the second video chat application 151 of the second mobile device 150 can be a third-party VoIP platform, such as Skype, Messenger, FaceTime, or WhatsApp. If the first video chat application 130 of the first mobile device 120 and the second video chat application 151 of the second mobile device 150 are third-party video chat platforms or third-party VoIP platforms, then the first video chat application 130 of the first mobile device 150 and the second video chat application 151 of the second mobile device 150 can communicate through a third-party server.
[0055] In some embodiments, the first mobile device and the second mobile device can use the first video chat application 130 and the second video chat application 151 to directly send or stream audio and video data to each other. That is, the first mobile device 120 can launch the first video chat application 130. The first video chat application 130 can send a request to the second video chat application 151 of the second mobile device 150 to initiate a video chat.
[0056] In response to receiving a video chat request, the second video chat application 151 generates an alert indicating that the request initiates a video chat with the first mobile device 120. In response to the second user accepting the video chat request, the second video chat application 151 sends a response to the first video chat application 130, which contains instructions to initiate a video chat with the first mobile device 150.
[0057] When initiating a video chat, the first video chat application 130 on the first mobile device 120 and the second video chat application 151 on the second mobile device 150 negotiate the format for compressing, encoding, decoding, and synchronizing the transmitted audio and video data. The negotiated format is acceptable to both the first and second mobile devices 120 and the network connection. Thus, the first video chat application 130 compresses, encodes, and synchronizes the audio and video in a format that can be decompressed and decoded by the second video chat application 151. Similarly, the second video chat application 151 compresses, encodes, and synchronizes the audio and video in a format that can be decompressed and decoded by the first video chat application 130. Furthermore, adaptive streaming based on network connection, video quality, etc., allows for updates to the compression, encoding, decoding, and synchronization formats during the video chat.
[0058] The first video chat application 130 activates the first camera 128 and the first microphone 124. The first camera 128 receives and captures outgoing video data within its field of view. The first microphone 124 receives and captures outgoing audio data within a given proximity range of the first mobile device 120. The first video chat application 130 sends the captured outgoing video and audio data to a second video chat application 151 on a second mobile device 150.
[0059] The second video chat application 151 of the second mobile device 150 receives incoming audio and video data from the first video chat application 130 of the first mobile device 120. The second video chat application 151 displays the incoming video data on the second display 152 and outputs the incoming audio data through the second speaker 153 of the second mobile device 150. The speaker can be built into the second mobile device 150 or externally connected to the second mobile device 150.
[0060] The second camera 156 receives and captures outgoing video data within its field of view. The second microphone 154 receives and captures outgoing audio data within a given proximity range of the second mobile device 150. The second video chat application 151 sends the captured output video and audio data to the first video chat application 130 of the first mobile device 120 via the video chat system 104.
[0061] The first video chat application 130 of the first mobile device 120 receives incoming audio and video data from the second video chat application 151 of the second mobile device 150. The second video chat application 151 displays the incoming video data on the first display 122 and outputs the incoming audio data through the first speaker 123 of the first mobile device 120. The speaker can be built into the first mobile device 120 or externally connected to the first mobile device 120. The audio and video data transmission and output between the first mobile device 120 and the second mobile device 150 can be (near) real-time.
[0062] The first user will want to see the incoming video data on display device 132. As described above, display device 132 can be a television, monitor, projector screen, or the like. First mobile device 120 can send request 202-1 to rotating base 140 to communicatively couple with rotating base 140. In some embodiments, request 202-1 can be generated in response to establishing a connection with rotating base 140 by inserting one end of a data cable into the data port of first mobile device 120 and the other end of the data cable into the data port of rotating base 140. The data port of rotating base 140 can be communication device 142 of rotating base 140. In other embodiments, request 202-1 can be generated in response to a wireless connection with communication device 142 of rotating base 140.
[0063] In response to the receive request 202-1, the rotating base 140 generates a response 202-2. Response 202-2 may include instructions to cause the first mobile device 120 to launch application 126 and send a request through application 126 to stream audio and video data received by the first mobile device 120 to the display device 132. The rotating base 140 then sends response 202-2 to the first mobile device 120.
[0064] As shown above, communication device 142 can be an NFC device. First mobile device 120 can connect to communication device 142 using radio waves. For example, request 202-1 can be a pairing request with communication device 142. Request 202-1 can include an identifier of first mobile device 120 (e.g., MAC address, phone number, IMEI number, etc.). Rotating base 140 can verify the identifier of first mobile device 120 and confirm the pairing request with first mobile device 120. This confirmation is sent in response 202-2. Request 202-1 and response 202-2 can form an electronic handshake.
[0065] In response to receiving response 202-2, the first mobile device 120 launches application 126. Application 126 sends request 202-3 to server 100. Request 202-3 includes a request to stream the audio and video data received by the first mobile device 120 to display device 132. Request 202-3 may include an identifier for display device 132. This identifier may be a MAC address.
[0066] In response to receive request 202-3, streaming system 102 sends request 202-4 to display device 132. Request 202-4 may be a request to establish a connection with display device 132. Request 202-4 may include an identifier of display device 132, an identifier of server 100, and an identifier of first mobile device 120. In response to receive request 202-4, application 138 of display device 132 initiates a connection with server 100 and sends an acknowledgment of the connection. This connection also initiates a session that allows server 100 to send video and audio data streams to display device 132. This connection enables streaming system 102 to stream video and audio data to display device 132, where it is output by display 134 and display speakers 136.
[0067] In some embodiments, streaming system 102 receives streams 202-5 of incoming audio and video data received by first mobile device 120. First mobile device 120 can receive incoming audio and video data as part of a video chat from second mobile device 150 via video chat system 104 or a third-party server. The audio and video data in stream 202-5 can be encoded, synchronized, and prepared for output. Alternatively, for incoming audio and video data from second mobile device 150, streaming system 102 can capture it via video chat application 104 before it is received by first mobile device 120. Therefore, streaming system 102 can encode, synchronize, and format incoming audio and video data. Furthermore, streaming system 102 formats incoming audio and video data for transmission via a streaming protocol.
[0068] The streaming protocol specifies how incoming audio and video data is transmitted over the network to display device 132. Streaming protocols include Transmission Control Protocol (TCP), User Datagram Protocol (UDP), HTTP, HDS, MPEG-DASH, RTSP, RTP, RTCP, SCTP (Stream Control Transport Protocol), and RTMP. Streaming system 102 can transmit stream 202-6 to display device 132. Stream 202-6 can include encoded, synchronized, and incoming formatted audio and video data to be output by display device 132. Streaming system 102 can transmit incoming audio and video data in blocks within stream 202-6. The incoming audio and video data may need to be reassembled at display device 132.
[0069] In some embodiments, display device 132 may display the same stream received via 202-6. Stream 202-6 may be a pass-through. In other embodiments, stream 202-6 may be a transport stream such as MPEG or DASH. The transport stream may include blocks of audio and video data encoded or transcoded in formats such as AAC, AC3, HEVC, MPEG4, etc.
[0070] In some embodiments, the streaming system 102 and the display device 132 can negotiate encoding, decoding, and synchronization formats when a connection is established. The negotiated format can be determined based on the formats accepted by the first mobile device 120, the second mobile device 150, the display device 132, and the network connection. For example, a second video chat application 151 on the second mobile device 150 can compress, encode, and synchronize outgoing audio and video data in a predetermined format. This outgoing audio and video data can be transmitted to the first mobile device 120 via the video chat system 104. The streaming system 102 can receive compressed, encoded, and synchronized incoming audio and video data from the first mobile device 120. In particular, the compressed, encoded, and synchronized incoming audio and video data can adopt a format supported by both the first mobile device 120 and the second mobile device 150. The streaming system 102 can format the incoming audio and video data such that the audio and video data is compressed, encoded, and synchronized in a format accepted by the display device 132. This format can be the format agreed upon when a connection is established with the server 100. Furthermore, adaptive streaming based on network connectivity, video quality, and other factors enables updates to compression, encoding, decoding, and synchronization formats during video chat.
[0071] Display device 132 receives stream 202-6. Application 138 on display device 132 formats the incoming video data for output on display 134. For example, application 138 can format the size, resolution, color, brightness, etc., of the incoming video data based on the settings of display 134. When incoming audio and video data are received in blocks in stream 202-6, application 138 also reassembles them. Application 138 can also format incoming audio data to be output to display speaker 136. Application 138 displays the input video data on display 134 and outputs the input audio data through display speaker 136.
[0072] During video chat, streams 202-5 and 202-6 can provide incoming audio and video data received by the first mobile device 120 from the second mobile device 150 as a continuous stream. Thus, the display device 132 can output incoming audio and video data (near) real-time. In some embodiments, the first mobile device 120 can also output incoming audio and video data simultaneously with the display device 132 outputting audio and video data.
[0073] In some embodiments, streams 202-5 and 202-6 may further include outgoing video data captured by the first camera 128. The display device 132 can display both the incoming and outgoing video data. For example, the incoming video data can be displayed on a display 134, which serves as an extended display, while the outgoing video data can be displayed on a smaller display.
[0074] In some embodiments, if the first mobile device 120 and the second mobile device 150 directly send audio and video to each other using the first video chat application 130 and the second video chat application 151, then application 126 sends a request to the first video chat application 131 to stream the incoming audio and video data received by the first mobile device 120 to the display device 132. Furthermore, the display device 132 can be communicatively coupled to the first mobile device 120. Specifically, the display device 132 can be coupled to the first mobile device 120 via a wired or wireless connection. As a result, in response to receiving a request to stream the incoming audio and video data to the display device 132, the first video chat application 130 encodes, synchronizes, and formats the incoming audio and video data. Furthermore, the first video chat application 130 is capable of formatting the incoming audio and video data for transmission via a streaming protocol. Additionally, the first video chat application 130 can utilize the aforementioned streaming technology to directly transmit or stream the incoming audio and video data to the display device 132 via a wired or wireless connection. Application 138 can receive audio and video data from the first video chat application 130. Display device 132 can output video data using display 134 and output audio data using display speakers 136.
[0075] In some embodiments, application 126 may be incorporated into the first video chat application 130. Thus, in response to receiving response 202-2, the first video chat application 130 may connect to the display device 132 and utilize the aforementioned streaming technology to stream the incoming audio and video data received by the first mobile device 120 to the display device 132.
[0076] The first mobile device 120 can also be physically coupled to the coupling unit of the rotating base 140. Furthermore, the application 126 can be configured to track the movement of a target located within the field of view of the first camera 128 using a sensor 129. The sensor 129 can be an optical sensor configured to track the movement of a target located within the field of view of the first camera 128. This target can be a first user. For example, the first camera 128 can be configured to capture a physical scene located within its field of view. The sensor 129 can identify various targets in this physical scene. As the first mobile device 120 moves, the field of view of the first camera 128 also changes, and the targets within the field of view also change accordingly. The sensor 129 can generate contours around the edges of each detected target within the field of view.
[0077] In some embodiments, application 126 can identify a target as a speaker from multiple targets. For example, application 126 can detect whether a user is speaking based on the user's audio received by the first microphone 124. Application 126 can instruct the first camera 128 to follow the speaking user until the user stops speaking. In some embodiments, application 126 may implement image recognition technology to detect the user from multiple targets.
[0078] Application 126 can also control the zoom or pan function of the first camera 128 based on user audio received by the first microphone 124. For example, if the user is the only target generating audio within the field of view of the first camera 128, application 126 can zoom in on the user. However, if other audio is detected from another user or target, application 126 can instruct the first camera 128 to zoom out to capture the other user or target.
[0079] Application 126 can also utilize machine learning algorithms to control zoom or pan functions. For example, application 126 can use natural language processing (NLP) to understand whether the user is speaking to other people in the same room. In response to determining that the user is speaking to other people in the same room, application 126 can control the zoom function of the first camera 128 to capture other people in the same room.
[0080] In some embodiments, application 126 may utilize machine learning algorithms to identify the primary speaker or user based on the amount of speech they receive. In this regard, application 126 may instruct the first camera 128 to keep the primary speaker or user within its field of view or focus when others may be speaking.
[0081] In some embodiments, application 126 may instruct the first camera 128 to zoom and pan as part of a script mode. For example, application 126 may instruct the first camera 128 to zoom out once every 20 minutes and zoom in once every 10 minutes.
[0082] As a non-limiting example, application 126 can use a real-time computer vision application (e.g., OpenCV) to track targets within the field of view of the first camera 128. Real-time computer vision can utilize real-time images captured by the first camera 128 to track targets, such as a first user within the camera's field of view. The real-time computer vision application can be configured to perform target video tracking and target recognition. In particular, the real-time computer vision application can use target representation and localization, as well as filtering and data association, to identify the first user within the camera's field of view. Target representation and localization can include locating and tracking moving targets (e.g., the first user) within the field of view of the first camera 128. The real-time computer vision application can use kernel-based tracking or contour tracking to achieve target representation and localization. Furthermore, the real-time computer vision application can use edge detection to identify the first user within the field of view of the first camera 128. Once identified, the real-time computer vision application tracks the first user as they move within the field of view of the first camera 128.
[0083] Application 126 can distinguish the first user from detected targets. For example, when the first mobile device 120 is physically coupled to the coupling unit of the rotating base 140 and the first user is providing audio input (e.g., speaking) captured by the first microphone 124, application 126 can identify the first user from the detected targets. Application 126 can assign identifiers to all detected targets. Application 126 can receive movement data of the detected targets from sensor 129. This movement data can be the amount of movement of the target and the identifier of the detected target.
[0084] The first user can move in various directions relative to the rotating base 140 and the first mobile device 120. For example, this movement can include, but is not limited to, moving up or down, left or right, behind, away from, or closer to the rotating base 140 and the first mobile device 120 relative to them. Therefore, the movement data will include the position of the first user relative to the first camera 128.
[0085] Application 126 can determine, based on motion data received from sensor 129, that the first user has moved beyond a given amount, causing the first user to no longer be in focus within the field of view of the first camera 128. Application 126 sends request 204-1 to rotating base 140 to move the rotatable unit of rotating base 140 by the given amount, so that the first user is in focus within the field of view of the first camera 128.
[0086] In response to receiving request 204-1, the controller 146 of the rotating base 140 instructs the motor 144 to rotate the rotatable unit by a given amount, so that the first user is in focus within the field of view of the first camera 128. By rotating the rotatable unit, the motor also causes the coupling unit that supports and secures the first mobile device 120 to rotate.
[0087] In some embodiments, the first user moves continuously over a period of time, thus continuously moving out of focus within the field of view of the first camera 128. Whenever the first user moves beyond a threshold amount, the application 128 recalculates the given amount of movement for the rotatable unit to keep the first user in focus within the field of view of the first camera 128. In this regard, request 204-1 continuously provides updated instructions to move the rotatable unit by a given amount, thereby rotating the rotating base 140. The controller 146 instructs the motors to rotate the rotatable unit by the given amount based on the updated instructions.
[0088] In some embodiments, application 126 controls the zoom of the first camera 128. The zoom function may consist of a combination of algorithms, such as optical zoom using a camera lens, or digital zoom achieved by using imaging algorithms and cropping the image within the field of view of the first camera 128. For example, if the first user moves further away from the first camera 128, the first user will still be within the center of the camera's field of view; however, it will lose focus. Therefore, application 126 determines the amount of zoom adjustment to focus on the first user. Application 126 can control the zoom operation of the first camera 128 to focus on the first user.
[0089] According to an embodiment, Figure 3 This is a block diagram used to illustrate an example rotating base and display device. In a given embodiment, the rotating base 140 may include a base 300, a rotatable unit 302, and a coupling unit 304. The base 300 may be coupled to the rotatable unit 302, and the rotatable unit 302 may be coupled to the coupling unit 304.
[0090] The base 300 can be disposed at the first end of the rotating base 140 and configured to support the rotatable unit 302 and the coupling unit 304, and to keep the rotatable unit 302 and the coupling unit 304 upright. The interior of the base 300 can include a controller (e.g., such as...). Figure 1 The controller 146 shown), motor (e.g., such as...) Figure 1 The motor 144 shown) and communication equipment (e.g., such as Figure 1 The communication device 142 shown. The interior of the base 300 may also include a power supply for the controller, motor and communication device.
[0091] The rotatable unit 302 may include a first hinge 306 and a second hinge 308. The rotatable unit may be coupled to the base 300 at the first hinge 306. A motor may control the rotatable unit 302 to rotate about the first hinge 306. The first hinge 306 may be represented by a rotation axis 310. The motor may also cause the rotatable unit 302 to move along the second hinge 308. The x-axis and y-axis may represent the second hinge 308. The rotatable unit 302 may be shaped like an arm. However, the rotatable unit 302 may be of any shape, and it may have or not have hinges, as long as the rotatable unit 302 is configured to rotate about the rotation axis 310 and traverse along the x-axis, y-axis, and z-axis.
[0092] The coupling unit 304 can be connected to the rotatable unit 302 on the second end of the rotatable base 140. The coupling unit 304 can include latches 312-1 and 312-2 to secure and support the first mobile device 120. Latches 312-1 and 312-2 can be attachment mechanisms for connecting the first mobile device 120 to the coupling unit 304. Latches 312-1 and 312-2 can expand or retract to secure and support mobile devices of various sizes. When the attachment mechanism of the coupling unit 304 is latches 312-1 and 312-2, the attachment mechanism can also include magnets, horizontal latches, adhesive materials, clips, or the like.
[0093] In a given embodiment, the controller receives data from a server (e.g., such as...). Figure 1 The controller (as shown in the server 100) issues instructions to move the rotatable unit 302 by a given amount. Based on this given amount, the controller can determine the amount by which the rotatable unit 302 needs to rotate about the first hinge 306 and the amount by which it needs to shift along the second hinge 308. The controller then instructs the motor to rotate the rotatable unit 302 and shift it along the second hinge 308 based on the determined amounts. Based on the controller's instructions, the motor rotates the rotatable unit 302 about the first hinge 306 or shifts it along the second hinge 308. Rotating the rotatable unit 302 and shifting it along the second hinge 308 causes the coupling unit 304 to rotate and shift along the second hinge 308.
[0094] The first display 122 of the first mobile device 120 is capable of outputting video data corresponding to the video chat and data from the camera of the first mobile device 120 (e.g., ...). Figure 1 The display 134 can also output video data corresponding to the video chat, as well as video data captured by the camera of the mobile device 120.
[0095] In some embodiments, the rotatable base 140 may be a clip or clamp that is attached to a display device (such as a television) or to a supporting structure (such as a wall).
[0096] According to some embodiments, Figure 4 This is a flowchart illustrating the process of streaming audio and video data from a mobile device to a display device. Method 400 can be executed by processing logic, which can include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executed on a processing device), or a combination thereof. It should be noted that not all steps need to be performed to achieve this disclosure. Those skilled in the art will understand that some steps can be performed simultaneously or in different ways. Figure 4 Proceed in the order shown.
[0097] Should refer to Figure 1 Method 400 is described. However, method 400 is not limited to this example embodiment.
[0098] In step 402, server 100 receives a chat request from first mobile device 120 to initiate an audio and video chat with second mobile device 150. First video chat application 130 on first mobile device 120 can send the chat request. The chat request will contain a unique identifier for second mobile device 150. This unique identifier can be a phone number, username, MAC address, etc. A first user can operate first mobile device 120, and a second user can operate second mobile device 150.
[0099] In step 404, the video chat system 104 sends a chat request to the second mobile device 150. This chat request includes a request from the first mobile device 120 to initiate an audio and video chat. The chat request is then sent to the second video chat application 151 on the second mobile device 150. In response to receiving the chat request, the second mobile device 150 generates a combination of audio, haptic, and visual alarms.
[0100] In step 406, server 100 receives confirmation from the second video chat application 151 on the second mobile device 150 to initiate an audio and video chat with the first mobile device 120. In response to the second user on the second mobile device 150 accepting the request from the first mobile device 120, this confirmation is sent by the second video chat application 151.
[0101] In step 408, the video chat system 104 enables the first mobile device 120 and the second mobile device 150 to transmit audio and video data to each other using the first video chat application 130 of the first mobile device 120 and the second video chat application 151 of the second mobile device 150. The first microphone 124 of the first mobile device 120 captures audio data. Additionally, the first camera 128 of the first mobile device 120 captures video data. The first video chat application 130 of the first mobile device 120 sends audio data to the video chat system 104. Similarly, the second microphone 154 of the second mobile device 150 captures audio data.
[0102] In addition, the second camera 156 of the second mobile device 150 captures video data. The second video chat application 151 of the second mobile device 150 sends audio data to the video chat system 104. The video chat system 104 encodes and synchronizes the audio and video data received from the first mobile device 120 and the second mobile device 150, respectively. The video chat system 104 sends the encoded and synchronized audio and video data received from the first mobile device 120 to the second mobile device 150. Furthermore, the video chat system 104 sends the encoded and synchronized audio and video data received from the second mobile device 150 to the first mobile device 120. The first display 122 of the first mobile device 120 outputs the received video data, and the speaker of the first mobile device 120 outputs the received audio data. The second display 152 of the second mobile device 150 outputs the received video data, and the speaker of the second mobile device 150 outputs the received audio data.
[0103] In step 410, server 100 receives a streaming request to stream audio and video data received by first mobile device 120 from second mobile device 150 to display device 132. This request is sent by application 126 in response to first mobile device 120 establishing a connection with rotating base 140. First mobile device 120 can establish a connection with rotating base 140 via a wired or wireless connection. First mobile device 120 can be communicatively coupled and physically coupled to rotating base 140.
[0104] In step 412, streaming system 102 establishes a connection with display device 132. Streaming system 102 can send a request to stream audio and video data intended for reception by first mobile device 120 to display device 132. Display device 132 can include a display 134, display speakers 136, and application 138. Application 138 can be used to establish a connection with streaming system 102. The establishment of this connection is a response from application 138 confirming the connection.
[0105] In step 414, streaming system 102 receives incoming audio and video data streams sent from second mobile device 150 to first mobile device 120. Streaming system 102 can capture audio and video data before or after the first mobile device 120 receives the audio and video data. This audio and video data can be part of a video chat between the first mobile device 120 and the second mobile device 150.
[0106] In step 416, the streaming system 102 formats the audio and video data sent from the second mobile device 150 to the first mobile device 120 so that the audio and video data can be streamed and output through the display device 132. The streaming system 102 can format the audio and video data by encoding and synchronizing it. Furthermore, the streaming system 102 can format the audio and video data so that it can be transmitted to the display device 132 via a streaming protocol.
[0107] In operation 418, streaming system 102 streams incoming formatted audio and video data to display device 132. Application 138 receives the audio and video data. Application 138 further formats the audio and video data. For example, the audio data can be formatted so that it can be output using speaker 136. Furthermore, application 138 formats the video data so that display device 132 can output video data using display 134. Formatting can include adjusting the size, resolution, color, brightness, etc., of the video data. Display speaker 136 outputs audio data, and display 134 outputs video data. Thus, a first user can see the video chat on display 134 and listen to the audio of the video chat using display speaker 136.
[0108] Figure 5 This is a flowchart illustrating the transformation of user-tracking data within the field of view of a mobile device's camera. Method 500 can be executed by processing logic, which can include hardware (e.g., circuitry, dedicated logic, programmable logic, microcode, etc.), software (e.g., instructions executed on a processing device), or a combination thereof. It should be noted that not all steps need to be performed to achieve this disclosure. Those skilled in the art will understand that some steps can be performed simultaneously or in different ways. Figure 5 Proceed in the order shown.
[0109] Should refer to Figure 1 Method 500 is described. However, method 500 is not limited to this example embodiment.
[0110] In step 502, the first video chat application 130 of the first mobile device 120 sends a chat request to the server 100 to initiate a video chat with the second mobile device 150. This request includes an identifier for the second mobile device 150. The video chat system 104 sends a request to the second mobile device 150 to initiate a video chat with the first mobile device 120. The second mobile device 150 sends a confirmation to the server 100 confirming the initiation of the video chat with the first mobile device 120. In response to the confirmation received from the second mobile device 150, the video chat system 104 enables video and audio transmission between the first mobile device 120 and the second mobile device 150.
[0111] In step 504, application 126 establishes a connection with rotating base 140. Application 126 may establish a wired or wireless connection with rotating base 140. In response to establishing a connection, application 126 communicates with rotating base 140. Rotating base 140 may include communication device 142, motor 144, and controller 146. Application 126 uses communication device 142 to establish a connection with first mobile device 120. Furthermore, first mobile device 120 is physically coupled to rotating base 140.
[0112] In step 506, in response to establishing a connection with the rotating base 140, application 126 sends a streaming request to stream incoming audio and video data from the video chat received by the first mobile device 120 to display device 132. This streaming request is sent to server 100. In response to receiving the streaming request, video chat system 104 establishes a connection with display device 132. In response to establishing a connection with display device 132, streaming system 102 streams audio and video data received by the first mobile device 120 from the second mobile device 150 as part of the video chat to display device 132. Display device 132 then outputs the audio and video data.
[0113] In step 508, application 126 receives or computes motion data associated with a first target, indicating movement of the target within the field of view of the first camera 128. Application 126 uses a real-time computer vision application to track the target. Alternatively, sensor 129 can be an optical sensor configured to detect movement of the target within the field of view of the first camera 128. The motion data can include an identifier and amount of movement associated with the moving target. The target can be a first user. Application 126 can also use an image recognition algorithm to identify the first target from multiple targets in a given area.
[0114] In step 510, application 126 determines the amount of movement required by the first mobile device 120 to keep the target within the field of view of the first camera 128. Application 126 can determine how much the mobile device needs to move based on the amount of movement of the target.
[0115] In step 512, application 126 sends a command to rotating base 140 to rotate the first mobile device 120 by a determined amount. As described above, the first mobile device 120 can be physically coupled to rotating base 140. In particular, the coupling unit of rotating base 140 can be configured to fix, support, and power the first mobile device 120. Rotating base 140 can act as a power source for the first mobile device 120, allowing the first mobile device to be configured to operate for a longer period. Power can be provided via the coupling unit or wirelessly. The coupling unit can be coupled to a rotatable unit. The rotatable unit can be coupled to motor 144, and motor 144 can be coupled to controller 146. Controller 146 can receive commands from application 126. Controller 146 can instruct motor 144 to move the rotatable unit by a determined amount. Therefore, the coupling unit and the first mobile device 120 can also move by a determined amount.
[0116] Figure 6 Example block diagram 600 illustrates an example embodiment of mobile device 601. Mobile device 601 may be an embodiment of first mobile device 120 and / or second mobile device 150. Mobile device 601 (e.g., mobile phone, tablet, laptop, etc.) can typically be configured to enable video chat or allow users to conduct video chat. It should be noted that, although Figure 6 An example embodiment of mobile device 601 is shown, but the example embodiment is not limited thereto.
[0117] In one embodiment, the mobile device 601 is typically configured to provide mobile computing and / or mobile communication, and may include, but is not limited to, a memory 670, a communication component 674, a mobility component 676 and a positioning component 678, an acoustic input / output component 680, a haptic component 682, a mobile processor component 684, a touch-sensitive display component 686, a position component 688, an internal power supply component 690 and an image acquisition component 894, wherein each component and the memory 670 are operatively connected via an interconnect 692.
[0118] In one embodiment, memory 670 is typically configured to store information in volatile and / or non-volatile memory, which may include, but is not limited to, read-only memory (ROM), random access memory (RAM), dynamic RAM (DRAM), dual data rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, polymer memory (e.g., ferroelectric polymer memory), optoelectronic memory, phase change memory or ferroelectric memory, silicon oxide-silicon oxide nitride (SONOS) memory, solid-state memory devices (e.g., USB memory, solid-state drive SSD, etc.) and / or any other type of storage medium configured for storing information.
[0119] In one embodiment, memory 670 may include instruction information executed by mobile processor component 684. In this embodiment, the instruction information may represent at least one operating system 672, one or more applications, which may include, but are not limited to, a first video chat application 130, a second video chat application 151, and application 126. In another embodiment, memory 670 may further include a data storage device 650 configured to store information.
[0120] In one embodiment, the mobile operating system 672 may include, but is not limited to, a mobile operating system typically used to manage hardware resources (e.g., one or more components of the mobile device 601) and / or software resources (e.g., one or more applications of the first mobile device 120 and the second mobile device 150). Windows wait).
[0121] In one embodiment, communication component 674 is typically configured to enable mobile device 601 to communicate directly and / or indirectly with various devices and systems. Among other elements, communication component 674 may also include radio frequency circuitry (not shown) configured to encode and / or decode information and receive and / or transmit the encoded information as radio signals at frequencies consistent with one or more wireless communication standards, including: Bluetooth, IEEE 802.11, WiMAX IEEE 802.16, GSM, Enhanced Data Rate for GSM Evolution (EDGE), LTE, Bluetooth standard, Near Field Communication (NFC) standard, etc.
[0122] In one embodiment, the mobile processor component 684 is typically configured to execute instruction information, which typically includes one or more executable and / or interpretable instructions. In embodiments, the processor component 684 may be a mobile processor component or a system-on-a-chip (SoC) processor component. Among other elements, the processor component 684 may also include processor circuitry, which may include, but is not limited to, at least one set of electronic circuitry for executing one or more instructions. Examples of the mobile processor component 684 may include, but are not limited to, those shown below.
[0123] Or any other type of mobile processor, which is configured to execute instruction information, including one or more instructions stored in memory 670.
[0124] In one embodiment, the touch-sensitive display component 686 is typically configured to receive and present visual display information and provide touch input information based on detected touch-based or contact-based input. In addition, among other elements, the touch-sensitive display component 686 may also include a display device (e.g., a liquid crystal display, a light-emitting diode display, an organic light-emitting diode display, etc.) for presenting visual display information and a touch sensor (e.g., a resistive touch sensor, a capacitive touch sensor, etc.) associated with the display device 668 to detect and / or receive touch-based or contact-based input information associated with the display devices of the first mobile device 120 and the second mobile device 150. Furthermore, the touch sensor may be integrated with the surface of the display device such that a user's touch or contact input can substantially correspond to the visual display information presented on the display device, such as one or more user interface (UI) views and elements discussed and described herein.
[0125] In one embodiment, the location component 688 is typically configured to receive a location signal representing location information and provide determined location information (e.g., the approximate physical location of the first mobile device 120 and the second mobile device 150) at least in part based on the received location information. Furthermore, among other elements, the location component 688 may also include positioning circuitry (e.g., a Global Positioning System (GPS) receiver, etc.) for determining the physical location of the mobile device 601. In some embodiments, the location component 688 may also be configured to communicate and / or interact with the communication component 674 to provide more accurate and / or faster location information determination.
[0126] In one embodiment, the internal power supply component 690 is typically configured to provide power to various components and memory of the first mobile device 120 and the second mobile device 150. In one embodiment, the internal power supply component 690 may include and / or be operatively coupled to an internal and / or external battery configured to provide power to various components (e.g., communication component 674, mobile component 676, memory 670, etc.). The internal power supply component 690 may also be operatively coupled to an external charger to charge the battery.
[0127] For example, using one or more computer systems (e.g. Figure 7 The computer system 700 shown can implement various embodiments. The computer system 700 can be used, for example, to implement... Figure 4 Method 400 Figure 5 Method 500. Furthermore, computer system 700 can be at least a part of server 100, such as... Figure 1 As shown. For example, computer system 700 can stream audio and video data from a first mobile device 120 to a display device 132 for video chat. Computer system 700 can be any computer capable of performing the functions described herein.
[0128] The computer system 700 can be any well-known computer capable of performing the functions described herein.
[0129] Computer system 700 includes one or more processors (also called central processing units or CPUs), such as processor 704. Processor 704 is connected to communication infrastructure or bus 706.
[0130] Each of one or more processors 704 can be a graphics processing unit (GPU). In one embodiment, a GPU is a processor that is a dedicated electronic circuit designed to process mathematically intensive applications. GPUs can have a parallel architecture, which can efficiently process large blocks of data in parallel, such as common mathematically intensive data in computer graphics applications, images, and videos. In some embodiments, the computer system may also include a dedicated processor for implementing machine learning or artificial intelligence algorithms, such as… Neural Compute Stick, Field Programmable Gate Array (FPGA) Movidius Vision AI chips, etc.
[0131] The computer system 700 also includes a user input / output device 703 that communicates with the communication infrastructure 706 via a user input / output interface 702, such as a monitor, keyboard, pointing device, etc., user input / output device 703.
[0132] The computer system 700 also includes a main memory or primary memory 708, such as random access memory (RAM). The main memory 708 may include one or more levels of cache. The main memory 708 has control logic (i.e., computer software) and / or data stored thereon.
[0133] The computer system 700 may also include one or more auxiliary storage devices or auxiliary memory 710. Auxiliary memory 710 may include, for example, a hard disk drive 712 and / or a removable storage device or drive 714. Removable storage drive 714 may be a floppy disk drive, magnetic tape drive, optical disk drive, optical storage device, magnetic tape backup device, and / or any other storage device / drive.
[0134] The removable storage drive 714 can interact with the removable storage unit 718. The removable storage unit 718 includes a computer-usable or readable storage device on which computer software (control logic) and / or data are stored. The removable storage unit 718 can be a floppy disk, magnetic tape, optical disc, DVD, optical storage disc, and / or any other computer data storage device. The removable storage drive 714 reads from and / or writes to the removable storage unit 718 in a well-known manner.
[0135] According to an exemplary embodiment, the auxiliary storage 710 may include other means, tools, or other methods that allow the computer system 700 to access computer programs and / or other instructions and / or data. Such means, tools, or other methods may include, for example, a removable storage unit 722 and an interface 720. Examples of the removable storage unit 722 and interface 720 may include (e.g., present in video game devices) program cartridges and cartridge interfaces, removable storage chips (e.g., EPROM or PROM) and associated sockets, memory sticks and USB ports, memory cards and associated memory card slots, and / or any other removable storage unit and associated interface.
[0136] The computer system 700 may also include a communication or network interface 724. The communication interface 724 enables the computer system 700 to communicate and interact with any combination of remote devices, remote networks, remote entities, etc. (represented individually or collectively by reference numeral 728). For example, the communication interface 724 allows the computer system 700 to communicate with a remote device 728 via a communication path 726, which can be wired and / or wireless and can include any combination of LAN, WAN, Internet, etc. Control logic and / or data can be transmitted to or from the computer system 700 via the communication path 726.
[0137] In embodiments, tangible, non-transitory means or articles of art, including tangible, non-transitory computer-usable or readable media on which control logic (software) is stored, are also referred to herein as computer program products or program storage devices. This includes, but is not limited to, computer system 700, main memory 708, auxiliary memory 710, and removable storage units 718 and 722, and tangible articles embodying any combination thereof. When such control logic is executed by one or more data processing devices (e.g., computer system 700), it causes such data processing devices to operate as described herein.
[0138] Based on the teachings contained in this disclosure, those skilled in the art will understand how to use data processing equipment, computer systems, and / or... Figure 7 It will be apparent that embodiments of this disclosure can be made and used on computer architectures other than those shown. In particular, embodiments are capable of operating with software, hardware, and / or operating system implementations other than those described herein.
[0139] It should be understood that the Specific Embodiments section (and not the other sections) of this document is intended to interpret the claims. In the other sections, those skilled in the art may list one or more exemplary embodiments, which are not all embodiments contemplated by the inventors; therefore, the detailed description section of this document is not intended to limit this disclosure or the appended claims in any way.
[0140] While this disclosure describes exemplary embodiments for use in exemplary fields and applications, it should be understood that this disclosure is not limited thereto. Other embodiments and modifications may be listed within the scope and spirit of this disclosure. For example, without limiting generality, embodiments are not limited to the software, hardware, firmware, and / or entities shown in the figures and / or described herein. Furthermore, embodiments (whether explicitly described herein or not) also have significant practical value in fields and application scenarios beyond those described herein.
[0141] This document describes embodiments using functional building blocks to illustrate the implementation of specified functions and their relationships. For ease of description, the boundaries of these functional building blocks are arbitrarily defined herein. Alternative boundaries can be defined provided the specified functions and relationships (or equivalence relations) are appropriately performed. Furthermore, alternative embodiments may perform functional blocks, steps, operations, methods, etc., in a different order than that described herein.
[0142] As used herein, the terms "an embodiment," "embodiment," "example embodiment," or similar phrases refer to embodiments that may include specific features, structures, or characteristics, but not every embodiment necessarily includes that specific feature, structure, or characteristic. Furthermore, these phrases do not necessarily refer to the same embodiment. Additionally, those skilled in the art will recognize that when a specific feature, structure, or characteristic is described in conjunction with an embodiment, such feature, structure, or characteristic can be incorporated into other embodiments, whether or not it is explicitly mentioned or described herein. Furthermore, some embodiments may be described using the terms "coupled" and "connected," and their derivatives. These terms are not necessarily synonyms. For example, some embodiments may use the terms "connected" and / or "coupled" to indicate that two or more elements are in direct physical or electrical contact with each other. However, the term "coupled" can also refer to two or more elements that are not in direct contact with each other but still cooperate or interact with each other.
[0143] The breadth and scope of this disclosure are not limited to any of the exemplary embodiments described above, but should be defined only according to the claims and their equivalents.
Claims
1. A method for streaming video chat from a mobile device to a display device, comprising: Receive streaming requests from a first mobile device via one or more computing devices to stream incoming audio and video data received by the first mobile device from a second mobile device to a display device; A connection to the display device is established through one or more computing devices; The one or more computing devices capture incoming audio and video data sent from the second mobile device to the first mobile device; The incoming audio and video data to be output by the display device is formatted by one or more computing devices; Formatted incoming audio and video data are streamed to the display device via one or more computing devices, wherein the display device outputs formatted incoming audio and video data in response to receiving the formatted incoming audio and video data; Based on the user audio received by the microphone (124) of the first mobile device, natural language processing is used to determine whether the user is speaking to other people in the same room; as well as In response to determining that the user is speaking to other people in the same room, the camera (128) of the first mobile device is controlled to capture the other people in the same room.
2. The method of claim 1, further comprising: Receive chat requests through one or more computing devices to initiate audio and video chat with the second mobile device; and The first mobile device and the second mobile device can communicate audio and video through the one or more computing devices, wherein the audio and video communication includes the incoming audio and video data.
3. The method of claim 2, further comprising: In response to enabling audio and video communication between the first mobile device and the second mobile device, the camera and microphone of the first mobile device are made operable by the one or more computing devices.
4. The method of claim 3, further comprising: The one or more computing devices capture outgoing audio and video data received by the microphone and camera of the first mobile device; and The outgoing audio and video data are sent to the second mobile device via one or more computing devices.
5. The method of claim 1, wherein the incoming audio and video data is formatted based on a streaming protocol associated with the display device.
6. The method of claim 1, wherein the audio and video data is reformatted by the display device.
7. The method of claim 1, wherein receiving the streaming request is in response to coupling of the first mobile device with the rotating base.
8. A system for streaming video chat from a mobile device to a display device, comprising: Camera; microphone; A first mobile device coupled to the camera and microphone, the first mobile device being configured to execute an application, which, when executed, is configured to: Send a chat request to initiate an audio and video chat with a second mobile device, wherein initiating the audio and video chat enables the first mobile device to send and receive audio and video communications to and from the second mobile device; Establish a connection between the first mobile device and the rotating base; In response to establishing a connection with the rotating base, a streaming request is sent to stream incoming audio and video data received by the first mobile device from the second mobile device to the display device, wherein the incoming audio and video data is output by the display device in response to sending the streaming request; Capture outgoing audio and video data from the microphone and camera of the first mobile device; Based on the user's audio in the outgoing audio data captured from the microphone of the first mobile device, natural language processing is used to determine whether the user is speaking to other people in the same room. In response to determining that the user is speaking to other people in the same room, the camera of the first mobile device is controlled to capture the other people in the same room; and The outgoing audio and video data are sent to the second mobile device.
9. The system of claim 8, wherein the camera and microphone become operable in response to sending the chat request.
10. The system of claim 8, wherein the first mobile device is physically coupled and communicatively coupled to the rotating base.
11. The system of claim 10, wherein the application is further configured to: Detect the movement of the target in the field of view of the camera; Instructions are sent to the rotating base to move the first mobile device by a predetermined amount based on the movement of the target, so that the target is in a desired position within the field of view of the camera.
12. The system of claim 11, wherein the application is further configured to control panning, cropping, or zooming operations of the camera based on the position of the target relative to the camera.
13. The system of claim 8, wherein the connection between the first mobile device and the rotating base is established in response to forming a wired connection with the data port of the first mobile device and the rotating base.
14. A rotating base, comprising: Electric motor; Communication equipment; A rotatable unit coupled to the motor; Coupled unit to the rotatable unit; A controller coupled to the motor and the communication device, the controller being configured to: In response to a request from a mobile device to connect to the rotating base, a connection is established between the communication device and the mobile device. The mobile device is housed in the coupling unit, wherein the mobile device is communicatively coupled to the rotating base via the communication device and physically coupled to the rotating base via the coupling unit; In response to an application running on the mobile device, the user audio received by the microphone (124) of the mobile device is used to determine, using natural language processing, whether the user is speaking to someone else in the same room, and an instruction to move the rotatable unit by a predetermined amount is received from the application running on the mobile device. and The motor is instructed to rotate the rotatable unit by the predetermined amount, such that the camera (128) of the mobile device captures other people in the same room, wherein rotating the rotatable unit causes a coupling unit physically coupled to the mobile device to rotate by the predetermined amount.
15. The rotating base of claim 14, wherein the rotatable unit is configured to rotate about a rotation axis.
16. The rotating base of claim 14, wherein the rotatable unit is configured to shift along the x-axis, y-axis and z-axis.
17. The rotating base of claim 14, wherein the mobile device is coupled to the coupling unit via an attachment mechanism of the coupling unit.
18. The rotating base of claim 14, wherein the communication device is communicatively coupled to the mobile device via a wired connection to a data port of the mobile device.
19. The rotating base of claim 14, wherein the communication device is wirelessly coupled to the mobile device.
20. A tangible computer-readable device storing instructions that, when executed by at least one computing device, cause the at least one computing device to perform an operation, the operation comprising: Receive a streaming request from the first mobile device to stream incoming audio and video data received from the second mobile device by the first mobile device to the display device; Establish a connection with the display device; Capture incoming audio and video data sent from the second mobile device to the first mobile device; Format the incoming audio and video data to be output by the display device; Formatted incoming audio and video data are streamed to the display device, wherein in response to receiving the formatted incoming audio and video data, the display device outputs the formatted incoming audio and video data. Based on the user audio received by the microphone (124) of the first mobile device, natural language processing is used to determine whether the user is speaking to other people in the same room; as well as In response to determining that the user is speaking to other people in the same room, the camera (128) of the first mobile device is controlled to capture the other people in the same room.
Citation Information
Patent Citations
Electronic device and control method
CN107820003A
Method and apparatus for audio-image speaker detection and location
CN1460185A
Techniques for utilizing a television for a video chat session
US9948888B1