IP Library Granted Patent US 8,566,353
Granted Patent B2
US 8,566,353 · App. 12/388,365 · Granted Oct 22, 2013

Web-based system for collaborative generation of interactive videos

Inventors: Michael Fink (Jerusalem, IL); Ryan Junee (San Francisco, CA); Sigalit Bar (Cupertino, CA); Aviad Barzilai (Haifa, IL); Isaac Elias (Haifa, IL); Julian Frumar (San Francisco, CA); Herbert Ho (San Jose, CA); Nir Kerem (Har Adar, IL); Simon Ratner (San Francisco, CA); Jasson Arthur Schrock (Mountain View, CA); Ran Tavory (Haifa, IL); Virginia Wang (San Francisco, CA); Leora Wiseman (Zichron Yaakov, IL); Shanmugavelayutham Muthukrishnan (Palo Alto, CA); Mihai Badoiu (New York, NY); Ankur Bhargava (Cambridge, MA); Igor Kofman (San Francisco, CA)
Assignee: Google Inc.
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 8,566,353
App. No.
12/388,365
Granted
Oct 22, 2013
Kind
B2
Abstract

Systems and methods are provided for adding and displaying interactive annotations for existing online hosted videos. A graphical annotation interface allows the creation of annotations and association of the annotations with a video. Annotations may be of different types and have different functionality, such as altering the appearance and/or behavior of an existing video, e.g. by supplementing it with text, allowing linking to other videos or web pages, or pausing playback of the video. Authentication of a user desiring to perform annotation of a video may be performed in various manners, such as by checking a uniform resource locator (URL) against an existing list, checking a user identifier against an access list, and the like. As a result of authentication, a user is accorded the appropriate annotation abilities, such as full annotation, no annotation, or annotation restricted to a particular temporal or spatial portion of the video.

Claims (58)

1. A computer-implemented method for annotating a digital video stored in a video repository, the method comprising:

identifying a visual object displayed within the video using visual object recognition;

determining whether a user, who did not contribute the digital video to the video repository, is authorized to annotate the digital video;

responsive to the user being authorized to annotate the digital video, providing to the user a first web-based user interface portion for annotating the digital video, the first web-based user interface portion comprising visual representations of a plurality of different annotation types and a visual suggestion to annotate the visual object;

responsive to receiving a user selection of one of the annotation types and approval of the suggestion of annotating the visual object, providing to the user a second web-based user interface portion comprising at least one input area for specifying a URL for a new annotation for the visual object, the URL separately encoding both an identifier of a target video and a time stamp of a moment within the target video;

receiving a request from the user via the second user interface portion to add an annotation of the selected annotation type to the visual object, the request comprising a designation of the URL for the annotation;

tracking a spatial position of the visual object across frames of the video to identify a plurality of spatial positions of the visual object as the visual object moves within the video; and

adding the annotation to the digital video such that the annotation is displayed during playback of the digital video and moves responsive to the tracked plurality of spatial positions of the visual object, and such that selection of the annotation causes playback of the target video at the moment in the target video specified by the time stamp, the target video being different than the digital video.

2. The computer-implemented method of claim 1 , wherein determining whether the user is authorized to annotate the digital video comprises comparing a URL associated with the user to a URL associated with the digital video.

3. The computer-implemented method of claim 1 , wherein determining whether the user is authorized to annotate the digital video comprises determining whether the user is on a list of users authorized to annotate the digital video.

4. The computer-implemented method of claim 1 , wherein determining whether the user is authorized to annotate the digital video comprises monitoring actions of a contributor of the digital video with respect to the user.

5. The computer-implemented method of claim 1 , wherein determining whether the user is authorized to annotate the digital video comprises monitoring actions of other users with respect to the user.

6. The computer-implemented method of claim 1 , further comprising determining whether the user is authorized to annotate a particular temporal or spatial portion of the digital video.

7. The computer-implemented method of claim 1 , wherein determining whether the user is authorized to annotate the digital video comprises determining whether an owner of the digital video has disabled annotation for the digital video.

8. The computer-implemented method of claim 1 , wherein the annotation is associated with a time range of the digital video and has a visual appearance.

9. The computer-implemented method of claim 1 , further comprising receiving a request to add a pause annotation for a time within the digital video, the pause annotation causing playback of the digital video to halt when the time is reached.

10. The computer-implemented method of claim 1 , wherein the annotation has a graphical appearance that when selected displays information associated with the visual object.

11. The computer-implemented method of claim 1 , further comprising:

responsive to receiving a request for the digital video from a client:

providing annotations that are associated with the digital video and that can be displayed by the client.

12. The computer-implemented method of claim 1 , further comprising:

responsive to receiving a request for the digital video from a client:

altering annotations that are associated with the digital video to be displayed in a different locale from a locale in which they were created.

13. The computer-implemented method of claim 1 , further comprising:

responsive to receiving a request for the digital video from a viewer:

identifying annotations associated with the digital video;

filtering the identified annotations by the identity of the viewer, thereby producing a modified set of annotations; and

providing the modified set of annotations to the viewer.

14. The computer-implemented method of claim 1 , further comprising:

responsive to receiving a request for the digital video from a viewer:

identifying annotations associated with the digital video;

filtering the identified annotations by the identity of a group of which the viewer is a member, thereby producing a modified set of annotations;

providing the modified set of annotations to the viewer.

15. The computer-implemented method of claim 1 , wherein the request to add the annotation incorporates annotation data derived from optical character recognition.

16. A computer non-transitory readable storage medium storing a computer program executable by a processor for annotating a digital video stored in a video repository, the actions of the computer program comprising:

identifying a visual object displayed within the video using visual object recognition;

determining whether a user, who did not contribute the digital video to the video repository, is authorized to annotate the digital video;

responsive to the user being authorized to annotate the digital video, providing to the user a first web-based user interface portion for annotating the digital video, the first web-based user interface portion comprising visual representations of a plurality of different annotation types and a visual suggestion to annotate the visual object;

responsive to receiving a user selection of one of the annotation types and approval of the suggestion of annotating the visual object, providing to the user a second web-based user interface portion comprising at least one input area for specifying a URL for a new annotation for the visual object, the URL separately encoding both an identifier of a target video and a time stamp of a moment within the target video;

receiving, from the user via the provided second user interface portion, a request to add an annotation of the selected annotation type to the visual object, the request comprising a designation of the URL for the annotation;

tracking a spatial position of the visual object across frames of the video to identify a plurality of spatial positions of the visual object as the visual object moves within the video; and

adding the annotation to the digital video such that the annotation is displayed during playback of the digital video and moves responsive to the tracked plurality of spatial positions of the visual object, and such that selection of the annotation causes playback of the target video at the moment in the target video specified by the time stamp, the target video being different than the digital video.

17. A computer system for annotating a digital video stored in a video repository, comprising:

a computer processor;

an annotation database storing annotation data; and

annotation logic comprising instructions that when executed by the computer processor perform actions comprising:

identifying a visual object displayed within the video using visual object recognition;

determining whether a user, who did not contribute the digital video to the video repository, is authorized to annotate the digital video;

responsive to the user being authorized to annotate the digital video, providing to the user a first web-based user interface portion for annotating the digital video, the first web-based user interface portion comprising visual representations of a plurality of different annotation types and a visual suggestion to annotate the identified visual object;

responsive to receiving a user selection of one of the annotation types and approval of the suggestion of annotating the visual object, providing to the user a second web-based user interface portion comprising at least one input area for specifying a URL for a new annotation for the visual object, the URL separately encoding both an identifier of a target video and a time stamp of a moment within the target video;

receiving, from the user via the provided second user interface portion, a request to add an annotation of the selected annotation type to the visual object, the request comprising a designation of the URL for the annotation;

tracking a spatial position of the visual object across frames of the video to identify a plurality of spatial positions of the visual object as the visual object moves within the video; and

adding the annotation to the digital video such that the annotation is displayed during playback of the digital video and moves responsive to the tracked plurality of spatial positions of the visual object, and such that selection of the annotation causes playback of the target video at the moment in the target video specified by the time stamp, the target video being different than the digital video.

18. The computer-implemented method of claim 1 , wherein adding the annotation to the digital video comprises storing the annotation within an annotation database on an annotation server that is physically separate from a video server that stores the digital video.

19. The computer-implemented method of claim 1 , further comprising providing, to a second user, a user interface comprising:

a representation of the digital video; and

a visual timeline representing the duration of the digital video and time locations of a plurality of annotations associated with the digital video.

20. The computer-implemented method of claim 19 , further comprising a user interface element for selectively displaying time locations of the plurality of associated annotations based on identities of users who added the annotations.

Assignments (3)
CHANGE OF NAME Recorded Oct 2, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044101/0299 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 24, 2009
From: WANG, VIRGINIA; WISEMAN, LEORA; MUTHUKRISHNAN, SHANMUGAVELAYUTHAM; BADOIU, MIHAI; BHARGAVA, ANKUR; KOFMAN, IGOR
To: GOOGLE INC.
Reel/Frame 023567/0287 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2009
From: FINK, MICHAEL; JUNEE, RYAN; BAR, SIGALIT; BARZILAI, AVIAD; ELIAS, ISAAC; FRUMAR, JULIAN; HO, HERBERT; KEREM, NIR; RATNER, SIMON; SCHROCK, JASSON ARTHUR; TAVORY, RAN
To: GOOGLE INC.
Reel/Frame 022445/0607 →
Continuity (2)
Provisional Application 61058459 · Jun 3, 2008
Related Publication 20090300475A1 · Dec 3, 2009