US20140280537A1 - Bundled event memories - Google Patents

Bundled event memories Download PDF

Info

Publication number
US20140280537A1
US20140280537A1 US13/804,423 US201313804423A US2014280537A1 US 20140280537 A1 US20140280537 A1 US 20140280537A1 US 201313804423 A US201313804423 A US 201313804423A US 2014280537 A1 US2014280537 A1 US 2014280537A1
Authority
US
United States
Prior art keywords
user
content items
users
submitted content
event
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US13/804,423
Other versions
US9450907B2 (en
Inventor
Keenan Pridmore
Philip John MacGregor
Christopher Barbour
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Meta Platforms Inc
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US13/804,423 priority Critical patent/US9450907B2/en
Assigned to FACEBOOK, INC. reassignment FACEBOOK, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MACGREGOR, PHILIP JOHN, IV, PRIDMORE, KEENAN
Publication of US20140280537A1 publication Critical patent/US20140280537A1/en
Priority to US15/236,320 priority patent/US9779157B2/en
Application granted granted Critical
Publication of US9450907B2 publication Critical patent/US9450907B2/en
Assigned to META PLATFORMS, INC. reassignment META PLATFORMS, INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: FACEBOOK, INC.
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • H04L51/32
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/7847Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
    • G06F16/786Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content using motion, e.g. object motion or camera motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Definitions

  • Embodiments of the invention relate to social networking; and more specifically, to the bundling of event memories in a social networking system.
  • FIG. 1 is a network diagram of one embodiment of a system for providing personalized content to a user of a social networking system
  • FIG. 2 is a diagram of one embodiment of a social networking system
  • FIG. 3 is a flow diagram illustrating a process for bundling of event memories according to an embodiment of the invention
  • FIG. 4 is a flow diagram illustrating the identification of a first plurality of user-submitted content items of FIG. 3 according to an embodiment of the invention
  • FIG. 5 illustrates user interface elements utilized for creating and displaying bundled event memories according to an embodiment of the invention
  • FIG. 6 illustrates a first timeline social network user page including user-submitted content items according to an embodiment of the invention
  • FIG. 7 illustrates a second timeline social network user page including user-submitted content items according to an embodiment of the invention
  • FIG. 8 illustrates a bundled event video including user-submitted content from the first and second timeline social network user pages of FIG. 6 and FIG. 7 according to an embodiment of the invention.
  • FIG. 9 illustrates, in block diagram form, an exemplary processing system to provide social competition functionalities.
  • Bundled event memories may be generated from user-submitted content posted to a social networking system or to a third party website or application by one or more users.
  • This user-submitted content may be automatically identified by the social networking system as pertaining to an event, or identified using a set of identifiers provided by a user of the social networking system.
  • the identified user-submitted content (such as but not limited to text, images, audio, and videos) may be aggregated into a multimedia object.
  • the multimedia object is a video, which may also include an audio soundtrack, but in other embodiments the multimedia object can be any type of multimedia object, such as but not limited to an image, document, audio clip, or executable application.
  • the bundled event memory may then be posted to the social network or provided to users of the social network. Events may be relatively short in time (such as a party or game) or longer in time (such as a baby's first year of life or a season for a professional or college sports team).
  • FIG. 1 is a network diagram of one embodiment of a system 100 for providing personalized content to a user of a social networking system 130 .
  • the system 100 includes one or more user devices 110 , one or more third-party websites 120 , the social networking system 130 and a network 140 .
  • the embodiment of the system 100 shown by FIG. 1 includes a single third-party website 120 and a single user device 110 .
  • the system 100 may include more user devices 110 and/or more third-party websites 120 .
  • the social networking system 130 is operated by the social network provider, whereas the third-party websites 120 are separate from the social networking system 130 in that they may be operated by different entities.
  • the social networking system 130 and the third-party websites 120 operate in conjunction to provide social networking services to users of the social networking system 130 .
  • the social networking system 130 provides a platform, or backbone, which other systems, such as third-party websites 120 , may use to provide social networking services and functionalities to users across the Internet.
  • the user device 110 comprises one or more computing devices that can receive input from a user and can transmit and receive data via the network 140 .
  • the user device 110 may be a desktop computer, a laptop computer, a smart phone, a personal digital assistant (PDA), or any other device including computing functionality and data communication capabilities.
  • PDA personal digital assistant
  • the user device 110 is configured to communicate with the third-party website 120 and the social networking system 130 via the network 140 , which may comprise any combination of local area networks (LANs) and/or wide area networks (WANs), using both wired and wireless communication systems.
  • LANs local area networks
  • WANs wide area networks
  • the user device 110 displays content from the third-party website 120 or from the social networking system 130 by processing a markup language document 116 received from the third-party website 120 or from the social networking system 130 using a browser application 112 .
  • the markup language document 116 identifies content and one or more instructions describing formatting or presentation of the content.
  • the browser application 112 executes the instructions included in the markup language document 116 .
  • the browser application 112 displays the identified content using the format or presentation described by the markup language document 116 .
  • the markup language document 116 includes instructions for generating and displaying a web page having multiple frames that include text and/or image data retrieved from the third-party website 120 and/or the social networking system 130 .
  • the markup language document 116 comprises a data file including extensible markup language (XML) data, extensible hypertext markup language (XHTML) data or other markup language data.
  • the user device 110 is a mobile device such as a smart phone or tablet
  • the user device 110 also includes one or more mobile applications 118 that execute on the user device 110 .
  • the mobile application 118 may execute as an independent stand-alone application or may utilize the network 140 to exchange data between the user device 110 , the social networking system 130 and/or the third-party website 120 .
  • the third-party website 120 comprises one or more web servers including one or more web pages 122 , which are communicated to the user device 110 using the network 140 .
  • the third-party website 120 is separate from the social networking system 130 .
  • the third-party website 120 is associated with a first domain while the social networking website is associated with a separate social networking domain.
  • a web page 122 included in the third-party website 120 comprises a markup language document identifying content and including instructions specifying formatting or presentation of the identified content, as described above.
  • the social networking system 130 comprises one or more computing devices storing a social network, or mapping of a social graph, comprising a plurality of users and providing users of the social network with the ability to communicate and interact with other users of the social network.
  • the social networking system 130 is further described below in conjunction with FIG. 2 .
  • users of the social networking system 130 add connections to a number of other users of the social networking system 130 to whom they desire to be connected.
  • the term “friend” or the term “a connection” refers to any other user of the social networking system 130 to whom a user has formed a connection, association, or relationship via the social networking system 130 .
  • Connections may be added explicitly by a user or may be automatically created by the social networking systems 130 based on common characteristics of the users (e.g., users who are alumni of the same educational institution). For example, a first user specifically selects a particular other user to be a friend. Connections in the social networking system 130 are usually in both directions, but need not be, so the terms “user,” “friend” and “connection” depend on the frame of reference. Connections between users of the social networking system 130 are usually bilateral, or “mutual,” but connections may also be unilateral, or “one-way.” For example, if Bob and Joe are both users of the social networking system 130 and are connected to each other, Bob and Joe are each other's connections.
  • connection between users may be a direct connection; however, some embodiments of a social networking system allow the connection to be indirect via one or more levels of connections or degrees or separation.
  • the social networking system 130 provides users with the ability to take actions on various types of items supported by the social networking system 130 .
  • items may include groups or networks (where “networks” here refer not to physical communication networks, but rather social networks of people, entities, and concepts) to which users of the social networking system may belong, events or calendar entries in which a user might be interested, computer-based applications that a user may use via the social networking system 130 , transactions that allow users to buy or sell items via the service, and interactions with advertisements that a user may perform on or off the social networking system.
  • a user may interact with anything that is capable of being represented in the social networking system 130 or in a third-party website 120 , separate from the social networking system 130 , coupled to the social networking system 130 via a network 140 .
  • the social networking system 130 is also capable of connecting a variety of entities.
  • the social networking system 130 enables users to interact with each other as well as third-party websites 120 or other entities through an API or other communication channels.
  • the social networking system 130 also includes user-submitted content, which enhances a user's interactions with the social networking system 130 .
  • User-submitted content may include anything a user can add, upload, send, or “post,” to the social networking system 130 .
  • Posts may include data such as status updates or other textual data, location information, photos, videos, links, music or other similar data, content and/or media.
  • Content may also be added to the social networking system 130 by a third-party through a “communication channel,” such as a newsfeed or stream.
  • Content “items” represent single pieces of content that are represented as objects in the social networking system 130 . In this way, users of the social networking system 130 are encouraged to communicate with each other by posting text and content items of various types of media through various communication channels, increasing the interaction of users with each other and increasing the frequency with which users interact within the social networking system 130 .
  • FIG. 2 is a diagram of one embodiment of a social networking system 130 .
  • the embodiment of a social networking website 130 shown by FIG. 2 includes a web server 210 , an action logger 215 , an API request server 220 , an action log 230 , a user profile store 240 , a connection store 245 , and an event memory bundling module 250 .
  • the event memory bundling module 250 includes an event content identification module 252 , an aggregation module 252 , and a bundled event memory transmission module 252 .
  • the social networking website 130 may include additional, fewer, or different modules for various applications. Conventional components such as network interfaces, security mechanisms, load balancers, failover servers, management and network operations consoles, and the like are not shown so as to not obscure the details of the system.
  • the social networking system 130 comprises a computing system that allows users to communicate or otherwise interact with each other and access content as described herein.
  • the social networking system 130 stores user profiles describing the users of a social network.
  • the user profiles include biographic, demographic, and other types of descriptive information, such as work experience, educational history, hobbies or preferences, interests, location, and the like.
  • the social networking system 130 further stores data describing one or more connections between different users in the connection store 245 .
  • the connection information may indicate users who have similar or common work experience, group memberships, hobbies, educational history, or are in any way related or share common attributes.
  • the social networking system 130 includes user-defined connections between different users, allowing users to specify their relationships with other users. For example, user-defined connections allow users to generate relationships with other users that parallel the users' real-life relationships, such as friends, co-workers, partners, and so forth. Users may select from predefined types of connections, or define their own connection types as needed.
  • the web server 210 links the social networking system to one or more user device 110 and/or one or more third-party websites 130 via the network 240 .
  • the web server 210 serves web pages, as well as other web-related content, such as Java, Flash, XML, and so forth.
  • the web server 210 may include a mail server or other messaging functionality for receiving and routing messages between the social networking system 130 and one or more user devices 110 .
  • the messages can be instant messages, queued messages (e.g., email), text and Short Message Service (SMS) messages, or any other suitable messaging format.
  • SMS Short Message Service
  • the Application Programming Interface (API) request server 220 allows one or more third-party websites 120 and/or mobile applications 118 to access information from the social networking system 130 by calling one or more APIs.
  • the API request server 220 may also allow third-party websites 120 and/or mobile applications 118 to send information to social networking website by calling APIs.
  • a third-party website 120 sends an API request to the social networking system 130 via the network 140 and the API request server 220 receives the API request.
  • the API request server 220 processes the request by calling an API associated with the API request to generate an appropriate response, which the API request server 220 communicates to the third-party website 120 via the network 140 .
  • the API request server 220 collects data associated with a user and communicates the collected data to the third-party website 120 .
  • the action logger 215 is capable of receiving communications from the web server 210 about user actions on and/or off the social networking system 130 .
  • the action logger 215 populates the action log 230 with information about user actions, allowing the social networking system 130 to track various actions taken by its users within the social networking system 130 and outside of the social networking system 130 . Any action that a particular user takes with respect to another user is associated with each user's profile, through information maintained in the action log 230 or in a similar database or other data repository.
  • Examples of actions taken by a user within the social network 130 that are identified and stored may include, for example, adding a connection to another user, sending a message to another user, reading a message from another user, viewing content associated with another user, attending an event posted by another user or other actions interacting with another user.
  • the action is recorded in an action log 240 .
  • the social networking system maintains the action log 230 as a database of entries. When an action is taken within the social networking system 130 , an entry for the action is added to the action log 230 .
  • user actions may be associated with an entity outside of the core social networking system 130 , such as a third-party website 120 that is separate from the social networking system website 130 .
  • the action logger 215 receives data describing a user's interaction with a third party website 120 from the web server 210 .
  • Examples of actions where a user interacts with a third-party website 120 includes a user expressing an interest in a third-party website 120 or another entity, a user posting a comment to the social networking system 130 that discusses a third-party website 120 , or a web page 122 within the third-party website 120 , a user posting to the social networking system 130 a Uniform Resource Locator (URL) or other identifier associated with a third-party website 120 , a user attending an event associated with a third-party website 120 or any other action by a user that is related to a third-party website 120 .
  • the action log 240 may include actions describing interactions between a social networking system user and a third-party website 120 that is separate from the social networking system 130 .
  • the authorization server 235 enforces one or more privacy settings of the users of the social networking system 130 .
  • a privacy setting of a user determines how particular information associated with a user can be shared.
  • the privacy setting comprises the specification of particular information associated with a user and the specification of the entity or entities with whom the information can be shared. Examples of entities with which information can be shared may include other users, applications, mobile applications 118 , third-party websites 120 or any entity that can potentially access the information.
  • the information that can be shared by a user comprises user profile information like profile photo, phone numbers associated with the user, user's connections, actions taken by the user such as adding a connection, changing user profile information and the like.
  • the authorization server 235 contains logic to determine if certain information associated with a user can be accessed by a user's friends, third-party websites 120 and/or other applications and entities. For example, a third-party website 120 that attempts to access a user's comment about a URL associated with the third-party website 120 must get authorization from the authorization server 235 to access the user's work phone number. Based on the user's privacy settings, the authorization server 235 determines if another user, a third-party website 120 , a mobile application 118 or another entity is allowed to access information associated with the user, including information about actions taken by the user.
  • the authorization server 235 uses a user's privacy setting to determine if the user's comment about a URL associated with the third-party website 120 can be accessed by the third-party website 120 . This enables a user's privacy setting to specify which other users, or other entities, are allowed to receive data about the user's actions or other data associated with the user.
  • the social networking system 130 maintains data about objects with which a user may interact with using the social networking system 130 .
  • the user profile store 240 and the connection store 245 store instances of the corresponding type of objects maintained by the social networking system 130 .
  • Each object type has information fields that are suitable for storing information appropriate to the type of object.
  • the user profile store 240 contains data structures with fields suitable for describing a user's profile.
  • the social networking system 130 When a user becomes a user of the social networking system 130 , the social networking system 130 generates a new instance of a user profile in the user profile store 240 , assigns a unique identifier to the user profile, and begins to populate the fields of the user profile with information provided by the user.
  • connection store 245 includes data structures suitable for describing a user's connections to other users, connections to third-party websites 120 or connections to other entities.
  • the connection stores 245 may also associate a connection type with a user's connections, which may be used in conjunction with the user's privacy setting, further described above, to regulate access to information about the user.
  • Embodiments of the social networking system 130 include an event memory bundling module 250 to enable the creation of bundled event memories using user-submitted content posted to the social networking system 130 or to a third party website or application.
  • a user identifies an event that has occurred or is occurring, identifies a set of users as event participants, and identifies an event timeframe and an event location.
  • the event can be nearly anything that occurs in life, and in some embodiments the event includes a plurality of users of the social networking system 130 as participants and/or spectators (direct or indirect).
  • an event could be a sporting event (such as a football game, basketball game, hockey game, soccer game, baseball game, etc.) or a set of sporting events (such as a tournament, the Olympics, the Super Bowl, the World Series, the playoffs in any sport, the World Cup, the NCAA Basketball Tournament, etc.).
  • the event could be a social event such as a wedding, group gathering, reunion, party/celebration, gathering at a restaurant or tavern, graduation, conference, presentation, debate, political protest or gathering, farmer's market, flash mob, heritage festival, etc.
  • the event could be an artistic or arts-related event such as a musical performance, art gallery show, poetry or literature reading, festival, etc.
  • the event may also be a natural event, such as a sunset, eclipse, thunderstorm, blizzard, etc. Accordingly, the type of event that can be utilized for bundling of event memories is nearly limitless.
  • the event content identification module 252 of the event memory bundling module 250 identifies user-submitted content posted to the social networking system 130 regarding the event.
  • the identified user-submitted content may include photographs, text (e.g., comments, post messages), videos, audio recordings, illustrations, animations, or any other multimedia or audio-visual content submitted to the social networking system 130 , referenced within content submitted to the social networking system 130 , or submitted to a third party website or application.
  • the event content identification module 252 retrieves the user-submitted content from the third party website or application and stores the user-submitted content within the social networking system 130 .
  • an event may be relatively short in time or longer in time.
  • a user may post a message to a social networking system 130 including a link or reference to another piece of content.
  • the identified user-submitted content may have been posted by that user, by friends or users connected to that user, or by other users of the social networking system 130 that posted content identified as relating to the event.
  • the user-submitted content may be generated by that submitting user (e.g., a photograph taken by that user, text written by that user), generated by another user (e.g., a post message of a second user that is republished by that user), or generated by another source (e.g., a quotation taken from a book or website of another, a photograph taken by another, etc.)
  • that submitting user e.g., a photograph taken by that user, text written by that user
  • another user e.g., a post message of a second user that is republished by that user
  • another source e.g., a quotation taken from a book or website of another, a photograph taken by another, etc.
  • the event content identification module 252 also presents the identified user-submitted content to the user to seek input from the user that indicates which of the user-submitted content items are of interest to the user. In embodiments of the invention, this presentation is causing the content to be displayed to the user as part of a webpage or causing the content to be displayed as part of a standalone application executing on a user device of the user.
  • the event content identification module 252 receives an indication from the user device of the user that identifies which of the identified user-submitted content items are to be used (or not to be used) when creating a bundled event memory.
  • content is filtered prior to being provided to the user based upon one or more of: geolocation information of the content from geotagging, post text, identified persons or entities in a picture, a date and/or time when the content was created, modified, or posted, a location (other than from geotagging), etc.
  • the event memory bundling module 250 also includes an aggregation module 254 to take the identified user-submitted content items and aggregate them into a bundled event memory according to user privacy preferences.
  • the bundled event memory is a movie (or slideshow), and in some embodiments the movie includes one or more music or audio pieces that play along with images and text.
  • all audio or visual items within the movie are from the user-submitted content; in other embodiments, one or more of the audio or visual items used in the movie are not from the user-submitted content, and may or may not be selected by the user.
  • the movie may include an audio soundtrack that is not from the user-submitted content and is instead selected by the user.
  • the movie is encoded using the H.264/MPEG-4 Part 10 video compression standard, the VC-1/SMPTE 421M standard, the On2 TrueMotion VP6 codec, VP8 format, Theora format, WebM format, or other format.
  • the movie may be presented as an Adobe Flash video, a Flash Video, an Ogg video, an HTML5 video, or any other commonly used container format known to those of ordinary skill in the art.
  • the bundled event memory transmission module 256 transmits the bundled event memory to one or more user devices of the social networking system 130 for display to the corresponding one or more users.
  • the bundled event memory is transmitted and displayed to just the user, in other embodiments, the bundled event memory is transmitted and displayed to the user and one or more of the user's friends.
  • the bundled event memory is transmitted to one or more of the user, the user's friends, users that posted any of the user-submitted content aggregated within the bundled event memory, or users that indicated an interest or affiliation with the event.
  • the event content identification module 252 is also able to automatically detect potential events based upon an analysis of posted user-submitted content.
  • the event content identification module 252 is configured to detect patterns of activity within the user-submitted content. For example, a pattern may include a plurality of posts by one or more users referencing those one or users within a period of time, or a plurality of posts from a plurality of users including a similar set of words that are identified as relating to a particular event.
  • the event content identification module 252 may be configured to utilize a number of well-known machine learning techniques to identify such clusters of posts that may indicate an event or whether a post relates to an event.
  • the event content identification module 252 may utilize a wide variety of information from the user-submitted content ranging from timestamps from photographs, detected user and object identities from within user-submitted photographs/videos/audio recordings, geolocation information from the posts and objects submitted within posts, metadata from user-submitted content items (e.g. Exchangeable Image File Format (EXIF) metadata, Extensible Metadata Platform (XMP) metadata, International Press Telecommunications Council (IPTC) metadata, etc.), user “check-ins” at a particular location, keywords or codes within a post message that identify another object/topic/user (e.g., a hashtag metadata tag), objects/topics/users that are “tagged” by users within user-submitted content.
  • EXIF Exchangeable Image File Format
  • XMP Extensible Metadata Platform
  • IPTC International Press Telecommunications Council
  • this information and user-submitted content is subject to the privacy policy of the social networking system 130 and also any individual privacy policy implemented by a user of the social networking system 130 .
  • any individual privacy policy implemented by a user of the social networking system 130 For example, if a user of a particular social networking system 130 has set a privacy setting indicating that some or all of their user-submitted content is not to be used in one or more of these ways, the social networking system 130 should abide.
  • FIG. 3 is a flow diagram illustrating a high-level process for the bundling of event memories 300 according to an embodiment of the invention.
  • the operations of this and other flow diagrams will be described with reference to the exemplary embodiments of the other diagrams. However, it should be understood that the operations of the flow diagrams can be performed by embodiments of the invention other than those discussed with reference to these other diagrams, and the embodiments of the invention discussed with reference these other diagrams can perform operations different than those discussed with reference to the flow diagrams.
  • the event memory bundling module 250 via the event content identification module 252 , identifies a first plurality of user-submitted content items posted to the social networking system that are related to an event that occurred involving one or more users of the social networking system. Several possible ways to perform this identification are discussed later herein with respect to FIG. 4 .
  • the event memory bundling module 250 via the aggregation module 254 , aggregates the first plurality of user-submitted content items into a bundled event memory.
  • This bundled event memory is a set of one or more files capable of being presented to users on user devices.
  • the event memory bundling module 250 via the bundled even memory transmission module 256 , transmits the bundled event memory to at least some of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.
  • FIG. 4 is a flow diagram illustrating the identification of a first plurality of user-submitted content items 302 of FIG. 3 according to an embodiment of the invention.
  • a first approach (illustrated by circle ‘1a’) and second approach (illustrated by circle ‘1b’) begin with the event content identification module 252 receiving an event timeframe from the first device utilized by the first user 402 .
  • This timeframe may be a single date or single time that is an approximate time of the event. Alternatively, the timeframe may be a range of dates or times, or both an approximate starting time and an approximate ending time.
  • the event content identification module 252 receives a set of user identifiers for users of the social networking system 130 involved in the event 404 .
  • the set of user identifiers is received from the first device of the first user.
  • “involved in the event” means that the users either participated in the event, attended the event, observed the event, or discussed the event.
  • the event content identification module 252 With the set of user identifiers, the event content identification module 252 generates a plurality of candidate content items based upon user-submitted content items posted by the first user and the set of users at or during the received timeframe 406 . In an embodiment, event content identification module 252 gathers all content posted to the social networking system 130 by each of the users during the timeframe to generate the plurality of candidate content items according to their privacy preference. In some embodiments, this gathering is further refined by only gathering content posted by the set of users during the timeframe that is in some way determined to likely be associated with the event.
  • the event content identification module 252 may utilize many other pieces of information from or about content submitted to the social networking system 130 when determining if the content is likely associated with the event, such as metadata of the content, particular words utilized within text of a post, or the identities of users or other entities identified or referenced within the content.
  • This plurality of candidate content items is displayed to the first user 408 , who will indicate which of the plurality of candidate content items should or should not be included within the bundled event memory. Accordingly, the event content identification module 252 receives an indication from the user device of which of the candidate content items have been selected as the first plurality of user-submitted content items 410 .
  • the event content identification module 252 may be configured to follow circle ‘1b’ after receiving the event timeframe from the first device of the first user 402 .
  • the event content identification module 252 identifies a second plurality of user-submitted content items that were posted by the first user during the received timeframe 412 .
  • the second plurality of user-submitted content items include all content items posted to the social networking system 130 by the first user during the received timeframe, but in other embodiments the second plurality of user-submitted content items includes a subset of all of that posted content, depending upon how likely a particular content item is related to the event, as determined by the event content identification module 252 .
  • the event content identification module 252 identifies a plurality of users based upon the identified second plurality of user-submitted content items.
  • the event content identification module 252 examines the second plurality of user-submitted content items to identify one or more of: users that were tagged within a picture/video/message, users that commented on a post, users that “liked” a post, users that republished a post, or users that were determined to be in a picture or video by identification software or hardware.
  • the event content identification module 252 identifies a third plurality of user-submitted content items posted by the plurality of users during the timeframe 416 . Similar to the identification of the second plurality of user-submitted content items 412 , in some embodiments, the third plurality of user-submitted content items include all content items posted to the social networking system 130 by the set of users during the timeframe, but in other embodiments the third plurality of user-submitted content items includes a subset of all of that posted content, depending upon how likely a particular content item is related to the event, as determined by the event content identification module 252 .
  • the event content identification module 252 generates the plurality of candidate content items from the second and third pluralities of user-submitted content items 418 .
  • the generated plurality of candidate content items may include all of the user-submitted content items from the second and third pluralities of user-submitted content items, or it may contain a subset of each of the second and third pluralities of user-submitted content items, or it may contain only some content items from the second plurality or only some content items from the third plurality.
  • the event content identification module 252 similarly displays the candidate content items to the first user 408 and receives an indication from the user device of the first user of which of the candidate content items are the first plurality of user-submitted content items to be included in the bundled event memory 410 .
  • FIG. 2 Another embodiment for identifying the first plurality of user-submitted content items 302 is illustrated by circle ‘2’ and includes identifying a second plurality of user-submitted content items posted by the first user during some timeframe 420 .
  • this timeframe is not an input to the event content identification module 252 , but is an output after the event content identification module 252 has detected a set of one or more user-submitted content items posted by a first user within a particular time frame that appear to relate to a particular event.
  • the event content identification module 252 may be configured to utilize many different methods to detect posts that are similarly referencing a common event.
  • the event content identification module 252 may identify such a second plurality of user-submitted content items if a user posts a particular number of posts within a particular amount of time that include/reference to a particular number of common people at a particular location or set of locations. For example, if a user posts 15 different pictures over the span of three hours from Lambeau Field (a football stadium in Green Bay, Wis.) that all include pictures of his/her friends at a “Packers” v. “Bears” game, the event content identification module 252 may detect that these posts all pertain to a common event—a football game where the Packers team beat the Bears team.
  • Lambeau Field a football stadium in Green Bay, Wis.
  • the process of circle ‘2’ merges with the process of circle ‘1b’ at 414 , where a plurality of users are identified based upon the second plurality of user-submitted content items. Subsequently, the process continues with blocks 416 , 418 , 408 , and 410 .
  • Another embodiment depicted by circle ‘3’ includes receiving an event indicator from a first user device of a first user 422 .
  • the event indicator is a word or string of text (such as a hashtag) that will occur in user-submitted content items that relate to a particular event.
  • the event indicator is a particular combination of users that, when found together in user-submitted content items, indicate that these content items pertain to a common event.
  • the event indicator may be a portion of text, a “check-in” location, or any other expression that can be used to test a content item and yield a “yes” or “no” based upon the properties of that content item.
  • the event content identification module 252 With the received event indicator, the event content identification module 252 generates a plurality of candidate content items by identifying user-submitted content items posted by a plurality of users that satisfy the event indicator 424 .
  • the plurality of users includes the first user and one or more of the “friends” of the first user.
  • the plurality of users includes one or more users of the social networking system 130 that are not “friends” with the first user. This process of circle ‘3’ then displays the candidate content items to the first user 408 , and receives an indication from the user device of the first user of which of the candidate content items are the first plurality of user-submitted content items to be included in the bundled event memory 410 .
  • FIG. 5 illustrates user interface elements utilized for creating and displaying bundled event memories according to an embodiment of the invention.
  • these user interface elements are displayed as a portion of a web page served by web server 210 , and in some embodiments these interface elements are displayed as a portion of a standalone application such as mobile application 118 .
  • the bundled event display module 500 A is a user interface element that allows a user to view any of a set of previously created bundled memories or create a new bundled event memory.
  • the first three elements of the bundled event display module 500 A are bundled event selectors 502 A- 502 C.
  • Each bundled event selector (e.g. 502 A) contains a thumbnail of a bundled event memory, a bundled event name (e.g. “30th Birthday Blast”), and a bundled event timeframe (e.g. “Oct. 23, 2012”).
  • the associated bundled event memory is displayed to the user.
  • the bundled event display module 500 A also includes a bundled event creation input button 504 , which upon user selection, allows the user to create a new bundled event memory. In one embodiment, when a user selects the bundled event creation input button 504 , the bundled event creation module 500 B is displayed.
  • the bundled event creation module 500 B includes a number of input fields allowing a user to utilize the event memory bundling module 250 to create a bundled event memory.
  • the bundled event creation module 500 B includes a bundled event name 506 input, which allows a user to provide a description of the event.
  • the bundled event creation module 500 B also includes a bundled event participants field 508 , which allows a user to enter some users of the social networking system 130 that were involved in the event, and further includes a bundled event location 510 to allow the user to input a geographic location of the event.
  • the bundled event timeframe 512 allows the user to input a range of dates for the event, but in other embodiments the bundled event timeframe allows the user to enter one date, several dates (consecutive or non-consecutive), a date range, several date ranges (consecutive or non-consecutive), one time, a time range, or several time ranges.
  • the bundled event creation module 500 B includes a create bundled event input button 514 allowing the user to submit the request to create a bundled event memory.
  • the event memory bundling module 250 upon a user filling out these inputs, performs at least some of the steps of FIG. 3 and FIG. 4 to create the bundled event memory, which might require further input from the user via other user interface elements that are not displayed herein.
  • the bundled event post 520 (or similar) user interface may be posted to a page associated with the user (such as a timeline of a social network user page as illustrated in FIG. 6 or FIG. 7 ), pages associated with the entered bundled event participants 508 , or pages associated with a plurality of users of the social networking system 130 .
  • the bundled event post 520 includes a bundled event memory 522 , along with the bundled event name 506 , the bundled event participants 508 , and the bundled event location 510 .
  • the user can select and play the bundled event memory 522 within the bundled event post 520 user interface element; in other embodiments, the user may select the bundled event memory 522 video in the bundled event post 520 user interface yet play the bundled event memory 522 video in a separate interface or using a separate standalone media player application (such as VLC by VideoLAN, iTunes by Apple Inc., RealPlayer by Real Networks, or Windows Media Player by Microsoft).
  • the bundled event memory 522 is directly downloadable by the user.
  • FIG. 6 illustrates a first timeline social network user page 600 including user-submitted content items according to an embodiment of the invention
  • FIG. 7 illustrates a second timeline social network user page 700 including user-submitted content items according to an embodiment of the invention.
  • the timelines of social network user pages ( 600 , 700 ) of FIG. 6 and FIG. 7 are helpful for understanding aspects of the invention.
  • Each of these timelines of social network user pages ( 600 , 700 ) includes a plurality of user-submitted posts including user-submitted content items.
  • the first timeline of a social network user page 600 for a user named “Alan Gamer”, includes a user-submitted post 612 comprising a post message 614 of text, a post image 616 , an indication of post “likes” 618 (i.e. an indication of other users of the social networking system 130 that approve of the user-submitted post 612 ), and at least one post comment 620 of text.
  • the page also includes two other user-submitted posts ( 612 , 628 ) that include post messages and post images (e.g. 629 ).
  • this page also includes a user-submitted “check-in” post 622 , which similarly includes a post message 614 of text, an indication of post “likes”, and at least one post comment, but further includes a map and description of the geographic location where the user created the user-submitted “check-in” post 622 from.
  • the page also includes a user-submitted post 624 that is essentially just a post message 625 , and does not include a post image or “check-in” location.
  • the second timeline of a social network user page 700 which is for a user named “Keenan Pridmore”, includes a user-submitted post 724 with a post message, a user-submitted post 724 with a post message and post image 725 .
  • the second timeline social network user page 700 also includes a user-submitted post 724 including a post message 726 , a post video 726 , an indication of post “likes” 730 , and at least one post comment 730 of text.
  • FIG. 8 illustrates a bundled event video including user-submitted content from the first and second timeline social network user pages of FIG. 6 and FIG. 7 (or, “first user page” and “second user page”) according to an embodiment of the invention.
  • the bundled event memory 522 (earlier depicted with respect to FIG. 5 ) on the left side of FIG. 8 is expanded on the right side of FIG. 8 to illustrate the concept of bundled event memories.
  • This bundled event memory which is a video, includes at least five user-submitted content items of three different content types (i.e. image, text, video) from two users.
  • the bundled event memory 522 includes three different content items of type “image”: a post image 725 from the second user page 700 , a post image 629 from the first user page 600 , and a post image 616 from the first user page 600 .
  • the bundled event memory 522 includes one user-submitted content item of type “text”: the post message 625 from the first user page 600 .
  • the bundled event memory 522 includes one user-submitted content item of type “video”: the post video 726 of the second user page 700 .
  • the bundled even memory may include more or few content types, more or fewer user-submitted content items, and/or more or fewer users from which the content items are selected.
  • the bundled event memory 522 may optionally include a bundled event memory soundtrack 802 , which is an audio track that is played along with the visual aspect of the bundled event memory 522 .
  • the bundled event memory soundtrack 802 may be one or more audio recordings that are user-submitted content items.
  • the bundled event memory soundtrack 802 may be comprised partially or completely of other audio that is not user-submitted content.
  • the bundled event memory soundtrack 802 is audio that is selected by the user generating the bundled event memory.
  • FIG. 9 illustrates, in block diagram form, an exemplary processing system 900 to provide social competition functionalities.
  • Data processing system 900 includes one or more microprocessors 905 and connected system components (e.g., multiple connected chips). Alternatively, the data processing system 900 is a system on a chip.
  • the data processing system 900 includes memory 910 , which is coupled to the microprocessor(s) 905 .
  • the memory 910 may be used for storing data, metadata, and programs for execution by the microprocessor(s) 905 .
  • the memory 910 may include one or more of volatile and non-volatile memories, such as Random Access Memory (“RAM”), Read Only Memory (“ROM”), a solid state disk (“SSD”), Flash, Phase Change Memory (“PCM”), or other types of data storage.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • SSD solid state disk
  • PCM Phase Change Memory
  • the memory 910 may be internal or distributed memory.
  • the data processing system 900 also includes an audio input/output subsystem 915 which may include a microphone and/or a speaker for, for example, playing back music or other audio, receiving voice instructions to be executed by the microprocessor(s) 905 , playing audio notifications, etc.
  • an audio input/output subsystem 915 which may include a microphone and/or a speaker for, for example, playing back music or other audio, receiving voice instructions to be executed by the microprocessor(s) 905 , playing audio notifications, etc.
  • a display controller and display device 920 provides a visual user interface for the user, e.g., GUI windows illustrated in FIGS. 5-8 .
  • the data processing system 900 also includes one or more input or output (“I/O”) devices and interfaces 925 , which are provided to allow a user to provide input to, receive output from, and otherwise transfer data to and from the system.
  • I/O devices 925 may include a mouse, keypad or a keyboard, a touch panel or a multi-touch input panel, camera, optical scanner, network interface, modem, other known I/O devices or a combination of such I/O devices.
  • the I/O devices and interfaces 925 may also include a connector for a dock or a connector for a USB interface, FireWire, Thunderbolt, Ethernet, etc. to connect the system 900 with another device, external component, or a network.
  • Exemplary I/O devices and interfaces 925 also include wireless transceivers, such as an IEEE 802.11 transceiver, an infrared transceiver, a Bluetooth transceiver, a wireless cellular telephony transceiver (e.g., 2G, 3G, 4G), or another wireless protocol to connect the data processing system 900 with another device, external component, or a network and receive stored instructions, data, tokens, etc.
  • wireless transceivers such as an IEEE 802.11 transceiver, an infrared transceiver, a Bluetooth transceiver, a wireless cellular telephony transceiver (e.g., 2G, 3G, 4G), or another wireless protocol to connect the data processing system 900 with another device
  • one or more buses may be used to interconnect the various components shown in FIG. 9 .
  • the data processing system 900 is an exemplary representation of a user device 110 , but any of these features may also be utilized by devices implementing the social networking system 130 .
  • the data processing system 900 may be a personal computer, tablet-style device, a personal digital assistant (PDA), a cellular telephone with PDA-like functionality, a Wi-Fi based telephone, a handheld computer which includes a cellular telephone, a media player, an entertainment system, or devices which combine aspects or functions of these devices, such as a media player combined with a PDA and a cellular telephone in one device.
  • the data processing system 900 may be a network computer, server, or an embedded processing device within another device or consumer electronic product.
  • the terms computer, system, device, processing device, and “apparatus comprising a processing device” may be used interchangeably with the data processing system 900 and include the above-listed exemplary embodiments.
  • FIG. 9 may also be part of the system 900 , and, in certain embodiments, fewer components than that shown in FIG. 9 may also be used in a data processing system 900 .
  • aspects of the inventions may be embodied, at least in part, in software. That is, the computer-implemented methods may be carried out in a computer system or other data processing system in response to its processor or processing system executing sequences of instructions contained in a memory, such as memory 910 or other non-transitory machine-readable storage medium.
  • the software may further be transmitted or received over a network (not shown) via a network interface device 925 .
  • hardwired circuitry may be used in combination with the software instructions to implement the present embodiments.
  • the techniques are not limited to any specific combination of hardware circuitry and software, or to any particular source for the instructions executed by the data processing system 900 .
  • An article of manufacture may be used to store program code providing at least some of the functionality of the embodiments described above. Additionally, an article of manufacture may be used to store program code created using at least some of the functionality of the embodiments described above.
  • An article of manufacture that stores program code may be embodied as, but is not limited to, one or more memories (e.g., one or more flash memories, random access memories—static, dynamic, or other), optical disks, CD-ROMs, DVD-ROMs, EPROMs, EEPROMs, magnetic or optical cards or other type of non-transitory machine-readable media suitable for storing electronic instructions.
  • embodiments of the invention may be implemented in, but not limited to, hardware or firmware utilizing a Field-Programmable Gate Array (FPGA), Application-Specific Integrated Circuit (ASIC), a processor, a computer, or a computer system including a network.
  • FPGA Field-Programmable Gate Array
  • ASIC Application-Specific Integrated Circuit
  • processor a computer
  • computer system including a network.
  • Modules and components of hardware or software implementations can be divided or combined without significantly altering embodiments of the invention.

Abstract

A method for bundling event memories in a social networking system. The method includes identifying a first plurality of user-submitted content items posted to the social networking system that are related to an event involving a plurality of users. The social networking system aggregates the first plurality of user-submitted content items into a bundled event memory, and transmits the bundled event memory to at least some of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.

Description

    FIELD
  • Embodiments of the invention relate to social networking; and more specifically, to the bundling of event memories in a social networking system.
  • BACKGROUND
  • In recent years, the amount of multimedia content posted online has increased dramatically. This increase has further accelerated with the widespread adoption of mobile phones and tablet computers featuring integrated, high-quality still and video cameras. Armed with these portable devices, users are easily able to document and share any aspect of their lives at any moment from nearly any location.
  • However, this increase in availability of multimedia content has led to an overwhelming and often unorganized accumulation of these digital remnants. This problem, in part, has been the result of the difficulty and significant time required of users to organize this multimedia content by moving it into folder hierarchies and/or assigning tags and labels to these digital files.
  • Further, with this abundance of digital multimedia content, it has become difficult for users to locate and combine multimedia content from one or more sources into an engaging and portable format allowing for easy sharing with friends and family.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The invention may best be understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention. In the drawings:
  • FIG. 1 is a network diagram of one embodiment of a system for providing personalized content to a user of a social networking system;
  • FIG. 2 is a diagram of one embodiment of a social networking system;
  • FIG. 3 is a flow diagram illustrating a process for bundling of event memories according to an embodiment of the invention;
  • FIG. 4 is a flow diagram illustrating the identification of a first plurality of user-submitted content items of FIG. 3 according to an embodiment of the invention;
  • FIG. 5 illustrates user interface elements utilized for creating and displaying bundled event memories according to an embodiment of the invention;
  • FIG. 6 illustrates a first timeline social network user page including user-submitted content items according to an embodiment of the invention;
  • FIG. 7 illustrates a second timeline social network user page including user-submitted content items according to an embodiment of the invention;
  • FIG. 8 illustrates a bundled event video including user-submitted content from the first and second timeline social network user pages of FIG. 6 and FIG. 7 according to an embodiment of the invention; and
  • FIG. 9 illustrates, in block diagram form, an exemplary processing system to provide social competition functionalities.
  • DESCRIPTION OF EMBODIMENTS
  • In the following description, numerous specific details are set forth. However, it is understood that embodiments of the invention may be practiced without these specific details. References in the specification to “one embodiment,” “an embodiment,” “an exemplary embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
  • Detailed below are embodiments of methods, systems, and apparatuses for the bundling of event memories in a social networking system. Bundled event memories, in certain of the following embodiments, may be generated from user-submitted content posted to a social networking system or to a third party website or application by one or more users. This user-submitted content may be automatically identified by the social networking system as pertaining to an event, or identified using a set of identifiers provided by a user of the social networking system. The identified user-submitted content (such as but not limited to text, images, audio, and videos) may be aggregated into a multimedia object. In an embodiment, the multimedia object is a video, which may also include an audio soundtrack, but in other embodiments the multimedia object can be any type of multimedia object, such as but not limited to an image, document, audio clip, or executable application. The bundled event memory may then be posted to the social network or provided to users of the social network. Events may be relatively short in time (such as a party or game) or longer in time (such as a baby's first year of life or a season for a professional or college sports team).
  • FIG. 1 is a network diagram of one embodiment of a system 100 for providing personalized content to a user of a social networking system 130. The system 100 includes one or more user devices 110, one or more third-party websites 120, the social networking system 130 and a network 140. For purposes of illustration, the embodiment of the system 100 shown by FIG. 1 includes a single third-party website 120 and a single user device 110. However, in other embodiments, the system 100 may include more user devices 110 and/or more third-party websites 120. In certain embodiments, the social networking system 130 is operated by the social network provider, whereas the third-party websites 120 are separate from the social networking system 130 in that they may be operated by different entities. In various embodiments, however, the social networking system 130 and the third-party websites 120 operate in conjunction to provide social networking services to users of the social networking system 130. In this sense, the social networking system 130 provides a platform, or backbone, which other systems, such as third-party websites 120, may use to provide social networking services and functionalities to users across the Internet.
  • The user device 110 comprises one or more computing devices that can receive input from a user and can transmit and receive data via the network 140. For example, the user device 110 may be a desktop computer, a laptop computer, a smart phone, a personal digital assistant (PDA), or any other device including computing functionality and data communication capabilities. The user device 110 is configured to communicate with the third-party website 120 and the social networking system 130 via the network 140, which may comprise any combination of local area networks (LANs) and/or wide area networks (WANs), using both wired and wireless communication systems.
  • In one embodiment, the user device 110 displays content from the third-party website 120 or from the social networking system 130 by processing a markup language document 116 received from the third-party website 120 or from the social networking system 130 using a browser application 112. The markup language document 116 identifies content and one or more instructions describing formatting or presentation of the content. By executing the instructions included in the markup language document 116, the browser application 112 displays the identified content using the format or presentation described by the markup language document 116. For example, the markup language document 116 includes instructions for generating and displaying a web page having multiple frames that include text and/or image data retrieved from the third-party website 120 and/or the social networking system 130. In various embodiments, the markup language document 116 comprises a data file including extensible markup language (XML) data, extensible hypertext markup language (XHTML) data or other markup language data.
  • In one embodiment where the user device 110 is a mobile device such as a smart phone or tablet, the user device 110 also includes one or more mobile applications 118 that execute on the user device 110. The mobile application 118 may execute as an independent stand-alone application or may utilize the network 140 to exchange data between the user device 110, the social networking system 130 and/or the third-party website 120.
  • The third-party website 120 comprises one or more web servers including one or more web pages 122, which are communicated to the user device 110 using the network 140. The third-party website 120 is separate from the social networking system 130. For example, the third-party website 120 is associated with a first domain while the social networking website is associated with a separate social networking domain. A web page 122 included in the third-party website 120 comprises a markup language document identifying content and including instructions specifying formatting or presentation of the identified content, as described above. The social networking system 130 comprises one or more computing devices storing a social network, or mapping of a social graph, comprising a plurality of users and providing users of the social network with the ability to communicate and interact with other users of the social network. The social networking system 130 is further described below in conjunction with FIG. 2. In use, users of the social networking system 130 add connections to a number of other users of the social networking system 130 to whom they desire to be connected. As used herein, the term “friend” or the term “a connection” refers to any other user of the social networking system 130 to whom a user has formed a connection, association, or relationship via the social networking system 130.
  • Connections may be added explicitly by a user or may be automatically created by the social networking systems 130 based on common characteristics of the users (e.g., users who are alumni of the same educational institution). For example, a first user specifically selects a particular other user to be a friend. Connections in the social networking system 130 are usually in both directions, but need not be, so the terms “user,” “friend” and “connection” depend on the frame of reference. Connections between users of the social networking system 130 are usually bilateral, or “mutual,” but connections may also be unilateral, or “one-way.” For example, if Bob and Joe are both users of the social networking system 130 and are connected to each other, Bob and Joe are each other's connections. If, on the other hand, Bob wishes to connect to Joe to view data communicated to the social networking system by Joe but Joe does not wish to form a mutual connection, a unilateral connection may be established. The connection between users may be a direct connection; however, some embodiments of a social networking system allow the connection to be indirect via one or more levels of connections or degrees or separation.
  • In addition to establishing and maintaining connections between users and allowing interactions between users, the social networking system 130 provides users with the ability to take actions on various types of items supported by the social networking system 130. These items may include groups or networks (where “networks” here refer not to physical communication networks, but rather social networks of people, entities, and concepts) to which users of the social networking system may belong, events or calendar entries in which a user might be interested, computer-based applications that a user may use via the social networking system 130, transactions that allow users to buy or sell items via the service, and interactions with advertisements that a user may perform on or off the social networking system. These are just a few examples of the items upon which a user may act on a social networking system, and many others are possible. A user may interact with anything that is capable of being represented in the social networking system 130 or in a third-party website 120, separate from the social networking system 130, coupled to the social networking system 130 via a network 140.
  • The social networking system 130 is also capable of connecting a variety of entities. For example, the social networking system 130 enables users to interact with each other as well as third-party websites 120 or other entities through an API or other communication channels.
  • The social networking system 130 also includes user-submitted content, which enhances a user's interactions with the social networking system 130. User-submitted content may include anything a user can add, upload, send, or “post,” to the social networking system 130. For example, a user communicates posts to the social networking system 130 from a user device 110. Posts may include data such as status updates or other textual data, location information, photos, videos, links, music or other similar data, content and/or media. Content may also be added to the social networking system 130 by a third-party through a “communication channel,” such as a newsfeed or stream. Content “items” represent single pieces of content that are represented as objects in the social networking system 130. In this way, users of the social networking system 130 are encouraged to communicate with each other by posting text and content items of various types of media through various communication channels, increasing the interaction of users with each other and increasing the frequency with which users interact within the social networking system 130.
  • FIG. 2 is a diagram of one embodiment of a social networking system 130. The embodiment of a social networking website 130 shown by FIG. 2 includes a web server 210, an action logger 215, an API request server 220, an action log 230, a user profile store 240, a connection store 245, and an event memory bundling module 250. The event memory bundling module 250 includes an event content identification module 252, an aggregation module 252, and a bundled event memory transmission module 252. In other embodiments, the social networking website 130 may include additional, fewer, or different modules for various applications. Conventional components such as network interfaces, security mechanisms, load balancers, failover servers, management and network operations consoles, and the like are not shown so as to not obscure the details of the system.
  • As described above in conjunction with FIG. 1, the social networking system 130 comprises a computing system that allows users to communicate or otherwise interact with each other and access content as described herein. The social networking system 130 stores user profiles describing the users of a social network. The user profiles include biographic, demographic, and other types of descriptive information, such as work experience, educational history, hobbies or preferences, interests, location, and the like. The social networking system 130 further stores data describing one or more connections between different users in the connection store 245. The connection information may indicate users who have similar or common work experience, group memberships, hobbies, educational history, or are in any way related or share common attributes. Additionally, the social networking system 130 includes user-defined connections between different users, allowing users to specify their relationships with other users. For example, user-defined connections allow users to generate relationships with other users that parallel the users' real-life relationships, such as friends, co-workers, partners, and so forth. Users may select from predefined types of connections, or define their own connection types as needed.
  • The web server 210 links the social networking system to one or more user device 110 and/or one or more third-party websites 130 via the network 240. The web server 210 serves web pages, as well as other web-related content, such as Java, Flash, XML, and so forth. The web server 210 may include a mail server or other messaging functionality for receiving and routing messages between the social networking system 130 and one or more user devices 110. The messages can be instant messages, queued messages (e.g., email), text and Short Message Service (SMS) messages, or any other suitable messaging format.
  • The Application Programming Interface (API) request server 220 allows one or more third-party websites 120 and/or mobile applications 118 to access information from the social networking system 130 by calling one or more APIs. The API request server 220 may also allow third-party websites 120 and/or mobile applications 118 to send information to social networking website by calling APIs. For example, a third-party website 120 sends an API request to the social networking system 130 via the network 140 and the API request server 220 receives the API request. The API request server 220 processes the request by calling an API associated with the API request to generate an appropriate response, which the API request server 220 communicates to the third-party website 120 via the network 140. For example, responsive to an API request, the API request server 220 collects data associated with a user and communicates the collected data to the third-party website 120.
  • The action logger 215 is capable of receiving communications from the web server 210 about user actions on and/or off the social networking system 130. The action logger 215 populates the action log 230 with information about user actions, allowing the social networking system 130 to track various actions taken by its users within the social networking system 130 and outside of the social networking system 130. Any action that a particular user takes with respect to another user is associated with each user's profile, through information maintained in the action log 230 or in a similar database or other data repository. Examples of actions taken by a user within the social network 130 that are identified and stored may include, for example, adding a connection to another user, sending a message to another user, reading a message from another user, viewing content associated with another user, attending an event posted by another user or other actions interacting with another user. When a user takes an action within the social networking system 130, the action is recorded in an action log 240. In one embodiment, the social networking system maintains the action log 230 as a database of entries. When an action is taken within the social networking system 130, an entry for the action is added to the action log 230.
  • Additionally, user actions may be associated with an entity outside of the core social networking system 130, such as a third-party website 120 that is separate from the social networking system website 130. For example, the action logger 215 receives data describing a user's interaction with a third party website 120 from the web server 210. Examples of actions where a user interacts with a third-party website 120 includes a user expressing an interest in a third-party website 120 or another entity, a user posting a comment to the social networking system 130 that discusses a third-party website 120, or a web page 122 within the third-party website 120, a user posting to the social networking system 130 a Uniform Resource Locator (URL) or other identifier associated with a third-party website 120, a user attending an event associated with a third-party website 120 or any other action by a user that is related to a third-party website 120. Thus, the action log 240 may include actions describing interactions between a social networking system user and a third-party website 120 that is separate from the social networking system 130.
  • The authorization server 235 enforces one or more privacy settings of the users of the social networking system 130. A privacy setting of a user determines how particular information associated with a user can be shared. The privacy setting comprises the specification of particular information associated with a user and the specification of the entity or entities with whom the information can be shared. Examples of entities with which information can be shared may include other users, applications, mobile applications 118, third-party websites 120 or any entity that can potentially access the information. The information that can be shared by a user comprises user profile information like profile photo, phone numbers associated with the user, user's connections, actions taken by the user such as adding a connection, changing user profile information and the like.
  • The authorization server 235 contains logic to determine if certain information associated with a user can be accessed by a user's friends, third-party websites 120 and/or other applications and entities. For example, a third-party website 120 that attempts to access a user's comment about a URL associated with the third-party website 120 must get authorization from the authorization server 235 to access the user's work phone number. Based on the user's privacy settings, the authorization server 235 determines if another user, a third-party website 120, a mobile application 118 or another entity is allowed to access information associated with the user, including information about actions taken by the user. For example, the authorization server 235 uses a user's privacy setting to determine if the user's comment about a URL associated with the third-party website 120 can be accessed by the third-party website 120. This enables a user's privacy setting to specify which other users, or other entities, are allowed to receive data about the user's actions or other data associated with the user.
  • Additionally, the social networking system 130 maintains data about objects with which a user may interact with using the social networking system 130. To maintain this data, the user profile store 240 and the connection store 245 store instances of the corresponding type of objects maintained by the social networking system 130. Each object type has information fields that are suitable for storing information appropriate to the type of object. For example, the user profile store 240 contains data structures with fields suitable for describing a user's profile. When a new object of a particular type is created, the social networking system 130 initializes a new data structure of the corresponding type, assigns a unique object identifier to it, and begins to add data to the object as needed. This might occur, for example, when a user becomes a user of the social networking system 130, the social networking system 130 generates a new instance of a user profile in the user profile store 240, assigns a unique identifier to the user profile, and begins to populate the fields of the user profile with information provided by the user.
  • The connection store 245 includes data structures suitable for describing a user's connections to other users, connections to third-party websites 120 or connections to other entities. The connection stores 245 may also associate a connection type with a user's connections, which may be used in conjunction with the user's privacy setting, further described above, to regulate access to information about the user.
  • Embodiments of the social networking system 130 include an event memory bundling module 250 to enable the creation of bundled event memories using user-submitted content posted to the social networking system 130 or to a third party website or application. According to embodiments of the invention, a user identifies an event that has occurred or is occurring, identifies a set of users as event participants, and identifies an event timeframe and an event location. The event can be nearly anything that occurs in life, and in some embodiments the event includes a plurality of users of the social networking system 130 as participants and/or spectators (direct or indirect). For example, an event could be a sporting event (such as a football game, basketball game, hockey game, soccer game, baseball game, etc.) or a set of sporting events (such as a tournament, the Olympics, the Super Bowl, the World Series, the playoffs in any sport, the World Cup, the NCAA Basketball Tournament, etc.). Alternatively, the event could be a social event such as a wedding, group gathering, reunion, party/celebration, gathering at a restaurant or tavern, graduation, conference, presentation, debate, political protest or gathering, farmer's market, flash mob, heritage festival, etc. The event could be an artistic or arts-related event such as a musical performance, art gallery show, poetry or literature reading, festival, etc. The event may also be a natural event, such as a sunset, eclipse, thunderstorm, blizzard, etc. Accordingly, the type of event that can be utilized for bundling of event memories is nearly limitless.
  • Based upon this event information from the user, the event content identification module 252 of the event memory bundling module 250 identifies user-submitted content posted to the social networking system 130 regarding the event. The identified user-submitted content may include photographs, text (e.g., comments, post messages), videos, audio recordings, illustrations, animations, or any other multimedia or audio-visual content submitted to the social networking system 130, referenced within content submitted to the social networking system 130, or submitted to a third party website or application. In an embodiment where the user-submitted content is submitted to a third party website or application, the event content identification module 252 retrieves the user-submitted content from the third party website or application and stores the user-submitted content within the social networking system 130. As noted above, an event may be relatively short in time or longer in time. As an example of content referenced within other content, a user may post a message to a social networking system 130 including a link or reference to another piece of content. Further, the identified user-submitted content may have been posted by that user, by friends or users connected to that user, or by other users of the social networking system 130 that posted content identified as relating to the event. The user-submitted content may be generated by that submitting user (e.g., a photograph taken by that user, text written by that user), generated by another user (e.g., a post message of a second user that is republished by that user), or generated by another source (e.g., a quotation taken from a book or website of another, a photograph taken by another, etc.)
  • The event content identification module 252, in some embodiments, also presents the identified user-submitted content to the user to seek input from the user that indicates which of the user-submitted content items are of interest to the user. In embodiments of the invention, this presentation is causing the content to be displayed to the user as part of a webpage or causing the content to be displayed as part of a standalone application executing on a user device of the user. The event content identification module 252, in these embodiments, receives an indication from the user device of the user that identifies which of the identified user-submitted content items are to be used (or not to be used) when creating a bundled event memory. In some embodiments, content is filtered prior to being provided to the user based upon one or more of: geolocation information of the content from geotagging, post text, identified persons or entities in a picture, a date and/or time when the content was created, modified, or posted, a location (other than from geotagging), etc.
  • The event memory bundling module 250 also includes an aggregation module 254 to take the identified user-submitted content items and aggregate them into a bundled event memory according to user privacy preferences. In an embodiment of the invention, the bundled event memory is a movie (or slideshow), and in some embodiments the movie includes one or more music or audio pieces that play along with images and text. In some embodiments, all audio or visual items within the movie are from the user-submitted content; in other embodiments, one or more of the audio or visual items used in the movie are not from the user-submitted content, and may or may not be selected by the user. For example, the movie may include an audio soundtrack that is not from the user-submitted content and is instead selected by the user. In embodiments of the invention, the movie is encoded using the H.264/MPEG-4 Part 10 video compression standard, the VC-1/SMPTE 421M standard, the On2 TrueMotion VP6 codec, VP8 format, Theora format, WebM format, or other format. The movie may be presented as an Adobe Flash video, a Flash Video, an Ogg video, an HTML5 video, or any other commonly used container format known to those of ordinary skill in the art.
  • Having aggregated the identified user-submitted content to create a bundled event memory with the aggregation module 254, the bundled event memory transmission module 256 transmits the bundled event memory to one or more user devices of the social networking system 130 for display to the corresponding one or more users. In embodiments of the invention, the bundled event memory is transmitted and displayed to just the user, in other embodiments, the bundled event memory is transmitted and displayed to the user and one or more of the user's friends. Alternatively, the bundled event memory is transmitted to one or more of the user, the user's friends, users that posted any of the user-submitted content aggregated within the bundled event memory, or users that indicated an interest or affiliation with the event.
  • In addition to creating a bundled event memory based upon event information provided by a user, the event content identification module 252 is also able to automatically detect potential events based upon an analysis of posted user-submitted content. In particular, in some embodiments, the event content identification module 252 is configured to detect patterns of activity within the user-submitted content. For example, a pattern may include a plurality of posts by one or more users referencing those one or users within a period of time, or a plurality of posts from a plurality of users including a similar set of words that are identified as relating to a particular event. The event content identification module 252 may be configured to utilize a number of well-known machine learning techniques to identify such clusters of posts that may indicate an event or whether a post relates to an event.
  • In performing these and other tasks, the event content identification module 252 may utilize a wide variety of information from the user-submitted content ranging from timestamps from photographs, detected user and object identities from within user-submitted photographs/videos/audio recordings, geolocation information from the posts and objects submitted within posts, metadata from user-submitted content items (e.g. Exchangeable Image File Format (EXIF) metadata, Extensible Metadata Platform (XMP) metadata, International Press Telecommunications Council (IPTC) metadata, etc.), user “check-ins” at a particular location, keywords or codes within a post message that identify another object/topic/user (e.g., a hashtag metadata tag), objects/topics/users that are “tagged” by users within user-submitted content. However, the use of this information and user-submitted content is subject to the privacy policy of the social networking system 130 and also any individual privacy policy implemented by a user of the social networking system 130. For example, if a user of a particular social networking system 130 has set a privacy setting indicating that some or all of their user-submitted content is not to be used in one or more of these ways, the social networking system 130 should abide.
  • FIG. 3 is a flow diagram illustrating a high-level process for the bundling of event memories 300 according to an embodiment of the invention. The operations of this and other flow diagrams will be described with reference to the exemplary embodiments of the other diagrams. However, it should be understood that the operations of the flow diagrams can be performed by embodiments of the invention other than those discussed with reference to these other diagrams, and the embodiments of the invention discussed with reference these other diagrams can perform operations different than those discussed with reference to the flow diagrams.
  • At 302, the event memory bundling module 250, via the event content identification module 252, identifies a first plurality of user-submitted content items posted to the social networking system that are related to an event that occurred involving one or more users of the social networking system. Several possible ways to perform this identification are discussed later herein with respect to FIG. 4.
  • Next, at 304 the event memory bundling module 250, via the aggregation module 254, aggregates the first plurality of user-submitted content items into a bundled event memory. This bundled event memory is a set of one or more files capable of being presented to users on user devices. Then, at 306 the event memory bundling module 250, via the bundled even memory transmission module 256, transmits the bundled event memory to at least some of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.
  • FIG. 4 is a flow diagram illustrating the identification of a first plurality of user-submitted content items 302 of FIG. 3 according to an embodiment of the invention. A first approach (illustrated by circle ‘1a’) and second approach (illustrated by circle ‘1b’) begin with the event content identification module 252 receiving an event timeframe from the first device utilized by the first user 402. This timeframe may be a single date or single time that is an approximate time of the event. Alternatively, the timeframe may be a range of dates or times, or both an approximate starting time and an approximate ending time.
  • In certain embodiments following the first approach (circle ‘1a’), the event content identification module 252 receives a set of user identifiers for users of the social networking system 130 involved in the event 404. In an embodiment, the set of user identifiers is received from the first device of the first user. In this context, “involved in the event” means that the users either participated in the event, attended the event, observed the event, or discussed the event.
  • With the set of user identifiers, the event content identification module 252 generates a plurality of candidate content items based upon user-submitted content items posted by the first user and the set of users at or during the received timeframe 406. In an embodiment, event content identification module 252 gathers all content posted to the social networking system 130 by each of the users during the timeframe to generate the plurality of candidate content items according to their privacy preference. In some embodiments, this gathering is further refined by only gathering content posted by the set of users during the timeframe that is in some way determined to likely be associated with the event. As one example, if a piece of content posted by one of the set of users during the timeframe was geo-tagged as having been originated from a same location as the event, this content may be determined to be likely associated with the event, whereas a piece of content posted by another of the set of the users during the timeframe may be determined as not being associated with the event if it was geo-tagged with a location far away from the location of the event. In addition to the use of geo-tagged locations, the event content identification module 252 may utilize many other pieces of information from or about content submitted to the social networking system 130 when determining if the content is likely associated with the event, such as metadata of the content, particular words utilized within text of a post, or the identities of users or other entities identified or referenced within the content.
  • This plurality of candidate content items is displayed to the first user 408, who will indicate which of the plurality of candidate content items should or should not be included within the bundled event memory. Accordingly, the event content identification module 252 receives an indication from the user device of which of the candidate content items have been selected as the first plurality of user-submitted content items 410.
  • In other embodiments, the event content identification module 252 may be configured to follow circle ‘1b’ after receiving the event timeframe from the first device of the first user 402. At 412, the event content identification module 252 identifies a second plurality of user-submitted content items that were posted by the first user during the received timeframe 412. In some embodiments, the second plurality of user-submitted content items include all content items posted to the social networking system 130 by the first user during the received timeframe, but in other embodiments the second plurality of user-submitted content items includes a subset of all of that posted content, depending upon how likely a particular content item is related to the event, as determined by the event content identification module 252.
  • At 414, the event content identification module 252 identifies a plurality of users based upon the identified second plurality of user-submitted content items. In embodiments of the invention, the event content identification module 252 examines the second plurality of user-submitted content items to identify one or more of: users that were tagged within a picture/video/message, users that commented on a post, users that “liked” a post, users that republished a post, or users that were determined to be in a picture or video by identification software or hardware.
  • With the plurality of identified users, the event content identification module 252 identifies a third plurality of user-submitted content items posted by the plurality of users during the timeframe 416. Similar to the identification of the second plurality of user-submitted content items 412, in some embodiments, the third plurality of user-submitted content items include all content items posted to the social networking system 130 by the set of users during the timeframe, but in other embodiments the third plurality of user-submitted content items includes a subset of all of that posted content, depending upon how likely a particular content item is related to the event, as determined by the event content identification module 252.
  • At 418, the event content identification module 252 generates the plurality of candidate content items from the second and third pluralities of user-submitted content items 418. The generated plurality of candidate content items may include all of the user-submitted content items from the second and third pluralities of user-submitted content items, or it may contain a subset of each of the second and third pluralities of user-submitted content items, or it may contain only some content items from the second plurality or only some content items from the third plurality. At this point, the path indicated by circle ‘1b’ merges with the path of circle ‘1a’, so the event content identification module 252 similarly displays the candidate content items to the first user 408 and receives an indication from the user device of the first user of which of the candidate content items are the first plurality of user-submitted content items to be included in the bundled event memory 410.
  • Another embodiment for identifying the first plurality of user-submitted content items 302 is illustrated by circle ‘2’ and includes identifying a second plurality of user-submitted content items posted by the first user during some timeframe 420. In an embodiment, this timeframe is not an input to the event content identification module 252, but is an output after the event content identification module 252 has detected a set of one or more user-submitted content items posted by a first user within a particular time frame that appear to relate to a particular event. As described above, the event content identification module 252 may be configured to utilize many different methods to detect posts that are similarly referencing a common event. As one example, the event content identification module 252 may identify such a second plurality of user-submitted content items if a user posts a particular number of posts within a particular amount of time that include/reference to a particular number of common people at a particular location or set of locations. For example, if a user posts 15 different pictures over the span of three hours from Lambeau Field (a football stadium in Green Bay, Wis.) that all include pictures of his/her friends at a “Packers” v. “Bears” game, the event content identification module 252 may detect that these posts all pertain to a common event—a football game where the Packers team beat the Bears team. With this identified second plurality of user-submitted content items posted the first user, the process of circle ‘2’ merges with the process of circle ‘1b’ at 414, where a plurality of users are identified based upon the second plurality of user-submitted content items. Subsequently, the process continues with blocks 416, 418, 408, and 410.
  • Another embodiment depicted by circle ‘3’ includes receiving an event indicator from a first user device of a first user 422. In an embodiment, the event indicator is a word or string of text (such as a hashtag) that will occur in user-submitted content items that relate to a particular event. In other embodiments, the event indicator is a particular combination of users that, when found together in user-submitted content items, indicate that these content items pertain to a common event. In other embodiments, the event indicator may be a portion of text, a “check-in” location, or any other expression that can be used to test a content item and yield a “yes” or “no” based upon the properties of that content item.
  • With the received event indicator, the event content identification module 252 generates a plurality of candidate content items by identifying user-submitted content items posted by a plurality of users that satisfy the event indicator 424. In some embodiments, the plurality of users includes the first user and one or more of the “friends” of the first user. In other embodiments, the plurality of users includes one or more users of the social networking system 130 that are not “friends” with the first user. This process of circle ‘3’ then displays the candidate content items to the first user 408, and receives an indication from the user device of the first user of which of the candidate content items are the first plurality of user-submitted content items to be included in the bundled event memory 410.
  • FIG. 5 illustrates user interface elements utilized for creating and displaying bundled event memories according to an embodiment of the invention. In some embodiments, these user interface elements are displayed as a portion of a web page served by web server 210, and in some embodiments these interface elements are displayed as a portion of a standalone application such as mobile application 118.
  • The bundled event display module 500A is a user interface element that allows a user to view any of a set of previously created bundled memories or create a new bundled event memory. The first three elements of the bundled event display module 500A are bundled event selectors 502A-502C. Each bundled event selector (e.g. 502A) contains a thumbnail of a bundled event memory, a bundled event name (e.g. “30th Birthday Blast”), and a bundled event timeframe (e.g. “Oct. 23, 2012”). Upon a user selecting one of the bundled event selectors 502A-502C, the associated bundled event memory is displayed to the user. The bundled event display module 500A also includes a bundled event creation input button 504, which upon user selection, allows the user to create a new bundled event memory. In one embodiment, when a user selects the bundled event creation input button 504, the bundled event creation module 500B is displayed.
  • The bundled event creation module 500B includes a number of input fields allowing a user to utilize the event memory bundling module 250 to create a bundled event memory. The bundled event creation module 500B includes a bundled event name 506 input, which allows a user to provide a description of the event. The bundled event creation module 500B also includes a bundled event participants field 508, which allows a user to enter some users of the social networking system 130 that were involved in the event, and further includes a bundled event location 510 to allow the user to input a geographic location of the event. As depicted, the bundled event timeframe 512 allows the user to input a range of dates for the event, but in other embodiments the bundled event timeframe allows the user to enter one date, several dates (consecutive or non-consecutive), a date range, several date ranges (consecutive or non-consecutive), one time, a time range, or several time ranges. Finally, the bundled event creation module 500B includes a create bundled event input button 514 allowing the user to submit the request to create a bundled event memory. In an embodiment of the invention, upon a user filling out these inputs, the event memory bundling module 250 performs at least some of the steps of FIG. 3 and FIG. 4 to create the bundled event memory, which might require further input from the user via other user interface elements that are not displayed herein.
  • Upon creation of a bundled event memory, the bundled event post 520 (or similar) user interface may be posted to a page associated with the user (such as a timeline of a social network user page as illustrated in FIG. 6 or FIG. 7), pages associated with the entered bundled event participants 508, or pages associated with a plurality of users of the social networking system 130. The bundled event post 520 includes a bundled event memory 522, along with the bundled event name 506, the bundled event participants 508, and the bundled event location 510. In embodiments of the invention, the user can select and play the bundled event memory 522 within the bundled event post 520 user interface element; in other embodiments, the user may select the bundled event memory 522 video in the bundled event post 520 user interface yet play the bundled event memory 522 video in a separate interface or using a separate standalone media player application (such as VLC by VideoLAN, iTunes by Apple Inc., RealPlayer by Real Networks, or Windows Media Player by Microsoft). In some embodiments, the bundled event memory 522 is directly downloadable by the user.
  • FIG. 6 illustrates a first timeline social network user page 600 including user-submitted content items according to an embodiment of the invention, and FIG. 7 illustrates a second timeline social network user page 700 including user-submitted content items according to an embodiment of the invention. In embodiments of the invention where user-submitted content items are gathered from a plurality of users, the timelines of social network user pages (600, 700) of FIG. 6 and FIG. 7 are helpful for understanding aspects of the invention. Each of these timelines of social network user pages (600, 700) includes a plurality of user-submitted posts including user-submitted content items.
  • The first timeline of a social network user page 600, for a user named “Alan Gamer”, includes a user-submitted post 612 comprising a post message 614 of text, a post image 616, an indication of post “likes” 618 (i.e. an indication of other users of the social networking system 130 that approve of the user-submitted post 612), and at least one post comment 620 of text. The page also includes two other user-submitted posts (612, 628) that include post messages and post images (e.g. 629). Further, this page also includes a user-submitted “check-in” post 622, which similarly includes a post message 614 of text, an indication of post “likes”, and at least one post comment, but further includes a map and description of the geographic location where the user created the user-submitted “check-in” post 622 from. The page also includes a user-submitted post 624 that is essentially just a post message 625, and does not include a post image or “check-in” location.
  • Turning to FIG. 7, the second timeline of a social network user page 700, which is for a user named “Keenan Pridmore”, includes a user-submitted post 724 with a post message, a user-submitted post 724 with a post message and post image 725. The second timeline social network user page 700 also includes a user-submitted post 724 including a post message 726, a post video 726, an indication of post “likes” 730, and at least one post comment 730 of text.
  • FIG. 8 illustrates a bundled event video including user-submitted content from the first and second timeline social network user pages of FIG. 6 and FIG. 7 (or, “first user page” and “second user page”) according to an embodiment of the invention. The bundled event memory 522 (earlier depicted with respect to FIG. 5) on the left side of FIG. 8 is expanded on the right side of FIG. 8 to illustrate the concept of bundled event memories. This bundled event memory, which is a video, includes at least five user-submitted content items of three different content types (i.e. image, text, video) from two users. The bundled event memory 522 includes three different content items of type “image”: a post image 725 from the second user page 700, a post image 629 from the first user page 600, and a post image 616 from the first user page 600. Second, the bundled event memory 522 includes one user-submitted content item of type “text”: the post message 625 from the first user page 600. Third, the bundled event memory 522 includes one user-submitted content item of type “video”: the post video 726 of the second user page 700. In embodiments of the invention, the bundled even memory (e.g. 522) may include more or few content types, more or fewer user-submitted content items, and/or more or fewer users from which the content items are selected.
  • Additionally, the bundled event memory 522 may optionally include a bundled event memory soundtrack 802, which is an audio track that is played along with the visual aspect of the bundled event memory 522. As described earlier herein, the bundled event memory soundtrack 802 may be one or more audio recordings that are user-submitted content items. Alternatively, the bundled event memory soundtrack 802 may be comprised partially or completely of other audio that is not user-submitted content. In an embodiment of the invention, the bundled event memory soundtrack 802 is audio that is selected by the user generating the bundled event memory.
  • FIG. 9 illustrates, in block diagram form, an exemplary processing system 900 to provide social competition functionalities. Data processing system 900 includes one or more microprocessors 905 and connected system components (e.g., multiple connected chips). Alternatively, the data processing system 900 is a system on a chip.
  • The data processing system 900 includes memory 910, which is coupled to the microprocessor(s) 905. The memory 910 may be used for storing data, metadata, and programs for execution by the microprocessor(s) 905. The memory 910 may include one or more of volatile and non-volatile memories, such as Random Access Memory (“RAM”), Read Only Memory (“ROM”), a solid state disk (“SSD”), Flash, Phase Change Memory (“PCM”), or other types of data storage. The memory 910 may be internal or distributed memory.
  • The data processing system 900 also includes an audio input/output subsystem 915 which may include a microphone and/or a speaker for, for example, playing back music or other audio, receiving voice instructions to be executed by the microprocessor(s) 905, playing audio notifications, etc.
  • A display controller and display device 920 provides a visual user interface for the user, e.g., GUI windows illustrated in FIGS. 5-8.
  • The data processing system 900 also includes one or more input or output (“I/O”) devices and interfaces 925, which are provided to allow a user to provide input to, receive output from, and otherwise transfer data to and from the system. These I/O devices 925 may include a mouse, keypad or a keyboard, a touch panel or a multi-touch input panel, camera, optical scanner, network interface, modem, other known I/O devices or a combination of such I/O devices. The touch input panel may be a single touch input panel which is activated with a stylus or a finger or a multi-touch input panel which is activated by one finger or a stylus or multiple fingers, and the panel is capable of distinguishing between one or two or three or more touches and is capable of providing inputs derived from those touches to the processing system 900.
  • The I/O devices and interfaces 925 may also include a connector for a dock or a connector for a USB interface, FireWire, Thunderbolt, Ethernet, etc. to connect the system 900 with another device, external component, or a network. Exemplary I/O devices and interfaces 925 also include wireless transceivers, such as an IEEE 802.11 transceiver, an infrared transceiver, a Bluetooth transceiver, a wireless cellular telephony transceiver (e.g., 2G, 3G, 4G), or another wireless protocol to connect the data processing system 900 with another device, external component, or a network and receive stored instructions, data, tokens, etc.
  • It will be appreciated that one or more buses may be used to interconnect the various components shown in FIG. 9.
  • The data processing system 900 is an exemplary representation of a user device 110, but any of these features may also be utilized by devices implementing the social networking system 130. The data processing system 900 may be a personal computer, tablet-style device, a personal digital assistant (PDA), a cellular telephone with PDA-like functionality, a Wi-Fi based telephone, a handheld computer which includes a cellular telephone, a media player, an entertainment system, or devices which combine aspects or functions of these devices, such as a media player combined with a PDA and a cellular telephone in one device. In other embodiments, the data processing system 900 may be a network computer, server, or an embedded processing device within another device or consumer electronic product. As used herein, the terms computer, system, device, processing device, and “apparatus comprising a processing device” may be used interchangeably with the data processing system 900 and include the above-listed exemplary embodiments.
  • It will be appreciated that additional components, not shown, may also be part of the system 900, and, in certain embodiments, fewer components than that shown in FIG. 9 may also be used in a data processing system 900. It will be apparent from this description that aspects of the inventions may be embodied, at least in part, in software. That is, the computer-implemented methods may be carried out in a computer system or other data processing system in response to its processor or processing system executing sequences of instructions contained in a memory, such as memory 910 or other non-transitory machine-readable storage medium. The software may further be transmitted or received over a network (not shown) via a network interface device 925. In various embodiments, hardwired circuitry may be used in combination with the software instructions to implement the present embodiments. Thus, the techniques are not limited to any specific combination of hardware circuitry and software, or to any particular source for the instructions executed by the data processing system 900.
  • An article of manufacture may be used to store program code providing at least some of the functionality of the embodiments described above. Additionally, an article of manufacture may be used to store program code created using at least some of the functionality of the embodiments described above. An article of manufacture that stores program code may be embodied as, but is not limited to, one or more memories (e.g., one or more flash memories, random access memories—static, dynamic, or other), optical disks, CD-ROMs, DVD-ROMs, EPROMs, EEPROMs, magnetic or optical cards or other type of non-transitory machine-readable media suitable for storing electronic instructions. Additionally, embodiments of the invention may be implemented in, but not limited to, hardware or firmware utilizing a Field-Programmable Gate Array (FPGA), Application-Specific Integrated Circuit (ASIC), a processor, a computer, or a computer system including a network. Modules and components of hardware or software implementations can be divided or combined without significantly altering embodiments of the invention.
  • In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. Various embodiments and aspects of the invention(s) are described with reference to details discussed herein, and the accompanying drawings illustrate the various embodiments. The description above and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of various embodiments of the present invention. However, in certain instances, well-known or conventional details are not described in order to provide a concise discussion of embodiments of the present inventions.
  • It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of the invention as set forth in the following claims. For example, the methods described herein may be performed with fewer or more features/blocks or the features/blocks may be performed in differing orders. Additionally, the methods described herein may be repeated or performed in parallel with one another or in parallel with different instances of the same or similar methods.

Claims (24)

What is claimed is:
1. A method comprising:
identifying a first plurality of user-submitted content items available to a social networking system that are related to an event involving at least one user of a plurality of users of the social networking system;
aggregating the first plurality of user-submitted content items into a bundled event memory, wherein the bundled event memory is a set of one or more files capable of being presented to users on user devices; and
transmitting the bundled event memory to at least one of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.
2. The method of claim 1, wherein said identifying of the first plurality of user-submitted content items comprises:
receiving a first time value and a second time value from a first user device utilized by a first user, wherein the first time value indicates an approximate beginning time of the event, and wherein the second time value indicates an approximate ending time of the event.
3. The method of claim 2, wherein said identifying of the first plurality of user-submitted content items further comprises:
receiving, from the first user device, a plurality of user identifiers for the plurality of users of the social network system; and
generating a plurality of candidate content items by utilizing the plurality of user identifiers to identify a second plurality of user-submitted content items posted to the social networking system by the plurality of users within a time range, wherein the time range indicates a period of time between the first time value and the second time value.
4. The method of claim 3, wherein said identifying of the first plurality of user-submitted content items further comprises:
selecting a set of two or more of the plurality of candidate content items as the plurality of user-submitted content items based upon a message received from the first user device indicating which of the plurality of candidate content items are to be included in the plurality of user-submitted content items.
5. The method of claim 1, wherein said identifying of the first plurality of user-submitted content items comprises:
identifying a second plurality of user-submitted content items posted to the social networking system during a first time frame by a first user of the plurality of users;
identifying the plurality of users based upon the first plurality of user-submitted content items; and
identifying a third plurality of user-submitted content items posted to the social networking system during the first time frame by the plurality of users.
6. The method of claim 5, wherein said identifying of the first plurality of user-submitted content items further comprises:
identifying as the first plurality of user-submitted content items some of the second plurality of user-submitted content items and some of the third plurality of user-submitted content items.
7. The method of claim 1, wherein the first plurality of user-submitted content items includes at least two content types of the following set of content types: a photograph, a video, an audio recording, a comment about a post, and a post.
8. The method of claim 1, wherein the bundled event memory is a video montage including the first plurality of user-submitted content items.
9. A system comprising:
a communications interface to transmit and receive messages to and from a plurality of user devices of a plurality of users of a social networking system;
an event content module configured to identify a first plurality of user-submitted content items available to the social networking system that are related to an event involving at least one user of a plurality of users of the social networking system;
an aggregation module configured to aggregate the first plurality of user-submitted content items into a bundled event memory, wherein the bundled event memory is a set of one or more files capable of being presented to users on user devices; and
a bundled event memory transmission module coupled to the communications interface and configured to transmit the bundled event memory to at least some of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.
10. The system of claim 9, wherein the event content module is to identify the first plurality of user-submitted content items by being configured to:
receive a first time value and a second time value from a first user device utilized by a first user, wherein the first time value indicates an approximate beginning time of the event, and wherein the second time value indicates an approximate ending time of the event.
11. The system of claim 10, wherein the event content module is to identify the first plurality of user-submitted content items by being further configured to:
receive, from the first user device, a plurality of user identifiers for the plurality of users of the social network system; and
generate a plurality of candidate content items by utilizing the plurality of user identifiers to identify a second plurality of user-submitted content items posted to the social networking system by the plurality of users within a time range, wherein the time range indicates a period of time between the first time value and the second time value.
12. The system of claim 11, wherein the event content module is to identify the first plurality of user-submitted content items by being further configured to:
select a set of two or more of the plurality of candidate content items as the plurality of user-submitted content items based upon a message received from the first user device indicating which of the plurality of candidate content items are to be included in the plurality of user-submitted content items.
13. The system of claim 9, wherein the event content module is to identify the first plurality of user-submitted content items by being configured to:
identify a second plurality of user-submitted content items posted to the social networking system during a first time frame by a first user of the plurality of users;
identify the plurality of users based upon the first plurality of user-submitted content items; and
identify a third plurality of user-submitted content items posted to the social networking system during the first time frame by the plurality of users.
14. The system of claim 9, wherein the event content module is to identify the first plurality of user-submitted content items by being further configured to:
identify as the first plurality of user-submitted content items some of the second plurality of user-submitted content items and some of the third plurality of user-submitted content items.
15. The system of claim 9, wherein the first plurality of user-submitted content items includes at least two content types of the following set of content types: a photograph, a video, an audio recording, a comment about a post, and a post.
16. The system of claim 9, wherein the bundled event memory is a video montage including the first plurality of user-submitted content items.
17. A non-transitory computer-readable storage medium that provides instructions that, when executed by a processing device, will cause said processing device to perform operations comprising:
identifying a first plurality of user-submitted content items posted to a social networking system that are related to an event involving at least one user of a plurality of users of the social networking system;
aggregating the first plurality of user-submitted content items into a bundled event memory, wherein the bundled event memory is a set of one or more files capable of being presented to users on user devices; and
transmitting the bundled event memory to at least some of a plurality of user devices to be presented to at least some of the plurality of users, wherein the plurality of users utilize the plurality of user devices to communicate with the social networking system.
18. The non-transitory computer-readable storage medium of claim 17, wherein said identifying of the first plurality of user-submitted content items comprises:
receiving a first time value and a second time value from a first user device utilized by a first user, wherein the first time value indicates an approximate beginning time of the event, and wherein the second time value indicates an approximate ending time of the event.
19. The non-transitory computer-readable storage medium of claim 18, wherein said identifying of the first plurality of user-submitted content items further comprises:
receiving, from the first user device, a plurality of user identifiers for the plurality of users of the social network system; and
generating a plurality of candidate content items by utilizing the plurality of user identifiers to identify a second plurality of user-submitted content items posted to the social networking system by the plurality of users within a time range, wherein the time range indicates a period of time between the first time value and the second time value.
20. The non-transitory computer-readable storage medium of claim 19, wherein said identifying of the first plurality of user-submitted content items further comprises:
selecting a set of two or more of the plurality of candidate content items as the plurality of user-submitted content items based upon a message received from the first user device indicating which of the plurality of candidate content items are to be included in the plurality of user-submitted content items.
21. The non-transitory computer-readable storage medium of claim 17, wherein said identifying of the first plurality of user-submitted content items comprises:
identifying a second plurality of user-submitted content items posted to the social networking system during a first time frame by a first user of the plurality of users;
identifying the plurality of users based upon the first plurality of user-submitted content items; and
identifying a third plurality of user-submitted content items posted to the social networking system during the first time frame by the plurality of users.
22. The non-transitory computer-readable storage medium of claim 21, wherein said identifying of the first plurality of user-submitted content items further comprises:
identifying as the first plurality of user-submitted content items some of the second plurality of user-submitted content items and some of the third plurality of user-submitted content items.
23. The non-transitory computer-readable storage medium of claim 17, wherein the first plurality of user-submitted content items includes at least two content types of the following set of content types: a photograph, a video, an audio recording, a comment about a post, and a post.
24. The non-transitory computer-readable storage medium of claim 17, wherein the bundled event memory is a video montage including the first plurality of user-submitted content items.
US13/804,423 2013-03-14 2013-03-14 Bundled event memories Active 2033-12-06 US9450907B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/804,423 US9450907B2 (en) 2013-03-14 2013-03-14 Bundled event memories
US15/236,320 US9779157B2 (en) 2013-03-14 2016-08-12 Bundled event memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/804,423 US9450907B2 (en) 2013-03-14 2013-03-14 Bundled event memories

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/236,320 Continuation US9779157B2 (en) 2013-03-14 2016-08-12 Bundled event memories

Publications (2)

Publication Number Publication Date
US20140280537A1 true US20140280537A1 (en) 2014-09-18
US9450907B2 US9450907B2 (en) 2016-09-20

Family

ID=51533423

Family Applications (2)

Application Number Title Priority Date Filing Date
US13/804,423 Active 2033-12-06 US9450907B2 (en) 2013-03-14 2013-03-14 Bundled event memories
US15/236,320 Active US9779157B2 (en) 2013-03-14 2016-08-12 Bundled event memories

Family Applications After (1)

Application Number Title Priority Date Filing Date
US15/236,320 Active US9779157B2 (en) 2013-03-14 2016-08-12 Bundled event memories

Country Status (1)

Country Link
US (2) US9450907B2 (en)

Cited By (149)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083770B1 (en) 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
US9094137B1 (en) 2014-06-13 2015-07-28 Snapchat, Inc. Priority based placement of messages in a geo-location based event gallery
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US9237202B1 (en) 2014-03-07 2016-01-12 Snapchat, Inc. Content delivery network for ephemeral objects
US9276886B1 (en) 2014-05-09 2016-03-01 Snapchat, Inc. Apparatus and method for dynamically configuring application component tiles
US20160171063A1 (en) * 2014-12-15 2016-06-16 Microsoft Technology Licensing, Llc Modeling actions, consequences and goal achievement from social media and other digital traces
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
US9503414B1 (en) * 2014-03-10 2016-11-22 Bume Box, Inc. Apparatus and method for coordinating live computer network events
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
EP3142063A1 (en) * 2015-09-14 2017-03-15 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US20170180299A1 (en) * 2015-12-16 2017-06-22 Facebook, Inc. System and Method for Expanded Messaging Indicator
US9705831B2 (en) 2013-05-30 2017-07-11 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9721394B2 (en) 2012-08-22 2017-08-01 Snaps Media, Inc. Augmented reality virtual content platform apparatuses, methods and systems
US9742713B2 (en) 2013-05-30 2017-08-22 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9792457B2 (en) 2015-09-14 2017-10-17 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US9843720B1 (en) 2014-11-12 2017-12-12 Snap Inc. User interface for accessing media at a geographic location
US9854219B2 (en) 2014-12-19 2017-12-26 Snap Inc. Gallery of videos set to an audio time line
US9866999B1 (en) 2014-01-12 2018-01-09 Investment Asset Holdings Llc Location-based messaging
US9881094B2 (en) 2015-05-05 2018-01-30 Snap Inc. Systems and methods for automated local story generation and curation
US9882907B1 (en) 2012-11-08 2018-01-30 Snap Inc. Apparatus and method for single action control of social network profile access
US20180032212A1 (en) * 2016-08-01 2018-02-01 Facebook, Inc. Systems and methods to manage media content items
US9906485B1 (en) * 2014-03-10 2018-02-27 Bume Box, Inc. Apparatus and method for coordinating live computer network events
US9936030B2 (en) 2014-01-03 2018-04-03 Investel Capital Corporation User content sharing system and method with location-based external content integration
US10055717B1 (en) 2014-08-22 2018-08-21 Snap Inc. Message processor with application prompts
US10084735B1 (en) 2014-02-21 2018-09-25 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US10102680B2 (en) 2015-10-30 2018-10-16 Snap Inc. Image based tracking in augmented reality systems
US10123166B2 (en) 2015-01-26 2018-11-06 Snap Inc. Content request by location
US10133705B1 (en) * 2015-01-19 2018-11-20 Snap Inc. Multichannel system
US10135949B1 (en) 2015-05-05 2018-11-20 Snap Inc. Systems and methods for story and sub-story navigation
US10157449B1 (en) 2015-01-09 2018-12-18 Snap Inc. Geo-location-based image filters
US20180365570A1 (en) * 2017-06-15 2018-12-20 Microsoft Technology Licensing, Llc Memorable event detection, recording, and exploitation
US10165402B1 (en) 2016-06-28 2018-12-25 Snap Inc. System to track engagement of media items
US10203855B2 (en) 2016-12-09 2019-02-12 Snap Inc. Customized user-controlled media overlays
US10219111B1 (en) 2018-04-18 2019-02-26 Snap Inc. Visitation tracking system
US10223397B1 (en) 2015-03-13 2019-03-05 Snap Inc. Social graph based co-location of network users
US10284508B1 (en) 2014-10-02 2019-05-07 Snap Inc. Ephemeral gallery of ephemeral messages with opt-in permanence
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
US10319149B1 (en) 2017-02-17 2019-06-11 Snap Inc. Augmented reality anamorphosis system
US10327096B1 (en) 2018-03-06 2019-06-18 Snap Inc. Geo-fence selection system
US10334307B2 (en) 2011-07-12 2019-06-25 Snap Inc. Methods and systems of providing visual content editing functions
US10348662B2 (en) 2016-07-19 2019-07-09 Snap Inc. Generating customized electronic messaging graphics
US10354425B2 (en) 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US10387514B1 (en) 2016-06-30 2019-08-20 Snap Inc. Automated content curation and communication
US10387730B1 (en) 2017-04-20 2019-08-20 Snap Inc. Augmented reality typography personalization system
US10423983B2 (en) 2014-09-16 2019-09-24 Snap Inc. Determining targeting information based on a predictive targeting model
US10430838B1 (en) 2016-06-28 2019-10-01 Snap Inc. Methods and systems for generation, curation, and presentation of media collections with automated advertising
US10439972B1 (en) 2013-05-30 2019-10-08 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US10474321B2 (en) 2015-11-30 2019-11-12 Snap Inc. Network resource location linking and visual content sharing
US10499191B1 (en) 2017-10-09 2019-12-03 Snap Inc. Context sensitive presentation of content
US10523625B1 (en) 2017-03-09 2019-12-31 Snap Inc. Restricted group content collection
US10582277B2 (en) 2017-03-27 2020-03-03 Snap Inc. Generating a stitched data stream
US10581782B2 (en) 2017-03-27 2020-03-03 Snap Inc. Generating a stitched data stream
US10616239B2 (en) 2015-03-18 2020-04-07 Snap Inc. Geo-fence authorization provisioning
US10614828B1 (en) 2017-02-20 2020-04-07 Snap Inc. Augmented reality speech balloon system
US10623666B2 (en) 2016-11-07 2020-04-14 Snap Inc. Selective identification and order of image modifiers
US10638256B1 (en) 2016-06-20 2020-04-28 Pipbin, Inc. System for distribution and display of mobile targeted augmented reality content
US10657708B1 (en) 2015-11-30 2020-05-19 Snap Inc. Image and point cloud based tracking and in augmented reality systems
US10679389B2 (en) 2016-02-26 2020-06-09 Snap Inc. Methods and systems for generation, curation, and presentation of media collections
US10679393B2 (en) 2018-07-24 2020-06-09 Snap Inc. Conditional modification of augmented reality object
US10678818B2 (en) 2018-01-03 2020-06-09 Snap Inc. Tag distribution visualization system
US10740974B1 (en) 2017-09-15 2020-08-11 Snap Inc. Augmented reality system
US10768771B2 (en) * 2015-06-05 2020-09-08 Apple Inc. Social interaction in a media streaming service
US10805696B1 (en) 2016-06-20 2020-10-13 Pipbin, Inc. System for recording and targeting tagged content of user interest
US10817898B2 (en) 2015-08-13 2020-10-27 Placed, Llc Determining exposures to content presented by physical objects
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US10834525B2 (en) 2016-02-26 2020-11-10 Snap Inc. Generation, curation, and presentation of media collections
US10839219B1 (en) 2016-06-20 2020-11-17 Pipbin, Inc. System for curation, distribution and display of location-dependent augmented reality content
US10862951B1 (en) 2007-01-05 2020-12-08 Snap Inc. Real-time display of multiple images
US10885136B1 (en) 2018-02-28 2021-01-05 Snap Inc. Audience filtering system
US10915911B2 (en) 2017-02-03 2021-02-09 Snap Inc. System to determine a price-schedule to distribute media content
US10933311B2 (en) 2018-03-14 2021-03-02 Snap Inc. Generating collectible items based on location information
US10952013B1 (en) 2017-04-27 2021-03-16 Snap Inc. Selective location-based identity communication
US10948717B1 (en) 2015-03-23 2021-03-16 Snap Inc. Reducing boot time and power consumption in wearable display systems
US10963529B1 (en) 2017-04-27 2021-03-30 Snap Inc. Location-based search mechanism in a graphical user interface
US10979752B1 (en) 2018-02-28 2021-04-13 Snap Inc. Generating media content items based on location information
US10993069B2 (en) 2015-07-16 2021-04-27 Snap Inc. Dynamically adaptive media content delivery
US10992615B2 (en) 2017-12-01 2021-04-27 Trusted Voices, Inc. Dynamic open graph module for posting content one or more platforms
US10997760B2 (en) 2018-08-31 2021-05-04 Snap Inc. Augmented reality anthropomorphization system
US11017173B1 (en) 2017-12-22 2021-05-25 Snap Inc. Named entity recognition visual context and caption data
US11023514B2 (en) 2016-02-26 2021-06-01 Snap Inc. Methods and systems for generation, curation, and presentation of media collections
US11030787B2 (en) 2017-10-30 2021-06-08 Snap Inc. Mobile-based cartographic control of display content
US11037372B2 (en) 2017-03-06 2021-06-15 Snap Inc. Virtual vision system
US11044393B1 (en) 2016-06-20 2021-06-22 Pipbin, Inc. System for curation and display of location-dependent augmented reality content in an augmented estate system
US11128715B1 (en) 2019-12-30 2021-09-21 Snap Inc. Physical friend proximity in chat
US11163941B1 (en) 2018-03-30 2021-11-02 Snap Inc. Annotating a collection of media content items
US11170393B1 (en) 2017-04-11 2021-11-09 Snap Inc. System to calculate an engagement score of location based media content
US11182383B1 (en) 2012-02-24 2021-11-23 Placed, Llc System and method for data collection to validate location data
US11199957B1 (en) 2018-11-30 2021-12-14 Snap Inc. Generating customized avatars based on location information
US11201981B1 (en) 2016-06-20 2021-12-14 Pipbin, Inc. System for notification of user accessibility of curated location-dependent content in an augmented estate
US11206615B2 (en) 2019-05-30 2021-12-21 Snap Inc. Wearable device location systems
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US11218838B2 (en) 2019-10-31 2022-01-04 Snap Inc. Focused map-based context information surfacing
US11228551B1 (en) 2020-02-12 2022-01-18 Snap Inc. Multiple gateway message exchange
US11232040B1 (en) 2017-04-28 2022-01-25 Snap Inc. Precaching unlockable data elements
US11249614B2 (en) 2019-03-28 2022-02-15 Snap Inc. Generating personalized map interface with enhanced icons
US11250075B1 (en) 2017-02-17 2022-02-15 Snap Inc. Searching social media content
US11265273B1 (en) 2017-12-01 2022-03-01 Snap, Inc. Dynamic media overlay with smart widget
US11290851B2 (en) 2020-06-15 2022-03-29 Snap Inc. Location sharing using offline and online objects
US11294936B1 (en) 2019-01-30 2022-04-05 Snap Inc. Adaptive spatial density based clustering
US11301117B2 (en) 2019-03-08 2022-04-12 Snap Inc. Contextual information in chat
US11314776B2 (en) 2020-06-15 2022-04-26 Snap Inc. Location sharing using friend list versions
US11343323B2 (en) 2019-12-31 2022-05-24 Snap Inc. Augmented reality objects registry
US11361493B2 (en) 2019-04-01 2022-06-14 Snap Inc. Semantic texture mapping system
US11388226B1 (en) 2015-01-13 2022-07-12 Snap Inc. Guided personal identity based actions
US11429618B2 (en) 2019-12-30 2022-08-30 Snap Inc. Surfacing augmented reality objects
US11430091B2 (en) 2020-03-27 2022-08-30 Snap Inc. Location mapping for large scale augmented-reality
US11455082B2 (en) 2018-09-28 2022-09-27 Snap Inc. Collaborative achievement interface
US11475254B1 (en) 2017-09-08 2022-10-18 Snap Inc. Multimodal entity identification
US11483267B2 (en) 2020-06-15 2022-10-25 Snap Inc. Location sharing using different rate-limited links
US11500525B2 (en) 2019-02-25 2022-11-15 Snap Inc. Custom media overlay system
US11503432B2 (en) 2020-06-15 2022-11-15 Snap Inc. Scalable real-time location sharing framework
US11507614B1 (en) 2018-02-13 2022-11-22 Snap Inc. Icon based tagging
US11516167B2 (en) 2020-03-05 2022-11-29 Snap Inc. Storing data based on device location
US11558709B2 (en) 2018-11-30 2023-01-17 Snap Inc. Position service to determine relative position to map features
US11574431B2 (en) 2019-02-26 2023-02-07 Snap Inc. Avatar based on weather
US11588778B2 (en) * 2012-03-30 2023-02-21 Fox Sports Productions, Llc System and method for enhanced second screen experience
US11601888B2 (en) 2021-03-29 2023-03-07 Snap Inc. Determining location using multi-source geolocation data
US11601783B2 (en) 2019-06-07 2023-03-07 Snap Inc. Detection of a physical collision between two client devices in a location sharing system
US11606755B2 (en) 2019-05-30 2023-03-14 Snap Inc. Wearable device location systems architecture
US11616745B2 (en) 2017-01-09 2023-03-28 Snap Inc. Contextual generation and selection of customized media content
US11619501B2 (en) 2020-03-11 2023-04-04 Snap Inc. Avatar based on trip
US11625443B2 (en) 2014-06-05 2023-04-11 Snap Inc. Web document enhancement
US11631276B2 (en) 2016-03-31 2023-04-18 Snap Inc. Automated avatar generation
US11645324B2 (en) 2021-03-31 2023-05-09 Snap Inc. Location-based timeline media content system
US11676378B2 (en) 2020-06-29 2023-06-13 Snap Inc. Providing travel-based augmented reality content with a captured image
US11675831B2 (en) 2017-05-31 2023-06-13 Snap Inc. Geolocation based playlists
US11714535B2 (en) 2019-07-11 2023-08-01 Snap Inc. Edge gesture interface with smart interactions
US11729343B2 (en) 2019-12-30 2023-08-15 Snap Inc. Including video feed in message thread
US11734712B2 (en) 2012-02-24 2023-08-22 Foursquare Labs, Inc. Attributing in-store visits to media consumption based on data collected from user devices
US11751015B2 (en) 2019-01-16 2023-09-05 Snap Inc. Location-based context information sharing in a messaging system
US11776256B2 (en) 2020-03-27 2023-10-03 Snap Inc. Shared augmented reality system
US11785161B1 (en) 2016-06-20 2023-10-10 Pipbin, Inc. System for user accessibility of tagged curated augmented reality content
US11799811B2 (en) 2018-10-31 2023-10-24 Snap Inc. Messaging and gaming applications communication platform
US11809624B2 (en) 2019-02-13 2023-11-07 Snap Inc. Sleep detection in a location sharing system
US11816853B2 (en) 2016-08-30 2023-11-14 Snap Inc. Systems and methods for simultaneous localization and mapping
US11821742B2 (en) 2019-09-26 2023-11-21 Snap Inc. Travel based notifications
US11829834B2 (en) 2021-10-29 2023-11-28 Snap Inc. Extended QR code
US11842411B2 (en) 2017-04-27 2023-12-12 Snap Inc. Location-based virtual avatars
US11843456B2 (en) 2016-10-24 2023-12-12 Snap Inc. Generating and displaying customized avatars in media overlays
US11852554B1 (en) 2019-03-21 2023-12-26 Snap Inc. Barometer calibration in a location sharing system
US11860888B2 (en) 2018-05-22 2024-01-02 Snap Inc. Event detection system
US11870743B1 (en) 2017-01-23 2024-01-09 Snap Inc. Customized digital avatar accessories
US11868414B1 (en) 2019-03-14 2024-01-09 Snap Inc. Graph-based prediction for contact suggestion in a location sharing system
US11876941B1 (en) 2016-06-20 2024-01-16 Pipbin, Inc. Clickable augmented reality content manager, system, and network
US11877211B2 (en) 2019-01-14 2024-01-16 Snap Inc. Destination sharing in location sharing system
US11893208B2 (en) 2019-12-31 2024-02-06 Snap Inc. Combined map icon with action indicator
US11900418B2 (en) 2016-04-04 2024-02-13 Snap Inc. Mutable geo-fencing system
US11925869B2 (en) 2012-05-08 2024-03-12 Snap Inc. System and method for generating and displaying avatars

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11023524B2 (en) * 2019-03-27 2021-06-01 Slack Technologies, Inc. Expandable data object management and indexing architecture for intersystem data exchange compatibility

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050165726A1 (en) * 2003-10-30 2005-07-28 Pepper Computer, Inc. Packaged, organized collections of digital information, and mechanisms and methods for navigating and sharing the collection
US20100293105A1 (en) * 2009-05-15 2010-11-18 Microsoft Corporation Social networking updates for image display devices
US7982738B2 (en) * 2004-12-01 2011-07-19 Microsoft Corporation Interactive montages of sprites for indexing and summarizing video
US20120005224A1 (en) * 2010-07-01 2012-01-05 Spencer Greg Ahrens Facilitating Interaction Among Users of a Social Network
US20120151383A1 (en) * 2010-12-13 2012-06-14 Microsoft Corporation Presenting content items shared within social networks
US20120323909A1 (en) * 2011-06-20 2012-12-20 Google Inc. Query-based user groups in social networks
US20130006882A1 (en) * 2011-06-20 2013-01-03 Giulio Galliani Promotion via social currency
US20130124504A1 (en) * 2011-11-14 2013-05-16 Google Inc. Sharing Digital Content to Discovered Content Streams in Social Networking Services
US20130132194A1 (en) * 2011-11-17 2013-05-23 Giridhar Rajaram Targeting advertisements to users of a social networking system based on events
US20130151728A1 (en) * 2011-12-07 2013-06-13 Comcast Cable Communications, Llc Providing synchronous content and supplemental experiences
US20130173531A1 (en) * 2010-05-24 2013-07-04 Intersect Ptp, Inc. Systems and methods for collaborative storytelling in a virtual space
US20130179200A1 (en) * 2011-11-14 2013-07-11 Tenth Caller, Inc. Method and system for distributing excess entertainment inventory
US20130226926A1 (en) * 2012-02-29 2013-08-29 Nokia Corporation Method and apparatus for acquiring event information on demand
US20130332479A1 (en) * 2012-06-07 2013-12-12 Google Inc. Inline Discussions in Search Results Around Real-Time Clusterings
US20140006400A1 (en) * 2012-06-29 2014-01-02 International Business Machines Corporation Automated online social network inter-entity relationship management
US20140012926A1 (en) * 2012-07-09 2014-01-09 Srinivas P. Narayanan Recommending Additional Users for an Event Using a Social Networking System
US20140214964A1 (en) * 2013-01-28 2014-07-31 Facebook, Inc. Conversion Tracking of Organic Content in a Social Networking System
US20140372904A1 (en) * 2012-02-14 2014-12-18 Google Inc. System and method for communicating transportation events

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8468244B2 (en) * 2007-01-05 2013-06-18 Digital Doors, Inc. Digital information infrastructure and method for security designated data and with granular data stores
US8832753B2 (en) * 2008-01-16 2014-09-09 Apple Inc. Filtering and tailoring multimedia content based on observed user behavior
US8539086B2 (en) * 2011-03-23 2013-09-17 Color Labs, Inc. User device group formation
WO2015048338A1 (en) * 2013-09-26 2015-04-02 Publicover Mark W Providing targeted content based on a user's moral values
US9298786B1 (en) * 2014-04-29 2016-03-29 Google Inc. Deferred content presentation

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050165726A1 (en) * 2003-10-30 2005-07-28 Pepper Computer, Inc. Packaged, organized collections of digital information, and mechanisms and methods for navigating and sharing the collection
US7982738B2 (en) * 2004-12-01 2011-07-19 Microsoft Corporation Interactive montages of sprites for indexing and summarizing video
US20100293105A1 (en) * 2009-05-15 2010-11-18 Microsoft Corporation Social networking updates for image display devices
US20130173531A1 (en) * 2010-05-24 2013-07-04 Intersect Ptp, Inc. Systems and methods for collaborative storytelling in a virtual space
US20120005224A1 (en) * 2010-07-01 2012-01-05 Spencer Greg Ahrens Facilitating Interaction Among Users of a Social Network
US20120151383A1 (en) * 2010-12-13 2012-06-14 Microsoft Corporation Presenting content items shared within social networks
US20120323909A1 (en) * 2011-06-20 2012-12-20 Google Inc. Query-based user groups in social networks
US20130006882A1 (en) * 2011-06-20 2013-01-03 Giulio Galliani Promotion via social currency
US20130124504A1 (en) * 2011-11-14 2013-05-16 Google Inc. Sharing Digital Content to Discovered Content Streams in Social Networking Services
US20130179200A1 (en) * 2011-11-14 2013-07-11 Tenth Caller, Inc. Method and system for distributing excess entertainment inventory
US20130132194A1 (en) * 2011-11-17 2013-05-23 Giridhar Rajaram Targeting advertisements to users of a social networking system based on events
US20130151728A1 (en) * 2011-12-07 2013-06-13 Comcast Cable Communications, Llc Providing synchronous content and supplemental experiences
US20140372904A1 (en) * 2012-02-14 2014-12-18 Google Inc. System and method for communicating transportation events
US20130226926A1 (en) * 2012-02-29 2013-08-29 Nokia Corporation Method and apparatus for acquiring event information on demand
US20130332479A1 (en) * 2012-06-07 2013-12-12 Google Inc. Inline Discussions in Search Results Around Real-Time Clusterings
US20140006400A1 (en) * 2012-06-29 2014-01-02 International Business Machines Corporation Automated online social network inter-entity relationship management
US20140012926A1 (en) * 2012-07-09 2014-01-09 Srinivas P. Narayanan Recommending Additional Users for an Event Using a Social Networking System
US20140214964A1 (en) * 2013-01-28 2014-07-31 Facebook, Inc. Conversion Tracking of Organic Content in a Social Networking System

Cited By (345)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10862951B1 (en) 2007-01-05 2020-12-08 Snap Inc. Real-time display of multiple images
US11588770B2 (en) 2007-01-05 2023-02-21 Snap Inc. Real-time display of multiple images
US10334307B2 (en) 2011-07-12 2019-06-25 Snap Inc. Methods and systems of providing visual content editing functions
US10999623B2 (en) 2011-07-12 2021-05-04 Snap Inc. Providing visual content editing functions
US11750875B2 (en) 2011-07-12 2023-09-05 Snap Inc. Providing visual content editing functions
US11451856B2 (en) 2011-07-12 2022-09-20 Snap Inc. Providing visual content editing functions
US11734712B2 (en) 2012-02-24 2023-08-22 Foursquare Labs, Inc. Attributing in-store visits to media consumption based on data collected from user devices
US11182383B1 (en) 2012-02-24 2021-11-23 Placed, Llc System and method for data collection to validate location data
US11588778B2 (en) * 2012-03-30 2023-02-21 Fox Sports Productions, Llc System and method for enhanced second screen experience
US11925869B2 (en) 2012-05-08 2024-03-12 Snap Inc. System and method for generating and displaying avatars
US10169924B2 (en) 2012-08-22 2019-01-01 Snaps Media Inc. Augmented reality virtual content platform apparatuses, methods and systems
US9721394B2 (en) 2012-08-22 2017-08-01 Snaps Media, Inc. Augmented reality virtual content platform apparatuses, methods and systems
US9792733B2 (en) 2012-08-22 2017-10-17 Snaps Media, Inc. Augmented reality virtual content platform apparatuses, methods and systems
US9882907B1 (en) 2012-11-08 2018-01-30 Snap Inc. Apparatus and method for single action control of social network profile access
US10887308B1 (en) 2012-11-08 2021-01-05 Snap Inc. Interactive user-interface to adjust access privileges
US11252158B2 (en) 2012-11-08 2022-02-15 Snap Inc. Interactive user-interface to adjust access privileges
US11115361B2 (en) 2013-05-30 2021-09-07 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US10587552B1 (en) 2013-05-30 2020-03-10 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US9705831B2 (en) 2013-05-30 2017-07-11 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US11509618B2 (en) 2013-05-30 2022-11-22 Snap Inc. Maintaining a message thread with opt-in permanence for entries
US9742713B2 (en) 2013-05-30 2017-08-22 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US10439972B1 (en) 2013-05-30 2019-10-08 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US11134046B2 (en) 2013-05-30 2021-09-28 Snap Inc. Apparatus and method for maintaining a message thread with opt-in permanence for entries
US11546388B2 (en) 2013-11-26 2023-01-03 Snap Inc. Method and system for integrating real time communication features in applications
US11102253B2 (en) 2013-11-26 2021-08-24 Snap Inc. Method and system for integrating real time communication features in applications
US9794303B1 (en) 2013-11-26 2017-10-17 Snap Inc. Method and system for integrating real time communication features in applications
US10069876B1 (en) 2013-11-26 2018-09-04 Snap Inc. Method and system for integrating real time communication features in applications
US10681092B1 (en) 2013-11-26 2020-06-09 Snap Inc. Method and system for integrating real time communication features in applications
US9083770B1 (en) 2013-11-26 2015-07-14 Snapchat, Inc. Method and system for integrating real time communication features in applications
US9936030B2 (en) 2014-01-03 2018-04-03 Investel Capital Corporation User content sharing system and method with location-based external content integration
US10080102B1 (en) 2014-01-12 2018-09-18 Investment Asset Holdings Llc Location-based messaging
US10349209B1 (en) 2014-01-12 2019-07-09 Investment Asset Holdings Llc Location-based messaging
US9866999B1 (en) 2014-01-12 2018-01-09 Investment Asset Holdings Llc Location-based messaging
US10084735B1 (en) 2014-02-21 2018-09-25 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US11902235B2 (en) 2014-02-21 2024-02-13 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US10949049B1 (en) 2014-02-21 2021-03-16 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US10082926B1 (en) 2014-02-21 2018-09-25 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US10958605B1 (en) 2014-02-21 2021-03-23 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US11463393B2 (en) 2014-02-21 2022-10-04 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US11463394B2 (en) 2014-02-21 2022-10-04 Snap Inc. Apparatus and method for alternate channel communication initiated through a common message thread
US9237202B1 (en) 2014-03-07 2016-01-12 Snapchat, Inc. Content delivery network for ephemeral objects
US9407712B1 (en) 2014-03-07 2016-08-02 Snapchat, Inc. Content delivery network for ephemeral objects
US9503414B1 (en) * 2014-03-10 2016-11-22 Bume Box, Inc. Apparatus and method for coordinating live computer network events
US9906485B1 (en) * 2014-03-10 2018-02-27 Bume Box, Inc. Apparatus and method for coordinating live computer network events
US11310183B2 (en) 2014-05-09 2022-04-19 Snap Inc. Dynamic configuration of application component tiles
US10817156B1 (en) 2014-05-09 2020-10-27 Snap Inc. Dynamic configuration of application component tiles
US9276886B1 (en) 2014-05-09 2016-03-01 Snapchat, Inc. Apparatus and method for dynamically configuring application component tiles
US11743219B2 (en) 2014-05-09 2023-08-29 Snap Inc. Dynamic configuration of application component tiles
US9785796B1 (en) 2014-05-28 2017-10-10 Snap Inc. Apparatus and method for automated privacy protection in distributed images
US10572681B1 (en) 2014-05-28 2020-02-25 Snap Inc. Apparatus and method for automated privacy protection in distributed images
US9396354B1 (en) 2014-05-28 2016-07-19 Snapchat, Inc. Apparatus and method for automated privacy protection in distributed images
US10990697B2 (en) 2014-05-28 2021-04-27 Snap Inc. Apparatus and method for automated privacy protection in distributed images
US11921805B2 (en) 2014-06-05 2024-03-05 Snap Inc. Web document enhancement
US11625443B2 (en) 2014-06-05 2023-04-11 Snap Inc. Web document enhancement
US10779113B2 (en) 2014-06-13 2020-09-15 Snap Inc. Prioritization of messages within a message collection
US9532171B2 (en) 2014-06-13 2016-12-27 Snap Inc. Geo-location based event gallery
US9094137B1 (en) 2014-06-13 2015-07-28 Snapchat, Inc. Priority based placement of messages in a geo-location based event gallery
US9113301B1 (en) * 2014-06-13 2015-08-18 Snapchat, Inc. Geo-location based event gallery
US10200813B1 (en) 2014-06-13 2019-02-05 Snap Inc. Geo-location based event gallery
US9430783B1 (en) 2014-06-13 2016-08-30 Snapchat, Inc. Prioritization of messages within gallery
US10182311B2 (en) 2014-06-13 2019-01-15 Snap Inc. Prioritization of messages within a message collection
US10659914B1 (en) 2014-06-13 2020-05-19 Snap Inc. Geo-location based event gallery
US9693191B2 (en) 2014-06-13 2017-06-27 Snap Inc. Prioritization of messages within gallery
US10524087B1 (en) * 2014-06-13 2019-12-31 Snap Inc. Message destination list mechanism
US9825898B2 (en) 2014-06-13 2017-11-21 Snap Inc. Prioritization of messages within a message collection
US10623891B2 (en) 2014-06-13 2020-04-14 Snap Inc. Prioritization of messages within a message collection
US11317240B2 (en) 2014-06-13 2022-04-26 Snap Inc. Geo-location based event gallery
US11166121B2 (en) 2014-06-13 2021-11-02 Snap Inc. Prioritization of messages within a message collection
US10448201B1 (en) 2014-06-13 2019-10-15 Snap Inc. Prioritization of messages within a message collection
US11849214B2 (en) 2014-07-07 2023-12-19 Snap Inc. Apparatus and method for supplying content aware photo filters
US10154192B1 (en) 2014-07-07 2018-12-11 Snap Inc. Apparatus and method for supplying content aware photo filters
US11595569B2 (en) 2014-07-07 2023-02-28 Snap Inc. Supplying content aware photo filters
US11122200B2 (en) 2014-07-07 2021-09-14 Snap Inc. Supplying content aware photo filters
US10432850B1 (en) 2014-07-07 2019-10-01 Snap Inc. Apparatus and method for supplying content aware photo filters
US10701262B1 (en) 2014-07-07 2020-06-30 Snap Inc. Apparatus and method for supplying content aware photo filters
US10602057B1 (en) 2014-07-07 2020-03-24 Snap Inc. Supplying content aware photo filters
US10348960B1 (en) 2014-07-07 2019-07-09 Snap Inc. Apparatus and method for supplying content aware photo filters
US9225897B1 (en) 2014-07-07 2015-12-29 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US11496673B1 (en) 2014-07-07 2022-11-08 Snap Inc. Apparatus and method for supplying content aware photo filters
US9407816B1 (en) 2014-07-07 2016-08-02 Snapchat, Inc. Apparatus and method for supplying content aware photo filters
US11017363B1 (en) 2014-08-22 2021-05-25 Snap Inc. Message processor with application prompts
US10055717B1 (en) 2014-08-22 2018-08-21 Snap Inc. Message processor with application prompts
US11625755B1 (en) 2014-09-16 2023-04-11 Foursquare Labs, Inc. Determining targeting information based on a predictive targeting model
US10423983B2 (en) 2014-09-16 2019-09-24 Snap Inc. Determining targeting information based on a predictive targeting model
US10824654B2 (en) 2014-09-18 2020-11-03 Snap Inc. Geolocation-based pictographs
US11741136B2 (en) 2014-09-18 2023-08-29 Snap Inc. Geolocation-based pictographs
US11281701B2 (en) 2014-09-18 2022-03-22 Snap Inc. Geolocation-based pictographs
US11216869B2 (en) 2014-09-23 2022-01-04 Snap Inc. User interface to augment an image using geolocation
US10476830B2 (en) 2014-10-02 2019-11-12 Snap Inc. Ephemeral gallery of ephemeral messages
US10708210B1 (en) 2014-10-02 2020-07-07 Snap Inc. Multi-user ephemeral message gallery
US11038829B1 (en) 2014-10-02 2021-06-15 Snap Inc. Ephemeral gallery of ephemeral messages with opt-in permanence
US9537811B2 (en) 2014-10-02 2017-01-03 Snap Inc. Ephemeral gallery of ephemeral messages
US11012398B1 (en) 2014-10-02 2021-05-18 Snap Inc. Ephemeral message gallery user interface with screenshot messages
US20170374003A1 (en) 2014-10-02 2017-12-28 Snapchat, Inc. Ephemeral gallery of ephemeral messages
US10958608B1 (en) 2014-10-02 2021-03-23 Snap Inc. Ephemeral gallery of visual media messages
US11855947B1 (en) 2014-10-02 2023-12-26 Snap Inc. Gallery of ephemeral messages
US10284508B1 (en) 2014-10-02 2019-05-07 Snap Inc. Ephemeral gallery of ephemeral messages with opt-in permanence
US11411908B1 (en) 2014-10-02 2022-08-09 Snap Inc. Ephemeral message gallery user interface with online viewing history indicia
US11522822B1 (en) 2014-10-02 2022-12-06 Snap Inc. Ephemeral gallery elimination based on gallery and message timers
US10944710B1 (en) 2014-10-02 2021-03-09 Snap Inc. Ephemeral gallery user interface with remaining gallery time indication
US11190679B2 (en) 2014-11-12 2021-11-30 Snap Inc. Accessing media at a geographic location
US10616476B1 (en) 2014-11-12 2020-04-07 Snap Inc. User interface for accessing media at a geographic location
US9843720B1 (en) 2014-11-12 2017-12-12 Snap Inc. User interface for accessing media at a geographic location
US20160171063A1 (en) * 2014-12-15 2016-06-16 Microsoft Technology Licensing, Llc Modeling actions, consequences and goal achievement from social media and other digital traces
US10037367B2 (en) * 2014-12-15 2018-07-31 Microsoft Technology Licensing, Llc Modeling actions, consequences and goal achievement from social media and other digital traces
US10311916B2 (en) 2014-12-19 2019-06-04 Snap Inc. Gallery of videos set to an audio time line
US11372608B2 (en) 2014-12-19 2022-06-28 Snap Inc. Gallery of messages from individuals with a shared interest
US11803345B2 (en) 2014-12-19 2023-10-31 Snap Inc. Gallery of messages from individuals with a shared interest
US10811053B2 (en) 2014-12-19 2020-10-20 Snap Inc. Routing messages by message parameter
US10580458B2 (en) 2014-12-19 2020-03-03 Snap Inc. Gallery of videos set to an audio time line
US9385983B1 (en) 2014-12-19 2016-07-05 Snapchat, Inc. Gallery of messages from individuals with a shared interest
US11250887B2 (en) 2014-12-19 2022-02-15 Snap Inc. Routing messages by message parameter
US11783862B2 (en) 2014-12-19 2023-10-10 Snap Inc. Routing messages by message parameter
US10514876B2 (en) 2014-12-19 2019-12-24 Snap Inc. Gallery of messages from individuals with a shared interest
US9854219B2 (en) 2014-12-19 2017-12-26 Snap Inc. Gallery of videos set to an audio time line
US11734342B2 (en) 2015-01-09 2023-08-22 Snap Inc. Object recognition based image overlays
US10157449B1 (en) 2015-01-09 2018-12-18 Snap Inc. Geo-location-based image filters
US11301960B2 (en) 2015-01-09 2022-04-12 Snap Inc. Object recognition based image filters
US10380720B1 (en) 2015-01-09 2019-08-13 Snap Inc. Location-based image filters
US11388226B1 (en) 2015-01-13 2022-07-12 Snap Inc. Guided personal identity based actions
US10416845B1 (en) 2015-01-19 2019-09-17 Snap Inc. Multichannel system
US11249617B1 (en) 2015-01-19 2022-02-15 Snap Inc. Multichannel system
US10133705B1 (en) * 2015-01-19 2018-11-20 Snap Inc. Multichannel system
US10536800B1 (en) 2015-01-26 2020-01-14 Snap Inc. Content request by location
US11910267B2 (en) 2015-01-26 2024-02-20 Snap Inc. Content request by location
US10123166B2 (en) 2015-01-26 2018-11-06 Snap Inc. Content request by location
US10932085B1 (en) 2015-01-26 2021-02-23 Snap Inc. Content request by location
US11528579B2 (en) 2015-01-26 2022-12-13 Snap Inc. Content request by location
US10223397B1 (en) 2015-03-13 2019-03-05 Snap Inc. Social graph based co-location of network users
US10616239B2 (en) 2015-03-18 2020-04-07 Snap Inc. Geo-fence authorization provisioning
US11902287B2 (en) 2015-03-18 2024-02-13 Snap Inc. Geo-fence authorization provisioning
US10893055B2 (en) 2015-03-18 2021-01-12 Snap Inc. Geo-fence authorization provisioning
US11662576B2 (en) 2015-03-23 2023-05-30 Snap Inc. Reducing boot time and power consumption in displaying data content
US11320651B2 (en) 2015-03-23 2022-05-03 Snap Inc. Reducing boot time and power consumption in displaying data content
US10948717B1 (en) 2015-03-23 2021-03-16 Snap Inc. Reducing boot time and power consumption in wearable display systems
US10911575B1 (en) 2015-05-05 2021-02-02 Snap Inc. Systems and methods for story and sub-story navigation
US10135949B1 (en) 2015-05-05 2018-11-20 Snap Inc. Systems and methods for story and sub-story navigation
US10592574B2 (en) 2015-05-05 2020-03-17 Snap Inc. Systems and methods for automated local story generation and curation
US11392633B2 (en) 2015-05-05 2022-07-19 Snap Inc. Systems and methods for automated local story generation and curation
US11449539B2 (en) 2015-05-05 2022-09-20 Snap Inc. Automated local story generation and curation
US11496544B2 (en) 2015-05-05 2022-11-08 Snap Inc. Story and sub-story navigation
US9881094B2 (en) 2015-05-05 2018-01-30 Snap Inc. Systems and methods for automated local story generation and curation
US10949052B2 (en) 2015-06-05 2021-03-16 Apple Inc. Social interaction in a media streaming service
US10768771B2 (en) * 2015-06-05 2020-09-08 Apple Inc. Social interaction in a media streaming service
US10993069B2 (en) 2015-07-16 2021-04-27 Snap Inc. Dynamically adaptive media content delivery
US10817898B2 (en) 2015-08-13 2020-10-27 Placed, Llc Determining exposures to content presented by physical objects
EP3142063A1 (en) * 2015-09-14 2017-03-15 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US9792457B2 (en) 2015-09-14 2017-10-17 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US11023611B2 (en) 2015-09-14 2021-06-01 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US10102680B2 (en) 2015-10-30 2018-10-16 Snap Inc. Image based tracking in augmented reality systems
US11769307B2 (en) 2015-10-30 2023-09-26 Snap Inc. Image based tracking in augmented reality systems
US10366543B1 (en) 2015-10-30 2019-07-30 Snap Inc. Image based tracking in augmented reality systems
US11315331B2 (en) 2015-10-30 2022-04-26 Snap Inc. Image based tracking in augmented reality systems
US10733802B2 (en) 2015-10-30 2020-08-04 Snap Inc. Image based tracking in augmented reality systems
US11599241B2 (en) 2015-11-30 2023-03-07 Snap Inc. Network resource location linking and visual content sharing
US11380051B2 (en) 2015-11-30 2022-07-05 Snap Inc. Image and point cloud based tracking and in augmented reality systems
US10997783B2 (en) 2015-11-30 2021-05-04 Snap Inc. Image and point cloud based tracking and in augmented reality systems
US10657708B1 (en) 2015-11-30 2020-05-19 Snap Inc. Image and point cloud based tracking and in augmented reality systems
US10474321B2 (en) 2015-11-30 2019-11-12 Snap Inc. Network resource location linking and visual content sharing
US20170180299A1 (en) * 2015-12-16 2017-06-22 Facebook, Inc. System and Method for Expanded Messaging Indicator
US11830117B2 (en) 2015-12-18 2023-11-28 Snap Inc Media overlay publication system
US11468615B2 (en) 2015-12-18 2022-10-11 Snap Inc. Media overlay publication system
US10997758B1 (en) 2015-12-18 2021-05-04 Snap Inc. Media overlay publication system
US10354425B2 (en) 2015-12-18 2019-07-16 Snap Inc. Method and system for providing context relevant media augmentation
US11889381B2 (en) 2016-02-26 2024-01-30 Snap Inc. Generation, curation, and presentation of media collections
US10679389B2 (en) 2016-02-26 2020-06-09 Snap Inc. Methods and systems for generation, curation, and presentation of media collections
US11197123B2 (en) 2016-02-26 2021-12-07 Snap Inc. Generation, curation, and presentation of media collections
US11611846B2 (en) 2016-02-26 2023-03-21 Snap Inc. Generation, curation, and presentation of media collections
US10834525B2 (en) 2016-02-26 2020-11-10 Snap Inc. Generation, curation, and presentation of media collections
US11023514B2 (en) 2016-02-26 2021-06-01 Snap Inc. Methods and systems for generation, curation, and presentation of media collections
US11631276B2 (en) 2016-03-31 2023-04-18 Snap Inc. Automated avatar generation
US11900418B2 (en) 2016-04-04 2024-02-13 Snap Inc. Mutable geo-fencing system
US11876941B1 (en) 2016-06-20 2024-01-16 Pipbin, Inc. Clickable augmented reality content manager, system, and network
US10839219B1 (en) 2016-06-20 2020-11-17 Pipbin, Inc. System for curation, distribution and display of location-dependent augmented reality content
US10992836B2 (en) 2016-06-20 2021-04-27 Pipbin, Inc. Augmented property system of curated augmented reality media elements
US11785161B1 (en) 2016-06-20 2023-10-10 Pipbin, Inc. System for user accessibility of tagged curated augmented reality content
US10638256B1 (en) 2016-06-20 2020-04-28 Pipbin, Inc. System for distribution and display of mobile targeted augmented reality content
US10805696B1 (en) 2016-06-20 2020-10-13 Pipbin, Inc. System for recording and targeting tagged content of user interest
US11201981B1 (en) 2016-06-20 2021-12-14 Pipbin, Inc. System for notification of user accessibility of curated location-dependent content in an augmented estate
US11044393B1 (en) 2016-06-20 2021-06-22 Pipbin, Inc. System for curation and display of location-dependent augmented reality content in an augmented estate system
US10219110B2 (en) 2016-06-28 2019-02-26 Snap Inc. System to track engagement of media items
US10165402B1 (en) 2016-06-28 2018-12-25 Snap Inc. System to track engagement of media items
US10327100B1 (en) 2016-06-28 2019-06-18 Snap Inc. System to track engagement of media items
US10506371B2 (en) 2016-06-28 2019-12-10 Snap Inc. System to track engagement of media items
US10735892B2 (en) 2016-06-28 2020-08-04 Snap Inc. System to track engagement of media items
US10430838B1 (en) 2016-06-28 2019-10-01 Snap Inc. Methods and systems for generation, curation, and presentation of media collections with automated advertising
US11640625B2 (en) 2016-06-28 2023-05-02 Snap Inc. Generation, curation, and presentation of media collections with automated advertising
US10885559B1 (en) 2016-06-28 2021-01-05 Snap Inc. Generation, curation, and presentation of media collections with automated advertising
US10785597B2 (en) 2016-06-28 2020-09-22 Snap Inc. System to track engagement of media items
US11445326B2 (en) 2016-06-28 2022-09-13 Snap Inc. Track engagement of media items
US10387514B1 (en) 2016-06-30 2019-08-20 Snap Inc. Automated content curation and communication
US11895068B2 (en) 2016-06-30 2024-02-06 Snap Inc. Automated content curation and communication
US11080351B1 (en) 2016-06-30 2021-08-03 Snap Inc. Automated content curation and communication
US11509615B2 (en) 2016-07-19 2022-11-22 Snap Inc. Generating customized electronic messaging graphics
US10348662B2 (en) 2016-07-19 2019-07-09 Snap Inc. Generating customized electronic messaging graphics
US11409818B2 (en) 2016-08-01 2022-08-09 Meta Platforms, Inc. Systems and methods to manage media content items
US20180032212A1 (en) * 2016-08-01 2018-02-01 Facebook, Inc. Systems and methods to manage media content items
US10606908B2 (en) 2016-08-01 2020-03-31 Facebook, Inc. Systems and methods to manage media content items
US11256768B2 (en) 2016-08-01 2022-02-22 Facebook, Inc. Systems and methods to manage media content items
US10482144B2 (en) 2016-08-01 2019-11-19 Facebook, Inc. Systems and methods to manage media content items
US10331750B2 (en) 2016-08-01 2019-06-25 Facebook, Inc. Systems and methods to manage media content items
US11816853B2 (en) 2016-08-30 2023-11-14 Snap Inc. Systems and methods for simultaneous localization and mapping
US11843456B2 (en) 2016-10-24 2023-12-12 Snap Inc. Generating and displaying customized avatars in media overlays
US11876762B1 (en) 2016-10-24 2024-01-16 Snap Inc. Generating and displaying customized avatars in media overlays
US10623666B2 (en) 2016-11-07 2020-04-14 Snap Inc. Selective identification and order of image modifiers
US11750767B2 (en) 2016-11-07 2023-09-05 Snap Inc. Selective identification and order of image modifiers
US11233952B2 (en) 2016-11-07 2022-01-25 Snap Inc. Selective identification and order of image modifiers
US10203855B2 (en) 2016-12-09 2019-02-12 Snap Inc. Customized user-controlled media overlays
US11397517B2 (en) 2016-12-09 2022-07-26 Snap Inc. Customized media overlays
US10754525B1 (en) 2016-12-09 2020-08-25 Snap Inc. Customized media overlays
US11616745B2 (en) 2017-01-09 2023-03-28 Snap Inc. Contextual generation and selection of customized media content
US11870743B1 (en) 2017-01-23 2024-01-09 Snap Inc. Customized digital avatar accessories
US10915911B2 (en) 2017-02-03 2021-02-09 Snap Inc. System to determine a price-schedule to distribute media content
US11250075B1 (en) 2017-02-17 2022-02-15 Snap Inc. Searching social media content
US11861795B1 (en) 2017-02-17 2024-01-02 Snap Inc. Augmented reality anamorphosis system
US10319149B1 (en) 2017-02-17 2019-06-11 Snap Inc. Augmented reality anamorphosis system
US11720640B2 (en) 2017-02-17 2023-08-08 Snap Inc. Searching social media content
US11748579B2 (en) 2017-02-20 2023-09-05 Snap Inc. Augmented reality speech balloon system
US10614828B1 (en) 2017-02-20 2020-04-07 Snap Inc. Augmented reality speech balloon system
US11189299B1 (en) 2017-02-20 2021-11-30 Snap Inc. Augmented reality speech balloon system
US11670057B2 (en) 2017-03-06 2023-06-06 Snap Inc. Virtual vision system
US11037372B2 (en) 2017-03-06 2021-06-15 Snap Inc. Virtual vision system
US10887269B1 (en) 2017-03-09 2021-01-05 Snap Inc. Restricted group content collection
US11258749B2 (en) 2017-03-09 2022-02-22 Snap Inc. Restricted group content collection
US10523625B1 (en) 2017-03-09 2019-12-31 Snap Inc. Restricted group content collection
US11349796B2 (en) 2017-03-27 2022-05-31 Snap Inc. Generating a stitched data stream
US10582277B2 (en) 2017-03-27 2020-03-03 Snap Inc. Generating a stitched data stream
US11558678B2 (en) 2017-03-27 2023-01-17 Snap Inc. Generating a stitched data stream
US10581782B2 (en) 2017-03-27 2020-03-03 Snap Inc. Generating a stitched data stream
US11297399B1 (en) 2017-03-27 2022-04-05 Snap Inc. Generating a stitched data stream
US11170393B1 (en) 2017-04-11 2021-11-09 Snap Inc. System to calculate an engagement score of location based media content
US10387730B1 (en) 2017-04-20 2019-08-20 Snap Inc. Augmented reality typography personalization system
US11195018B1 (en) 2017-04-20 2021-12-07 Snap Inc. Augmented reality typography personalization system
US11385763B2 (en) 2017-04-27 2022-07-12 Snap Inc. Map-based graphical user interface indicating geospatial activity metrics
US11409407B2 (en) 2017-04-27 2022-08-09 Snap Inc. Map-based graphical user interface indicating geospatial activity metrics
US11842411B2 (en) 2017-04-27 2023-12-12 Snap Inc. Location-based virtual avatars
US11392264B1 (en) 2017-04-27 2022-07-19 Snap Inc. Map-based graphical user interface for multi-type social media galleries
US11474663B2 (en) 2017-04-27 2022-10-18 Snap Inc. Location-based search mechanism in a graphical user interface
US11418906B2 (en) 2017-04-27 2022-08-16 Snap Inc. Selective location-based identity communication
US10963529B1 (en) 2017-04-27 2021-03-30 Snap Inc. Location-based search mechanism in a graphical user interface
US11782574B2 (en) 2017-04-27 2023-10-10 Snap Inc. Map-based graphical user interface indicating geospatial activity metrics
US11893647B2 (en) 2017-04-27 2024-02-06 Snap Inc. Location-based virtual avatars
US11451956B1 (en) 2017-04-27 2022-09-20 Snap Inc. Location privacy management on map-based social media platforms
US10952013B1 (en) 2017-04-27 2021-03-16 Snap Inc. Selective location-based identity communication
US11556221B2 (en) 2017-04-27 2023-01-17 Snap Inc. Friend location sharing mechanism for social media platforms
US11232040B1 (en) 2017-04-28 2022-01-25 Snap Inc. Precaching unlockable data elements
US11675831B2 (en) 2017-05-31 2023-06-13 Snap Inc. Geolocation based playlists
US20180365570A1 (en) * 2017-06-15 2018-12-20 Microsoft Technology Licensing, Llc Memorable event detection, recording, and exploitation
US11475254B1 (en) 2017-09-08 2022-10-18 Snap Inc. Multimodal entity identification
US11335067B2 (en) 2017-09-15 2022-05-17 Snap Inc. Augmented reality system
US10740974B1 (en) 2017-09-15 2020-08-11 Snap Inc. Augmented reality system
US11721080B2 (en) 2017-09-15 2023-08-08 Snap Inc. Augmented reality system
US11006242B1 (en) 2017-10-09 2021-05-11 Snap Inc. Context sensitive presentation of content
US10499191B1 (en) 2017-10-09 2019-12-03 Snap Inc. Context sensitive presentation of content
US11617056B2 (en) 2017-10-09 2023-03-28 Snap Inc. Context sensitive presentation of content
US11030787B2 (en) 2017-10-30 2021-06-08 Snap Inc. Mobile-based cartographic control of display content
US11670025B2 (en) 2017-10-30 2023-06-06 Snap Inc. Mobile-based cartographic control of display content
US11265273B1 (en) 2017-12-01 2022-03-01 Snap, Inc. Dynamic media overlay with smart widget
US11558327B2 (en) 2017-12-01 2023-01-17 Snap Inc. Dynamic media overlay with smart widget
US10992615B2 (en) 2017-12-01 2021-04-27 Trusted Voices, Inc. Dynamic open graph module for posting content one or more platforms
US11017173B1 (en) 2017-12-22 2021-05-25 Snap Inc. Named entity recognition visual context and caption data
US11687720B2 (en) 2017-12-22 2023-06-27 Snap Inc. Named entity recognition visual context and caption data
US11487794B2 (en) 2018-01-03 2022-11-01 Snap Inc. Tag distribution visualization system
US10678818B2 (en) 2018-01-03 2020-06-09 Snap Inc. Tag distribution visualization system
US11841896B2 (en) 2018-02-13 2023-12-12 Snap Inc. Icon based tagging
US11507614B1 (en) 2018-02-13 2022-11-22 Snap Inc. Icon based tagging
US10979752B1 (en) 2018-02-28 2021-04-13 Snap Inc. Generating media content items based on location information
US11523159B2 (en) 2018-02-28 2022-12-06 Snap Inc. Generating media content items based on location information
US10885136B1 (en) 2018-02-28 2021-01-05 Snap Inc. Audience filtering system
US11570572B2 (en) 2018-03-06 2023-01-31 Snap Inc. Geo-fence selection system
US10524088B2 (en) 2018-03-06 2019-12-31 Snap Inc. Geo-fence selection system
US10327096B1 (en) 2018-03-06 2019-06-18 Snap Inc. Geo-fence selection system
US11044574B2 (en) 2018-03-06 2021-06-22 Snap Inc. Geo-fence selection system
US11722837B2 (en) 2018-03-06 2023-08-08 Snap Inc. Geo-fence selection system
US11491393B2 (en) 2018-03-14 2022-11-08 Snap Inc. Generating collectible items based on location information
US10933311B2 (en) 2018-03-14 2021-03-02 Snap Inc. Generating collectible items based on location information
US11163941B1 (en) 2018-03-30 2021-11-02 Snap Inc. Annotating a collection of media content items
US20220004703A1 (en) * 2018-03-30 2022-01-06 Snap Inc. Annotating a collection of media content items
US10924886B2 (en) 2018-04-18 2021-02-16 Snap Inc. Visitation tracking system
US11297463B2 (en) 2018-04-18 2022-04-05 Snap Inc. Visitation tracking system
US10219111B1 (en) 2018-04-18 2019-02-26 Snap Inc. Visitation tracking system
US10448199B1 (en) 2018-04-18 2019-10-15 Snap Inc. Visitation tracking system
US10681491B1 (en) 2018-04-18 2020-06-09 Snap Inc. Visitation tracking system
US11683657B2 (en) 2018-04-18 2023-06-20 Snap Inc. Visitation tracking system
US10779114B2 (en) 2018-04-18 2020-09-15 Snap Inc. Visitation tracking system
US11860888B2 (en) 2018-05-22 2024-01-02 Snap Inc. Event detection system
US10943381B2 (en) 2018-07-24 2021-03-09 Snap Inc. Conditional modification of augmented reality object
US10679393B2 (en) 2018-07-24 2020-06-09 Snap Inc. Conditional modification of augmented reality object
US10789749B2 (en) 2018-07-24 2020-09-29 Snap Inc. Conditional modification of augmented reality object
US11367234B2 (en) 2018-07-24 2022-06-21 Snap Inc. Conditional modification of augmented reality object
US11670026B2 (en) 2018-07-24 2023-06-06 Snap Inc. Conditional modification of augmented reality object
US11676319B2 (en) 2018-08-31 2023-06-13 Snap Inc. Augmented reality anthropomorphtzation system
US10997760B2 (en) 2018-08-31 2021-05-04 Snap Inc. Augmented reality anthropomorphization system
US11450050B2 (en) 2018-08-31 2022-09-20 Snap Inc. Augmented reality anthropomorphization system
US11704005B2 (en) 2018-09-28 2023-07-18 Snap Inc. Collaborative achievement interface
US11455082B2 (en) 2018-09-28 2022-09-27 Snap Inc. Collaborative achievement interface
US11799811B2 (en) 2018-10-31 2023-10-24 Snap Inc. Messaging and gaming applications communication platform
US11558709B2 (en) 2018-11-30 2023-01-17 Snap Inc. Position service to determine relative position to map features
US11199957B1 (en) 2018-11-30 2021-12-14 Snap Inc. Generating customized avatars based on location information
US11698722B2 (en) 2018-11-30 2023-07-11 Snap Inc. Generating customized avatars based on location information
US11812335B2 (en) 2018-11-30 2023-11-07 Snap Inc. Position service to determine relative position to map features
US11877211B2 (en) 2019-01-14 2024-01-16 Snap Inc. Destination sharing in location sharing system
US11751015B2 (en) 2019-01-16 2023-09-05 Snap Inc. Location-based context information sharing in a messaging system
US11294936B1 (en) 2019-01-30 2022-04-05 Snap Inc. Adaptive spatial density based clustering
US11693887B2 (en) 2019-01-30 2023-07-04 Snap Inc. Adaptive spatial density based clustering
US11809624B2 (en) 2019-02-13 2023-11-07 Snap Inc. Sleep detection in a location sharing system
US11500525B2 (en) 2019-02-25 2022-11-15 Snap Inc. Custom media overlay system
US11574431B2 (en) 2019-02-26 2023-02-07 Snap Inc. Avatar based on weather
US11301117B2 (en) 2019-03-08 2022-04-12 Snap Inc. Contextual information in chat
US11868414B1 (en) 2019-03-14 2024-01-09 Snap Inc. Graph-based prediction for contact suggestion in a location sharing system
US11852554B1 (en) 2019-03-21 2023-12-26 Snap Inc. Barometer calibration in a location sharing system
US11740760B2 (en) 2019-03-28 2023-08-29 Snap Inc. Generating personalized map interface with enhanced icons
US11249614B2 (en) 2019-03-28 2022-02-15 Snap Inc. Generating personalized map interface with enhanced icons
US11361493B2 (en) 2019-04-01 2022-06-14 Snap Inc. Semantic texture mapping system
US11606755B2 (en) 2019-05-30 2023-03-14 Snap Inc. Wearable device location systems architecture
US11785549B2 (en) 2019-05-30 2023-10-10 Snap Inc. Wearable device location systems
US11206615B2 (en) 2019-05-30 2021-12-21 Snap Inc. Wearable device location systems
US11917495B2 (en) 2019-06-07 2024-02-27 Snap Inc. Detection of a physical collision between two client devices in a location sharing system
US11601783B2 (en) 2019-06-07 2023-03-07 Snap Inc. Detection of a physical collision between two client devices in a location sharing system
US11714535B2 (en) 2019-07-11 2023-08-01 Snap Inc. Edge gesture interface with smart interactions
US11821742B2 (en) 2019-09-26 2023-11-21 Snap Inc. Travel based notifications
US11218838B2 (en) 2019-10-31 2022-01-04 Snap Inc. Focused map-based context information surfacing
US11729343B2 (en) 2019-12-30 2023-08-15 Snap Inc. Including video feed in message thread
US11429618B2 (en) 2019-12-30 2022-08-30 Snap Inc. Surfacing augmented reality objects
US11128715B1 (en) 2019-12-30 2021-09-21 Snap Inc. Physical friend proximity in chat
US11893208B2 (en) 2019-12-31 2024-02-06 Snap Inc. Combined map icon with action indicator
US11343323B2 (en) 2019-12-31 2022-05-24 Snap Inc. Augmented reality objects registry
US11228551B1 (en) 2020-02-12 2022-01-18 Snap Inc. Multiple gateway message exchange
US11888803B2 (en) 2020-02-12 2024-01-30 Snap Inc. Multiple gateway message exchange
US11765117B2 (en) 2020-03-05 2023-09-19 Snap Inc. Storing data based on device location
US11516167B2 (en) 2020-03-05 2022-11-29 Snap Inc. Storing data based on device location
US11619501B2 (en) 2020-03-11 2023-04-04 Snap Inc. Avatar based on trip
US11915400B2 (en) 2020-03-27 2024-02-27 Snap Inc. Location mapping for large scale augmented-reality
US11430091B2 (en) 2020-03-27 2022-08-30 Snap Inc. Location mapping for large scale augmented-reality
US11776256B2 (en) 2020-03-27 2023-10-03 Snap Inc. Shared augmented reality system
US11483267B2 (en) 2020-06-15 2022-10-25 Snap Inc. Location sharing using different rate-limited links
US11503432B2 (en) 2020-06-15 2022-11-15 Snap Inc. Scalable real-time location sharing framework
US11314776B2 (en) 2020-06-15 2022-04-26 Snap Inc. Location sharing using friend list versions
US11290851B2 (en) 2020-06-15 2022-03-29 Snap Inc. Location sharing using offline and online objects
US11676378B2 (en) 2020-06-29 2023-06-13 Snap Inc. Providing travel-based augmented reality content with a captured image
US11902902B2 (en) 2021-03-29 2024-02-13 Snap Inc. Scheduling requests for location data
US11601888B2 (en) 2021-03-29 2023-03-07 Snap Inc. Determining location using multi-source geolocation data
US11606756B2 (en) 2021-03-29 2023-03-14 Snap Inc. Scheduling requests for location data
US11645324B2 (en) 2021-03-31 2023-05-09 Snap Inc. Location-based timeline media content system
US11829834B2 (en) 2021-10-29 2023-11-28 Snap Inc. Extended QR code

Also Published As

Publication number Publication date
US9779157B2 (en) 2017-10-03
US9450907B2 (en) 2016-09-20
US20160350397A1 (en) 2016-12-01

Similar Documents

Publication Publication Date Title
US9779157B2 (en) Bundled event memories
US11582182B2 (en) Multi-user media presentation system
US10447645B2 (en) Computerized system and method for automatically creating and communicating media streams of digital content
US20170124030A1 (en) Template selection for mapping a third-party web page to an object in a social networking system
US9146894B2 (en) Objective value models for entity recommendation
US11341748B2 (en) Predicting highlights for media content
US10154312B2 (en) Systems and methods for ranking and providing related media content based on signals
US9262044B2 (en) Methods, systems, and user interfaces for prompting social video content interaction
US10771423B2 (en) Systems and methods to control event based information
US10320927B2 (en) Systems and methods for providing personalized content
US20170060405A1 (en) Systems and methods for content presentation
US20190200079A1 (en) Predictive Analysis for Media Encodings
US20180189030A1 (en) Systems and methods for providing content
US9450992B2 (en) Node properties in a social-networking system
US20180239823A1 (en) Selecting time-specific content for presentation to a user of a social networking system
US20160078035A1 (en) Systems and methods for providing real-time content items associated with topics
US10110651B2 (en) Video icons
US10764380B2 (en) Clustering content items based on a social affinity between users associated with the content items
US20160162487A1 (en) Systems and methods for ranking and providing related content
US11425527B2 (en) Provisioning content across multiple devices
US10824875B2 (en) Systems and methods for selecting previews for presentation during media navigation
US20230370408A1 (en) Generating and surfacing messaging thread specific and content-based effects

Legal Events

Date Code Title Description
AS Assignment

Owner name: FACEBOOK, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PRIDMORE, KEENAN;MACGREGOR, PHILIP JOHN, IV;REEL/FRAME:031021/0485

Effective date: 20130801

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

AS Assignment

Owner name: META PLATFORMS, INC., CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:FACEBOOK, INC.;REEL/FRAME:058961/0436

Effective date: 20211028

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8