IP Library Granted Patent US 11,347,467
Granted Patent B2
US 11,347,467 · App. 16/431,433 · Granted May 31, 2022

Real time collaboration over multiple locations

Inventors: James E. Morris (Lake Wylie, SC); Michael R. Feldman (Charlotte, NC)
Assignee: T1V, INC.
G06F3/1454G06F3/147G06F3/1431G06F9/452G06Q10/101G09G5/14H04L65/403H04L65/4015G09G2360/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,347,467
App. No.
16/431,433
Granted
May 31, 2022
Kind
B2
Abstract

A method of collaborating between a first display computer associated with a first display at a first location and a second display computer associated with a second display at a second location includes establishing a connection between the first and second display computers, opening a virtual canvas to be shared by the first and second display computers, the virtual canvas to be displayed on the first and second displays simultaneously, and sending an object between the first and second display computers by sending data associated with the object on the virtual canvas stored on the first display computer from the first display computer to the second display computer to be stored locally, thereby creating a shared canvas, wherein objects are at a single location on the shared canvas, and objects on the shared canvas can be manipulated from both the first and second display computers simultaneously.

Claims (45)

1. A method of collaborating between a first display computer associated with a first display at a first location and a second display computer associated with a second display at a second location, the method comprising:

establishing a connection between the first and second display computers;

opening a virtual canvas to be shared by the first and second display computers, the virtual canvas to be displayed on the first and second displays simultaneously, wherein either the first display computer or the second display computer may be a host computer for objects on the virtual canvas;

sending a first object other than a live object from a host computer of the first object to a non-host computer by sending data associated with the first object on the virtual canvas stored on the host computer of the first object from the host computer of the first object to the non-host computer to be stored locally, thereby creating a shared canvas;

storing the first object locally on the non-host computer;

sending data associated with a second object that is a live object on the virtual canvas stored on a host computer of the second object from the host computer of the second object to the non-host computer to be stored locally; and

streaming the second object from a host computer for the second object, wherein

each of the first and second objects are at respective single locations on the shared canvas,

a first view of the shared canvas is displayed on one of the first and second displays and a second view of the shared canvas is displayed on another one of the first and second displays, the first and second view being different views of the shared canvas, and

each of the first and second objects on the shared canvas can be manipulated from either of the first and second display computers, wherein the manipulation includes resizing the object and moving the object and the manipulation is simultaneous on the first and second displays, and

content of the second object is continuously synchronized with the host computer.

2. The method as claimed in claim 1 , wherein sending an object is through a peer to peer connection.

3. The method as claimed in claim 2 , wherein sending the object through the peer to peer connection includes:

sending data regarding a change associated with the first or second object from a change host computer to a change non-host computer.

4. The method as claimed in claim 3 , wherein, when a display resolution of a window in the non-host display for the second object is less than a display resolution of the host display for the second object, the method includes:

sending information regarding the display resolution of the window from the non-host computer to the host computer; and

downsampling the second object streamed by the host computer in accordance with the display resolution from the non-host computer.

5. The method as claimed in claim 1 , wherein, after storing the object, only sending information regarding changes to the object on either of the first and second displays from a corresponding computer to the other computer.

6. The method as claimed in claim 1 , wherein, the second object is streamed directly from the host display for the second object to the non-host display for the second object.

7. The method as claimed in claim 6 , wherein, when a display resolution of a window in the non-host display for the second object is smaller than a display resolution of the host display for the second object, the method includes:

sending information regarding the display resolution of the window from the non-host computer to the host computer for the second object; and

downsampling the second object by the host computer in accordance with the display resolution from the non-host computer.

8. The method as claimed in claim 6 , further including sending information regarding changes on top of the second object on either of the first and second displays from a corresponding computer to the other computer.

9. The method as claimed in claim 1 , wherein sending the object includes using a cloud server as a relay.

10. The method as claimed in claim 1 , wherein, before sending the object from the first display computer to the second display computer:

connecting a mobile device to the first display computer; and

storing or streaming the object from the mobile device to the first display computer.

11. The method as claimed in claim 10 , wherein altering the object is performed on any of the mobile device, the first display computer, and the second display computer.

12. The method as claimed in claim 10 , wherein, when a display resolution of the object in the first display and the second display are less than a full resolution of the object on the mobile device, the method includes:

sending information regarding a highest resolution of the object in a display computer in the session to the first display computer;

sending information regarding the highest resolution of the object to the mobile device;

downsampling the object by the mobile device in accordance with the highest resolution; and

sending the downsampled object from the mobile device to the first display computer.

13. The method as claimed in claim 1 , further comprising sending another object between the first and second display computers by sending data associated with another object on the virtual canvas stored on the second display computer from the second display computer to the first display computer to be stored locally.

14. A non-transitory computer readable storage device having computer readable instructions that when executed by circuitry cause the circuitry to:

establish a connection between a first display computer associated with a first display at a first location and a second display computer associated with a second display at a second location;

open a virtual canvas to be shared by the first and second display computers, the virtual canvas to be displayed on the first and second displays simultaneously, wherein either the first display computer or the second display computer may be a host computer for objects on the virtual canvas;

send a first object other than a live object from a host computer of the first object to a non-host computer by sending data associated with the first object on the virtual canvas stored on the host computer of the first object from the host computer of the first object to the non-host computer to be stored locally, thereby creating a shared canvas;

store the first object on the non-host computer;

send data associated with a second object that is a live object on the virtual canvas stored on a host computer of the second object from the host computer of the second object to the non-host computer to be stored locally; and

stream the second object from the host computer for the second object, wherein

each of the first and second objects are at respective single locations on the shared canvas,

a first view of the shared canvas is displayed on one of the first and second displays and a second view of the shared canvas is displayed on another one of the first and second displays, the first and second view being different views of the shared canvas, and

each of the first and second objects on the shared canvas can be manipulated from either of the first and second display computers, wherein the manipulation includes resizing the object and moving the object and the manipulation is simultaneous on the first and second displays, and

content of the second object is continuously synchronized with the host computer for the second object.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 28, 2025
From: T1V, INC.
To: KARL STORZ SE & CO. KG
Reel/Frame 071853/0128 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2020
From: MORRIS, JAMES E.; FELDMAN, MICHAEL R.
To: T1V, INC.
Reel/Frame 053192/0171 →
Continuity (3)
Continuation In Part PCTUS2017064525 · Dec 4, 2017
Provisional Application 62430235 · Dec 5, 2016
Related Publication 20190347061A1 · Nov 14, 2019