Sharing Television and Video Programming Through Social Networking
First Claim
1. A method comprising:
- by one or more computer systems of a social-networking system, receiving a first video stream from a content source;
by the one or more computer systems of the social-networking system, receiving social content from a social graph of the social-networking system, the social graph comprising a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that are each associated with a particular user of the social-networking system;
by the one or more computer systems of the social-networking system, generating an overlay area comprising at least a portion of the social content that is related to the first video stream;
by the one or more computer systems of the social-networking system, determining a placement for the overlay area within the first video stream;
by the one or more computer systems of the social-networking system, generating a modified video stream using at least the first video stream and the overlay area, the overlay area placed within the modified video stream according to the determined placement; and
by the one or more computer systems of the social-networking system, providing the modified video stream for display on a display device.
2 Assignments
0 Petitions
Accused Products
Abstract
In particular embodiments, one or more computer systems of a social-networking system receive a first video stream from a content source, receive social content from a social graph of the social-networking system, and generate an overlay area comprising at least a portion of the social content. The social graph includes a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that are each associated with a particular user of the social-networking system. The one or more computer systems of the social-networking system determine a placement for the overlay area within the first video stream, generate a modified video stream using at least the first video stream and the overlay area, and provide the modified video stream for display on a display device. The overlay area is placed within the modified video stream according to the determined placement.
209 Citations
20 Claims
-
1. A method comprising:
-
by one or more computer systems of a social-networking system, receiving a first video stream from a content source; by the one or more computer systems of the social-networking system, receiving social content from a social graph of the social-networking system, the social graph comprising a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that are each associated with a particular user of the social-networking system; by the one or more computer systems of the social-networking system, generating an overlay area comprising at least a portion of the social content that is related to the first video stream; by the one or more computer systems of the social-networking system, determining a placement for the overlay area within the first video stream; by the one or more computer systems of the social-networking system, generating a modified video stream using at least the first video stream and the overlay area, the overlay area placed within the modified video stream according to the determined placement; and by the one or more computer systems of the social-networking system, providing the modified video stream for display on a display device.
-
-
2. The method of claim 1, wherein the one or more computer systems of the social-networking system comprises a dongle.
-
3. The method of claim 1, wherein the social content comprises one or more of:
-
an advertisement; a notification; a newsfeed; a post; a photo; a ticker; a calendar reminder; another video stream; and a chat message.
-
-
4. The method of claim 1, wherein the content source comprises one of:
-
a set-top box (STB); a digital video recorder (DVR); a gaming console; and a device configured to provide access to content from an over-the-top (OTT) content provider.
-
-
5. The method of claim 1, wherein the modified video stream comprises:
-
a first layer comprising content from the first video stream; and a second layer comprising the overlay area.
-
-
6. The method of claim 1, wherein the modified video stream is generated by drawing the overlay area on frames of the first video stream.
-
7. The method of claim 1, wherein:
-
determining the placement for the overlay area within the first video stream comprises determining one or more important areas within the first video stream; and the overlay area is placed within the modified video stream to avoid overlapping the determined important areas.
-
-
8. The method of claim 7, wherein the one or more important areas comprise one or more of:
-
a static area; an area comprising text; an area comprising one or more faces; and an area indicated by metadata embedded within the first video stream.
-
-
9. The method of claim 7, further comprising:
by the one or more computer systems of the social-networking system, dynamically adjusting a shape or placement of the overlay area to avoid the determined important areas.
-
10. The method of claim 1, wherein:
-
determining the placement for the overlay area within the first video stream comprises determining an area within the first video stream to hide; and the overlay area is placed within the modified video stream to overlap at least a portion of the determined area to hide.
-
-
11. The method of claim 1, wherein the first video stream is resized within the modified video stream.
-
12. The method of claim 1, further comprising masking slow channel changes by:
-
detecting a channel change within the first video stream; after detecting the channel change, fade the first video stream to black in the modified video stream; and after a predetermined time after fading the first video stream to black, fade the first video stream from black to transparent in the modified video stream.
-
-
13. One or more computer-readable non-transitory storage media in a computing system, the media embodying logic that is operable when executed to:
-
receive a first video stream; receive social content from a social graph of a social-networking system, the social graph comprising a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that are each associated with a particular user of the social-networking system; generate an overlay area comprising at least a portion of the social content that is related to the first video stream; determine a placement for the overlay area within the first video stream; generate a modified video stream using at least the first video stream and the overlay area, the overlay area placed within the modified video stream according to the determined placement; and provide the modified video stream for display on a display device.
-
-
14. The media of claim 13, wherein the modified video stream comprises:
-
a first layer comprising content from the first video stream; and a second layer comprising the overlay area.
-
-
15. The media of claim 13, wherein the modified video stream is generated by drawing the overlay area on frames of the first video stream.
-
16. The media of claim 13, wherein:
-
determining the placement for the overlay area within the first video stream comprises determining one or more important areas within the first video stream; and the overlay area is placed within the modified video stream to avoid overlapping the determined important areas.
-
-
17. A system, comprising:
-
one or more memory devices; and a processor communicatively coupled to the one or more memory devices, the processor operable to; receive a first video stream; receive social content from a social graph of a social-networking system, the social graph comprising a plurality of nodes and edges connecting the nodes, the nodes comprising user nodes that are each associated with a particular user of the social-networking system; generate an overlay area comprising at least a portion of the social content that is related to the first video stream; determine a placement for the overlay area within the first video stream; generate a modified video stream using at least the first video stream and the overlay area, the overlay area placed within the modified video stream according to the determined placement; and provide the modified video stream for display on a display device.
-
-
18. The system of claim 17, wherein the modified video stream comprises:
-
a first layer comprising content from the first video stream; and a second layer comprising the overlay area.
-
-
19. The system of claim 17, wherein the modified video stream is generated by drawing the overlay area on frames of the first video stream.
-
20. The system of claim 17, wherein:
-
determining the placement for the overlay area within the first video stream comprises determining one or more important areas within the first video stream; and the overlay area is placed within the modified video stream to avoid overlapping the determined important areas.
-
Specification