System and method for association of a song, music, or other media content with a user's video content

Information

  • Patent Grant
  • 11620972
  • Patent Number
    11,620,972
  • Date Filed
    Monday, August 31, 2020
    4 years ago
  • Date Issued
    Tuesday, April 4, 2023
    a year ago
Abstract
In accordance with an embodiment, described herein is a system and method for association of a song, music, or other media content with a user's video content. The system enables a user to associate a song, music, or other media content that is associated with an audio clip and a song metadata of a media content, with a video they are about to create, or have created, to create a video moment. A recipient of the video moment can hear the audio clip in combination with the video content, and also view the song metadata overlay, to determine the name of the song and artist that was used in the video, or optionally access the song at a media server, for further listening by the recipient.
Description
COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.


FIELD OF INVENTION

Embodiments of the invention are generally related to providing digital media content, and are particularly related to a system and method for association of a song, music, or other media content with a user's video content.


BACKGROUND

Today's technology-enabled social messaging environments enable users to use video messaging software applications (apps) to communicate with friends and to express themselves. The allure of such video functionality is that it can be used to capture a personal moment of some significance to the user. Unfortunately, there is no easy way to add a media content, for example a particular song, to a video message. Existing techniques generally require the user to send a video message with ambient music playing in the background, which offers poor quality and does not provide a context for the recipient of the video message to determine which, e.g., song or artist, is being included.


SUMMARY

In accordance with an embodiment, described herein is a system and method for association of a song, music, or other media content with a user's video content. The system enables a user to associate a song, music, or other media content that is associated with an audio clip and a song metadata of a media content, with a video they are about to create, or have created, to create a shareable file or other set of data, generally referred to herein as a video moment. A recipient of the video moment can hear the audio clip in combination with the video content, and also view the song metadata overlay, to determine the name of the song and artist that was used in the video, or optionally access the song at a media server, for further listening by the recipient.





BRIEF DESCRIPTION OF THE FIGURES


FIG. 1 illustrates an example digital media content environment, in accordance with an embodiment.



FIG. 2 illustrates a system that enables access to media content from a social messaging environment, in accordance with an embodiment.



FIG. 3 illustrates association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.



FIG. 4 further illustrates the association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.



FIG. 5 further illustrates the association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.



FIG. 6 illustrates a process of associating a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.



FIG. 7 illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.



FIG. 8 further illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.



FIG. 9 further illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.



FIG. 10 illustrates a process of programming song suggestions for users of a social messaging environment, in accordance with an embodiment.





DETAILED DESCRIPTION

As described above, existing techniques for use of music and video in a social messaging environment, generally require the user to send a video message with ambient music playing in the background, which offers poor quality and does not provide a context for the recipient of the video message to determine which, e.g., song or artist, is being included.


In accordance with an embodiment, described herein is a system and method for association of a song, music, or other media content with a user's video content. The system enables a user to associate a song, music, or other media content that is associated with an audio clip and a song metadata of a media content, with a video they are about to create, or have created, to create a shareable file or other set of data, generally referred to herein as a video moment. A recipient of the video moment can hear the audio clip in combination with the video content, and also view the song metadata overlay, to determine the name of the song and artist that was used in the video, or optionally access the song at a media server, for further listening by the recipient.


Digital Media Content Environments



FIG. 1 illustrates an example digital media content environment, in accordance with an embodiment.


As illustrated in FIG. 1, in accordance with an embodiment, a media device 102, operating as a client device, can receive and play media content provided by a media server system 142 (media server), or by another system or peer device. In accordance with an embodiment, the media device can be, for example, a personal computer system, handheld entertainment device, tablet device, smartphone, television, audio speaker, in-car entertainment system, or other type of electronic or media device that is adapted or able to prepare a media content for presentation, control the presentation of media content, and/or play or otherwise present media content.


In accordance with an embodiment, each of the media device and the media server can include, respectively, one or more physical device or computer hardware resources 104, 144, such as one or more processors (CPU), physical memory, network components, or other types of hardware resources.


Although, for purposes of illustration, a single client media device and media server are shown, in accordance with an embodiment a media server can support the simultaneous use of a plurality of client media devices. Similarly, in accordance with an embodiment, a client media device can access media content provided by a plurality of media servers, or switch between different media streams produced by one or more media servers.


In accordance with an embodiment, the media device can optionally include a touch-enabled or other type of display screen having a user interface 106, which is adapted to display media options, for example as an array of media tiles, thumbnails, or other format, and to determine a user interaction or input. Selecting a particular media option, for example a particular media tile or thumbnail, can be used as a command by a user and/or the media device, to the media server, to download, stream or otherwise access a corresponding particular media content item or stream of media content.


In accordance with an embodiment, the media device can also include a software media application 108, together with an in-memory client-side media content buffer 110, and a client-side data buffering logic or software component 112, which can be provided as software or program code that is executable by a computer system or other processing device, and which can be used to control the playback of media content received from the media server, for playing either at a requesting media device (i.e., controlling device) or at a controlled media device (i.e., controlled device), in the manner of a remote control.


In accordance with an embodiment, a connected media environment logic or software component 120, which can be provided as software or program code that is executable by a computer system or other processing device, can be provided at the media device, either as part of the media application, or separately, for example as a firmware, to enable the media device to participate within a connected media environment (e.g., a Spotify Connect environment) that enables a user to control the playback of media content at such controlled devices.


In accordance with an embodiment, the client-side data buffering logic, together with the media content buffer, enables a portion of media content items, or samples thereof, to be pre-buffered at a client media device. For example, while media options are being prepared for display on a user interface, e.g., as media tiles or thumbnails, their related media content can be pre-buffered at the same time, and cached by one or more media devices in their media content buffers, for prompt and efficient playback when required.


In accordance with an embodiment, the media server can include an operating system 146 or other processing environment which supports execution of a media server 150 that can be used, for example, to stream music, video, or other forms of media content to a client media device, or to a controlled device.


In accordance with an embodiment, the media server can provide a subscription-based media streaming service, for which a client media device or user can have an associated account and credentials, and which enable the user's media device to communicate with and receive content from the media server. A received media-access request from a client media device can include information such as, for example, a network address, which identifies a destination media device to which the media server should stream or otherwise provide media content, in response to processing the media-access request.


For example, a user may own several media devices, such as a smartphone and an audio speaker, which can play media content received from a media server. In accordance with an embodiment, identifying information provided with a media-access request can include an identifier, such as an IP address, MAC address, or device name, which identifies that the media-access request is intended for use with a particular destination device. This allows a user, for example, to use their smartphone as a controlling device, and their audio speaker as a controlled device to which media content should be sent. The media server can then send the requested media and/or forward the media-access request to the audio speaker, even though the request originated at the user's smartphone.


In accordance with an embodiment, one or more application interface(s) 148 can receive requests from client media devices, or from other systems, to retrieve media content from the media server. A context database 162 can store data associated with the presentation of media content by a client media device, including, for example, a current position within a media stream that is being presented by the media device, or a playlist associated with the media stream, or one or more previously-indicated user playback preferences. The media server can transmit context information associated with a media stream to a media device that is presenting that stream, so that the context information can be used by the device, and/or displayed to the user. The context database can be used to store a media device's current media state at the media server, and synchronize that state between devices, in a cloud-like manner. Alternatively, media state can be shared in a peer-to-peer manner, wherein each device is aware of its own current media state which is then synchronized with other devices as needed.


For example, in accordance with an embodiment, when the destination media device to which the media content is being streamed changes, say from a controlling device to a controlled device, or from a first controlled device to a second controlled device, then the media server can transmit context information associated with an active media content to the newly-appointed destination device, for use by that device in playing the media content.


In accordance with an embodiment, a media content database 164 can include media content, for example music, songs, videos, movies, or other media content, together with metadata describing that media content. The metadata can be used to enable users and client media devices to search within repositories of media content, to locate particular media content items.


In accordance with an embodiment, a server-side media content buffering logic or software component 180, which can be provided as software or program code that is executable by a computer system or other processing device, can be used to retrieve or otherwise access media content items, in response to requests from client media devices or other systems, and to populate a server-side media content buffer 181, at a media delivery component or streaming service 152, which can be similarly provided as software or program code that is executable by a computer system or other processing device, with streams 182, 184, 186 of corresponding media content data, which can then be returned to the requesting device or to a controlled device.


In accordance with an embodiment, a plurality of client media devices, media server systems, and/or controlled devices, can communicate with one another using a network, for example the Internet 190, a local area network, peer-to-peer connection, wireless or cellular network, or other form of network. For example, a user 192 can interact 194 with the user interface at a client media device, and issue requests to access media content, for example the playing of a selected music or video item at their device, or at a controlled device, or the streaming of a media channel or video stream to their device, or to a controlled device.


In accordance with an embodiment, the user's selection of a particular media option can be communicated 196 to the media server, via the server's application interface. The media server can populate its server-side media content buffer at the server 204, with corresponding media content, 206 including one or more streams of media content data, and can then communicate 208 the selected media content to the user's media device, or to a controlled device as appropriate, where it can be buffered in a client-side media content buffer for playing at the device.


In accordance with an embodiment, and as further described below, the system can include a server-side media gateway or access point 220, which can be provided as software or program code that is executable by a computer system or other processing device, or other process or component, which operates as a load balancer in providing access to one or more servers, for use in processing requests at those servers. The system can enable communication between a client media device and a server, via an access point at the server, and optionally the use of one or more routers, to allow requests from the client media device to be processed either at that server and/or at other servers.


For example, in a Spotify media content environment, Spotify clients operating on media devices can connect to various Spotify back-end processes via a Spotify “accesspoint”, which forwards client requests to other servers, such as sending one or more metadataproxy requests to one of several metadataproxy machines, on behalf of the client or end user.


Access to Media Content from Social Messaging Environments


In accordance with an embodiment, the system can enable access to digital media content via a social messaging environment, for example through the use of a client-side messaging application, or a software conversational agent or “bot”. The media server can recommend or otherwise determine items of media content appropriate to a particular user interaction. The recommended media content can be provided to a media device, in the form of a link or other type of reference by which the user of the device can stream, download, access, or otherwise use the media content.



FIG. 2 illustrates a system that enables access to media content from a social messaging environment, in accordance with an embodiment.


As illustrated in FIG. 2, in accordance with an embodiment, a social messaging environment 240 enables, for each user, a user environment 244 that provides a user experience, and the use of a messaging application 246 that enables interaction by the user with the social messaging environment and with other users.


In accordance with various embodiments, different types of social messaging environments can be supported, including, for example, social networking or social media environments (e.g., Instagram), which support the sharing of picture-based or other messages between different users, or social messaging environments (e.g., Facebook Messenger) which support the use of a media content bot that operates according to a bot conversation logic to provide access to a media content environment.


In accordance with an embodiment, the media server can include a recommendation application program interface (API), which is accessible, e.g., via a HTTP URL, and which provides access to a recommendation engine 252 that provides media content recommendations in response to interactions or conversations with the social messaging environment.


For example, in accordance with an embodiment, during the interaction 248 by a user with the social messaging environment, the messaging application or bot can access the media server, via the recommendation API, and provide a user interaction information 245, to the recommendation engine, for its use in determining a media content recommendation 249, and populating 250 the media delivery component or streaming service with the recommended media content 251.


The media server can then return, as part of the conversation or other interaction with the user, a media content recommendation in the form of a link or other type of reference by which the user of the device can stream, download, access, or otherwise use the media content.


In accordance with an embodiment, the recommendation engine can determine a media content recommendation based on criteria such as, for example, a user's prior listening history, or favorite media content; other user characteristics such as demographic information; external-sourced information, such as the current weather at the user's locations; or other types of criteria.


In accordance with an embodiment, once the link or other type of reference to access the recommended media content has been returned to the media device as part of the interaction, it can be processed by the media device, to request that the recommended media content be returned either to the media device or to a controlled device, for playback at that device.


For example, the link or reference to an item of media content can be provided as:


https://open.spotify.com/track/01G6a8O85SXIH05upiDN1N


The above link can then be passed or otherwise processed by a media server web service API, to request the associated media content.


In accordance with various embodiments, the messaging application or media content bot can either operate anonymously, or can perform an authentication or account verification at the media server, for example, to indicate the user as a Spotify user, and customize the response accordingly.


Creation of Video Moments


In accordance with an embodiment, the system includes support for association of a song, music, or other media content with a user's video content.


The system enables a user to add a song, music, or other media content that is associated with an audio clip and a song metadata, of a media content they may be currently listening, or have just listened, to a video they are about to create, or have created. Using a video capture mode of a messaging application, or other video creation application, the user can associate a song metadata with a video, for example as an overlay, to create a shareable file or other set of data, generally referred to herein as a video moment.


A recipient of the video moment hear the audio clip in combination with the video content, and can also view the song metadata overlay, to determine the name of the song and artist that was used in the video, or optionally access the song at a media server, for further listening by the recipient.



FIG. 3 illustrates the association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.


As illustrated in FIG. 3, in accordance with an embodiment, a social messaging environment enables a messaging application, or other video creation application, to be used by a user, to interact with a user environment or with other users of the social messaging environment.


As further illustrated in FIG. 3, in accordance with an embodiment, the messaging application enables the creation of video content, by a user, for example using a camera feature of their media device.


In accordance with an embodiment, the user can either capture a new video content, or can user the functionality of their media device to retrieve a previously-recorded and saved video content.


In accordance with an embodiment, the media server can include a recommendation engine, as described above, which can be used to provide media content recommendations, in response to interactions or conversations with the system or with a social messaging environment.


In accordance with an embodiment, a user can interact with the social messaging environment, and utilize the video capabilities of their messaging application, together with a current playing song, last-played song, or other song or music 254, as provided by the media server, to create 256 a video moment.


In accordance with an embodiment, the video moment 260 can be associated with a song metadata 262 indicative of the, e.g., current playing song.


In accordance with an embodiment, the song metadata provides an indication, for example a descriptive song title, that a media server can use to identify a particular song, music, or other media content that is stored at, or capable of being provided by, that media server; and to respond accordingly.


For example, in accordance with an embodiment, each particular item of media content can be associated with a 30-second audio clip from a recognizable portion of that item of media content. A media server can provide access to a 30-second clip API, which receives requests from media devices, or other devices or applications, that include a particular song metadata, and responds by streaming or otherwise providing the 30-second audio clip associated with that song.


In accordance with an embodiment, other information that might be useful in providing a context for the video moment, for example a location information, or other information provided by sensors with a user's media device, can be associated with the video moment.


In accordance with an embodiment, a media file, for example a Moving Picture Experts Group (MPEG)-4 (MP4) file, or other type of media file format enabled by the capabilities of the media device and which enables metadata information to be associated with the video content of that file, for example as part of a file header information, can then be created.


In accordance with an embodiment, once created, the video moment can be provided 270, for example as an MP4 file, or other type of media file or set of data, to one or more users (recipients) 280, for example a user participating within the social messaging environment, where the recipient can either play 282 the video moment, and/or optionally access 284 the media content identified by the song metadata, at the media server.



FIG. 4 further illustrates the association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.


As illustrated in FIG. 4, in accordance with an embodiment, a user can indicate they wish to create a video moment (290).


A messaging application that enables creation of video content (e.g., Snapchat, Messenger, Instagram, or other application or component), and which can be provided as software or program code that is executable by a computer system or other processing device, is opened, and a song or music portion added to a recorded video, to create a video moment (292, 294).


For example, a user can long-press the video capture screen of their media device, to add a current playing song to a messaging application, or to a media application or music player (e.g., a Spotify app); or a last-played song if no song is currently playing; to add the song metadata to the video (296).



FIG. 5 further illustrates the association of a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.


As illustrated in FIG. 5, in accordance with an embodiment, once an, e.g., long-press action has been completed, a selected song metadata, e.g., song name and/or artist name 300, for the current song, music, or other media content can be added as an overlay to the video, so that the recipient can both hear the song clip, and see the song metadata when they view the video.


In accordance with various embodiments, the techniques described above can also be used in combination with features such as the programming of song suggestions, as described, for example, in U.S. patent application titled “SYSTEM AND METHOD FOR PROGRAMMING OF SONG SUGGESTIONS FOR USERS OF A SOCIAL MESSAGING ENVIRONMENT”; application Ser. No. 15/858,457, filed Dec. 29, 2017; or the providing of a live lyrics overlay, as described, for example, in U.S. patent application titled “SYSTEM AND METHOD FOR PROVIDING A VIDEO WITH LYRICS OVERLAY FOR USE IN A SOCIAL MESSAGING ENVIRONMENT”; application Ser. No. 15/858,507, filed Dec. 29, 2017; each of which above applications are herein incorporated by reference.



FIG. 6 illustrates a process of associating a song, music, or other media content with a user's video content, to create a video moment, in accordance with an embodiment.


As illustrated in FIG. 6, in accordance with an embodiment, at step 302, a media application is provided for use in accessing media content at a media server, for playing at a media device.


At step 304, a messaging application that enables creation of video content (e.g., Snapchat, Messenger, Instagram, or other application or component) is opened, and a song or music portion added to a recorded video, to create a video moment.


At step 306, a current playing song, last-played song, or other song or music, is added as a song metadata to the video moment.


At step 308, upon receipt and playback of the video moment, by a user of the social messaging environment, the song metadata can be used in accessing the media content at the media server.


In accordance with an embodiment, a method can, for example, comprise some or all of the steps of (a) each media device client includes a media application (e.g., Spotify app), and a messaging application (e.g., Messenger) that enables participation in a social messaging environment; (b) each media content item (e.g., audio clip of a song) accessible at the media server is associated with a reference, e.g., a link that allows the media content to be accessed at the media server and played on the device; (c) while a user interacts with the messaging application, it can use the device camera to record a video (e.g., an MP4 file), for use with the messaging application; (d) while creating the video for use with the messaging application, a selected media content item (e.g., an audio clip of a currently playing song) is associated with the video; (e) also while creating the video, a metadata describing the selected media content item is associated with the video (e.g., as an MP4 header information); (f) the video, including metadata describing the selected media content item, is communicated to another user (a recipient) of the messaging environment as a video moment; (g) the recipient plays the video moment, which provides access to the metadata and causes the selected media content item associated with the video to be accessed at the media server.


In accordance with an embodiment, a media server system for association of a media content with a user's video content can, for example, comprise a computer, including a media server executing thereon which is configured to receive requests from media device clients to access media content comprising at least a part of at least one song, whereby the system is operative to, from a video creation application (e.g., via a media application acting as a client to the media server) in a first media device, receive a request for media content to be associated with a video created by the video creation application; select an item (e.g., audio clip of a song) of the media content; and to the video creation application, send a reference (e.g., a link) to the selected media content item, and metadata of the selected media content item, for creating a video moment. In accordance with an embodiment, optionally the system can be operative to, from a messaging application in a second media device (of a recipient user), receive a request for the selected media content item based on the previously sent reference and metadata; and send the requested media content item to the messaging application for playing the video moment at the second media device.


In accordance with an embodiment, a method performed by a media server system can comprise, for example, from a video creation application (e.g., via a media application acting as a client to the media server) in a first media device, receiving a request for media content to be associated with a video created by the video creation application; selecting an item (e.g., audio clip of a song) of the media content; and to the video creation application, sending a reference (e.g., a link) to the selected media content item, and metadata of the selected media content item, for creating a video moment. In accordance with an embodiment, optionally the method can comprise, from a messaging application in a second media device (of a recipient user), receiving a request for the selected media content item based on the previously sent reference and metadata; and sending the requested media content item to the messaging application for playing the video moment at the second media device.


In accordance with an embodiment, a method performed in a first media device can, for example comprise, to a media server, from a video creation application (e.g., via a media application acting as a client to the media server) in the first media device, sending a request for media content to be associated with a video created by the video creation application; from the media server, to the video creation application, receiving a reference (e.g., a link) to a media content item, and metadata of the selected media content item; and creating a video moment by means of the created video in combination with the media content item accessed by means of the received reference.


In accordance with an embodiment, a video moment can comprise, for example, audio of a song which is suggested by the system. When a user uses the application to create a video moment, the system may, e.g., suggest a song as audio (suggested media content) for the video moment by means of the recommendation engine, e.g., in response to a request from the application (possibly in the social messaging environment), which request may be sent, e.g., automatically in response to the user creating the video moment or in response to an input by the user via the user interface (for instance by long pressing).


In accordance with an embodiment, the messaging application can, for example, obtain the audio/song for the video moment, communicate with the media server system directly, or the messaging application may communicate with the media server system via the media application, regardless of whether the audio/song is selected by the user, by the messaging application, by the media application, or by the recommendation engine.


In accordance with an embodiment, in a case of the recommendation engine is used to suggest a media content, the messaging application can, for example, be configured to, for instance in response to an input from the user such as a long press on a touch screen of a display showing the video of the video moment, communicate a request to the recommendation engine which would cause the recommendation engine to provide a suggested audio/song for use in the video moment being created.


In accordance with an embodiment, in a case of the currently playing song is instead used in creating the video moment, the messaging application can instead be configured to, for instance in response to an input from the user such as a long press on a touch screen of a display showing the video of the video moment, associate the currently playing song with the video moment being created.


Programming of Song Suggestions


In accordance with an embodiment, the system includes support for programming of song suggestions for users of a social messaging environment.


The system enables a user to add media content, for example a song or music, to a video, for sharing with other users.


A media server can provide media content recommendations or suggestions, in response to interactions or conversations with the system or with a social messaging environment. The suggestions can be used to prompt users of social or messaging environments, to create user generated content, thereby increasing the word-of-mouth, or viral distribution and promotion of such media content.


For example, in accordance with an embodiment, the system can be used to enable a user to add a song, music, or other media content that is associated with an audio clip and a song metadata, of a media content they may be currently listening, or have just listened, to a video they are about to create, or have created. Using a video capture mode of a messaging application, or other video creation application, the user can associate a song metadata with a video content. A recipient of the video can hear the audio clip in combination with the video content, and can also view the song metadata overlay, to determine the name of the song and artist that was used in the video, or optionally access the song at a media server, for further listening by the recipient.



FIG. 7 illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.


As illustrated in FIG. 7, in accordance with an embodiment, a social messaging environment enables a messaging application, or video creation application, to be used by a user, to interact with a user environment or with other users of the social messaging environment.


As further illustrated in FIG. 7, in accordance with an embodiment, a messaging application (e.g., a Snapchat, or Messenger, etc. application), or a user-generated video content application (e.g., Instagram, etc.), enables the creation of video content, by a user, for example using a camera feature of their media device.


In accordance with an embodiment, the media server can include a recommendation engine, as described above, which can be used to provide media content recommendations or suggestions, in response to interactions or conversations with the system or with a social messaging environment.


In accordance with an embodiment, a user can interact with the messaging application, or other video creation application, including utilizing its video capabilities, to create 312 a video presentation, in combination with a suggested media content 314.


In accordance with an embodiment, the media server can provide 315 a set of recommended or suggested media content options 316, which can be displayed on the user interface for viewing and selection by the user, in creating a video presentation 320.


In accordance with an embodiment, the video presentation can be associated with a song metadata 322 indicative of the selected media content.


In accordance with an embodiment, the song metadata provides an indication, for example a descriptive song title, that a media server can use to identify a particular song, music, or other media content that is stored at, or capable of being provided by, that media server; and to respond accordingly.


For example, in accordance with an embodiment, each particular item of media content can be associated with a 30-second audio clip from a recognizable portion of that item of media content. A media server can provide access to a 30-second clip API, which receives requests from media devices, or other devices or applications, that include a particular song metadata, and responds by streaming or otherwise providing the 30-second audio clip associated with that song.


In accordance with an embodiment, other information that might be useful in providing a context for the video presentation, for example a location information, or other information provided by sensors with a user's media device, can be associated with the video presentation. Generally, the actual content of the video is not analyzed for purposes of making a determination of the context associated with that video content.


In accordance with an embodiment, a media file, for example a Moving Picture Experts Group (MPEG)-4 (MP4) file, or other type of media file format enabled by the capabilities of the media device and which enables metadata information to be associated with the video content of that file, for example as part of a file header information, can then be created.


In accordance with an embodiment, once created, the video presentation can be provided 330, to one or more users (recipients) 340, for example as an MP4 file, or other type of media file or set of data, where the recipient can either play 342 the video presentation, and/or optionally access 344 the media content identified by the song metadata, at the media server.



FIG. 8 further illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.


As illustrated in FIG. 8, in accordance with an embodiment, a user can indicate they wish to create a video presentation (350). A messaging application that enables creation of video content (e.g., Snapchat, Messenger, Instagram, or other application or component), is opened, to create a video presentation (352). For example, a user can long-press on a video creation screen to add a music clip to the video that they are creating.


In accordance with an embodiment, a media server, or other music streaming service, can provides a list of suggestions, that can be used to promote songs and artists, so that they can be distributed further as users create user generated content (UGC) (354).


During recording of the video presentation, a selection can be made on a video creation screen, to add a media content (e.g., music or song clip) to the video presentation being created, which enables a metadata associated with the selected media content to be associated with the video presentation (356).



FIG. 9 further illustrates the programming of song suggestions for users of a social messaging environment, in accordance with an embodiment.


As illustrated in FIG. 9, during recording of the video presentation, a selection can be made on a video creation screen, to add a media content (e.g., music or song clip) to the video presentation being created, which enables a metadata 360 associated with the selected media content to be associated with the video presentation, so that the recipient 362 can both hear the song clip, and see the song metadata when they play 364 the video.



FIG. 10 illustrates a process of programming song suggestions for users of a social messaging environment, in accordance with an embodiment.


As illustrated in FIG. 10, in accordance with an embodiment, at step 370, a media application is provided for use in accessing media content at a media server, for playing at a media device.


At step 372, a messaging application that enables creation of video content (e.g., Snapchat, Messenger, Instagram, or other application or component), is opened, to create a video presentation.


At step 374, a media server, or other music streaming service, provides a list of suggestions, that can be used to promote songs and artists, so that they can be distributed further as users create user generated content (UGC).


At step 376, during recording of the video presentation, a selection can be made on a video creation screen, to add a media content (e.g., music or song clip) to the video presentation being created, which enables a metadata associated with the selected media content to be associated with the video presentation.


At step 378, upon receipt and playback of the video presentation, by a user, the song metadata can be used in accessing the media content at the media server.


Embodiments of the present invention may be conveniently implemented using one or more conventional general purpose or specialized digital computer, computing device, machine, or microprocessor, including one or more processors, memory and/or computer readable storage media programmed according to the teachings of the present disclosure. Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art.


In some embodiments, the present invention includes a computer program product which is a non-transitory storage medium or computer readable medium (media) having instructions stored thereon/in which can be used to program a computer to perform any of the processes of the present invention. Examples of the storage medium can include, but is not limited to, any type of disk including floppy disks, optical discs, DVD, CD-ROMs, microdrive, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards, nanosystems (including molecular memory ICs), or any type of media or device suitable for storing instructions and/or data.


The foregoing description of embodiments of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations will be apparent to the practitioner skilled in the art.


For example, while the techniques described above generally illustrate examples such as a music streaming service such as Spotify, and streamed music or song content, the systems and techniques described herein can be similarly used with other types of media content environments, and other types of streamed data or media content.


The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalents.

Claims
  • 1. A method for associating a media content item with video content of a user, comprising: recording video content from within a social messaging environment which uses a media content bot that operates according to bot conversation logic to provide access to a media server;receiving, from the media server, a set of media content items for display and selection;receiving, from within the social messaging environment, an input selecting a first media content item from the set of media content items to associate the first media content item with the video content being recorded;in response to the input, sending to the media server, an indication of the first media content item, wherein the indication is usable by the media server to identify the first media content item accessible at the media server;receiving, from the media server, access to an audio clip of the first media content item;generating a video presentation file, including combining the received audio clip of the first media content item from the media server with video content recorded from within the social messaging environment;associating metadata information of the first media content item with the video presentation file, such that the video content is accessible to a recipient device via the social messaging environment using the metadata information of the first media content item; anddisplaying a metadata overlay on the video presentation file, the metadata overlay including the associated metadata information of the first media content item received from the media server based on the indication of the selected first media content item.
  • 2. The method of claim 1, further comprising providing the video presentation file, including the metadata overlay, to the recipient device.
  • 3. The method of claim 2, wherein the recipient device accesses the first media content item from the media server without playing the video presentation file.
  • 4. The method of claim 1, wherein the first media content item is a currently playing song.
  • 5. The method of claim 1, wherein the set of media content items is provided by the media server based on a recommendation engine.
  • 6. The method of claim 1, wherein the video presentation file is generated by a messaging or other video creation application.
  • 7. A client device comprising: one or more processors; andmemory storing one or more programs, the one or more programs including instructions, which, when executed by the one or more processors, cause the one or more processors to perform a set of operations, including: recording video content from within a social messaging environment which uses a media content bot that operates according to bot conversation logic to provide access to a media server;receiving, from the media server, a set of media content items for display and selection;receiving, from within the social messaging environment, an input selecting a first media content item from the set of media content items to associate the first media content item with the video content being recorded;in response to the input, sending to the media server, an indication of the first media content item, wherein the indication is usable by the media server to identify the first media content item accessible at the media server;receiving, from the media server, access to an audio clip of the first media content item;generating a video presentation file, including combining the received audio clip of the first media content item from the media server with video content recorded by the client device from within the social messaging environment;associating metadata information of the first media content item with the video presentation file, such that the video content is accessible to a recipient device via the social messaging environment using the metadata information of the first media content item; anddisplaying a metadata overlay on the video presentation file, the metadata overlay including the associated metadata information of the first media content item received from the media server based on the indication of the selected first media content item.
  • 8. The client device of claim 7, the instructions including instructions for, providing the video presentation file, including the metadata overlay, to the recipient device.
  • 9. The client device of claim 8, wherein the recipient device accesses the first media content item from the media server without playing the video presentation file.
  • 10. The client device of claim 7, wherein the first media content item is a currently playing song.
  • 11. The client device of claim 7, wherein the set of media content items is provided by the media server based on a recommendation engine.
  • 12. The client device of claim 7, wherein the video presentation file is generated by a messaging or other video creation application.
  • 13. A non-transitory computer-readable storage medium storing one or more programs that include instructions, which, when executed by a client device with one or more processors, cause the client device to perform a set of operations, including: recording video content from within a social messaging environment which uses a media content bot that operates according to bot conversation logic to provide access to a media server;receiving, from the media server, a set of media content items for display and selection;receiving, from within the social messaging environment, an input selecting a first media content item from the set of media content items to associate the first media content item with the video content being recorded;in response to the input, sending to the media server, an indication of the first media content item, wherein the indication is usable by the media server to identify the first media content item accessible at the media server;receiving, from the media server, access to an audio clip of the first media content item;generating a video presentation file, including combining the received audio clip of the first media content item from the media server with video content recorded by the client device from within the social messaging environment;associating metadata information of the first media content item with the video presentation file, such that the video content is accessible to a recipient device via the social messaging environment using the metadata information of the first media content item; anddisplaying a metadata overlay on the video presentation file, the metadata overlay including the associated metadata information of the first media content item received from the media server based on the indication of the selected first media content item.
  • 14. The non-transitory computer-readable storage medium of claim 13, the instructions further including instructions for, providing the video presentation file, including the metadata overlay, to the recipient device.
  • 15. The non-transitory computer-readable storage medium of claim 14, wherein the recipient device accesses the first media content item from the media server without playing the video presentation file.
  • 16. The non-transitory computer-readable storage medium of claim 13, wherein the first media content item is a currently playing song.
  • 17. The non-transitory computer-readable storage medium of claim 13, wherein the set of media content items is provided by the media server based on a recommendation engine.
  • 18. The non-transitory computer-readable storage medium of claim 13, wherein the video presentation file is generated by a messaging or other video creation application.
CLAIM OF PRIORITY

This application is a continuation of U.S. patent application titled “SYSTEM AND METHOD FOR ASSOCIATION OF A SONG, MUSIC, OR OTHER MEDIA CONTENT WITH A USER'S VIDEO CONTENT”, application Ser. No. 15/858,301, filed Dec. 29, 2017, and subsequently issued as U.S. Pat. No. 10,762,885 on Sep. 1, 2020; which claims the benefit of priority to U.S. Provisional Patent Application titled “SYSTEM AND METHOD FOR ASSOCIATION OF A SONG, MUSIC, OR OTHER MEDIA CONTENT WITH A USER'S VIDEO CONTENT”, Application No. 62/440,827, filed Dec. 30, 2016; U.S. Provisional Patent Application titled “SYSTEM AND METHOD FOR PROGRAMMING OF SONG SUGGESTIONS FOR USERS OF A SOCIAL MESSAGING ENVIRONMENT”, Application No. 62/440,833, filed Dec. 30, 2016; and U.S. Provisional Patent Application titled “SYSTEM AND METHOD FOR PROVIDING A VIDEO WITH LYRICS OVERLAY FOR USE IN A SOCIAL MESSAGING ENVIRONMENT”, Application No. 62/440,837, filed Dec. 30, 2016; each of which above applications are herein incorporated by reference.

US Referenced Citations (27)
Number Name Date Kind
8745500 Kostello et al. Jun 2014 B1
20040162878 Lewis Aug 2004 A1
20050123886 Hua et al. Jun 2005 A1
20060075425 Koch et al. Apr 2006 A1
20080163283 Tan et al. Jul 2008 A1
20080274687 Roberts et al. Nov 2008 A1
20110063317 Gharaat et al. Mar 2011 A1
20110066940 Asghari Kamrani et al. Mar 2011 A1
20110087971 Kamrani et al. Apr 2011 A1
20110283236 Beaumier et al. Nov 2011 A1
20120141095 Schwesinger Jun 2012 A1
20130030909 Shih Jan 2013 A1
20130031497 Arrasvuori Jan 2013 A1
20130086159 Gharachorloo et al. Apr 2013 A1
20130290818 Arrasvuori et al. Oct 2013 A1
20140009475 Selton et al. Jan 2014 A1
20140233917 Xiang Aug 2014 A1
20140298217 Lehtiniemi et al. Oct 2014 A1
20140337374 Glass Nov 2014 A1
20140341527 Hurley et al. Nov 2014 A1
20150053067 Goldstein Feb 2015 A1
20150058733 Novikoff Feb 2015 A1
20150139615 Hill May 2015 A1
20150262005 Ohmura et al. Sep 2015 A1
20160012853 Cabanilla Jan 2016 A1
20160057316 Godfrey et al. Feb 2016 A1
20180025752 Patel et al. Jan 2018 A1
Foreign Referenced Citations (1)
Number Date Country
1936989 Jun 2008 EP
Non-Patent Literature Citations (18)
Entry
“JamCam on the App Store,” https://itunes.apple.com/us/jamcam/id70S317441?mt=8, 2 pages (Retrieved on Dec. 19, 2018).
“JamCam screenshots,” 6 pages, XP055536567. (Retrieved on Dec. 19, 2018).
U.S. Patent and Trademark Office, Office Action dated Jul. 24, 2018 for U.S. Appl. No. 15/858,301, 13 pgs.
U.S. Patent and Trademark Office, Final Office Action dated Jan. 18, 2019 for U.S. Appl. No. 15/858,301, 13 pgs.
U.S. Patent and Trademark Office, Office Action dated Aug. 6, 2019 for U.S. Appl. No. 15/858,301, 16 pgs.
U.S. Patent and Trademark Office, Notice of Allowance dated Apr. 22, 2020 for U.S. Appl. No. 15/858,301, 16 pgs.
U.S. Patent and Trademark Office, Office Action dated Jun. 25, 2018 for U.S. Appl. No. 15/858,457, 16 pgs.
U.S. Patent and Trademark Office, Office Action dated Dec. 7, 2018 for U.S. Appl. No. 15/858,457, 25 pgs.
U.S. Patent and Trademark Office, Office Action dated Aug. 6, 2019 for U.S. Appl. No. 15/858,457, 17 pgs.
U.S. Patent and Trademark Office, Office Action dated Mar. 13, 2018 for U.S. Appl. No. 15/858,507, 17 pgs.
U.S. Patent and Trademark Office, Office Action dated Jul. 16, 2018 for U.S. Appl. No. 15/858,507, 22 pgs.
U.S. Patent and Trademark Office, Office Action dated Mar. 4, 2019 for U.S. Appl. No. 15/858,507, 10 pgs.
European Search Report dated Feb. 13, 2018 for European Patent Application No. 17210731.0, 6 pgs.
Office Action issued by the European Patent Office for European Patent Application No. 17210731.0 dated Aug. 14, 2018, 4 pgs.
Summons to attend oral proceedings issued by the European Patent Office for European Patent Application No. 17210731.0 mailed Feb. 26, 2019, 14 pgs.
European Search Report dated Feb. 13, 2018 for European Patent Application No. 17209086.2, 7 pgs.
Office Action issued by the European Patent Office for European Patent Application No. 17209086.2 dated May 8, 2019, 5 pgs.
Summons to attend oral proceedings issued by the European Patent Office for European Patent Application No. 17209086.2 mailed Oct. 9, 2019, 6 pgs.
Related Publications (1)
Number Date Country
20210225343 A1 Jul 2021 US
Provisional Applications (3)
Number Date Country
62440837 Dec 2016 US
62440827 Dec 2016 US
62440833 Dec 2016 US
Continuations (1)
Number Date Country
Parent 15858301 Dec 2017 US
Child 17007379 US