Live streaming shopping experience

Information

  • Patent Grant
  • 11823311
  • Patent Number
    11,823,311
  • Date Filed
    Tuesday, September 22, 2020
    4 years ago
  • Date Issued
    Tuesday, November 21, 2023
    a year ago
  • Inventors
  • Original Assignees
  • Examiners
    • Dyer; Andrew R
    Agents
    • Cognition IP, P.C.
    • Steakley; Edward
    • Fotedar; Rajesh
Abstract
Methods, systems and computer products as described herein are directed to a Live Listing Engine. Live Listing Engine sends a live video stream to a viewer computer device and a host computer device. The live video stream includes a view of an item from a perspective of the host computer device. The Live Listing Engine receives an upload of an image of the view of the item captured from a preview window rendered on the host computer device. The Live Listing Engine receives listing information associated with the image from the host computer device. The Live Listing Engine generates a listing thumbnail based on the image and the listing information and inserts the listing thumbnail into the live video stream for display at the viewer computer device and the host computer device.
Description
BACKGROUND

Live video streaming allows for video data to be sent to multiple computer devices for display at each computer device. Various websites allow for channels associated with a primary user account that is a source of produced content, either as recorded content for later playback or as content produced in real-time or on-demand. Such conventional channels further allow for other user accounts to submit comments to a webpage associated with the channel and/or send messages to the primary user account during distribution of real-time or on-demand content.


SUMMARY

Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims and the drawings. The detailed description and specific examples are intended for illustration only and are not intended to limit the scope of the disclosure.


Methods, systems and computer products as described herein are directed to a Live Listing Engine for adding a listing of an item(s) for sale “on the fly” during a live video stream. According to various embodiments, the item listing may be generated “on the fly” by a host of a live video stream after the host has displayed a view of the item to an audience of the live video stream. Such “on the fly” generation of the item listing occurs concurrently with the host's live video stream and the live video stream is uninterrupted as the host generates the item listing at the host's computer device and as an icon (or thumbnail) of the item listing is inserted in the live video stream for display to the audience.


According to various embodiments, the Live Listing Engine provides a host of a live video stream with one or more functionalities to display a view of an item from the perspective of a camera of the host's computer device during a live video stream. The view of the item may be displayed in the live video stream before the host creates a listing for the sale of that item. By providing the view of the item to one or more viewers of the live video stream, the host is afforded an opportunity to discern whether the viewers are interested in purchasing the item before the host has to invest time and effort populating an e-Commerce sales system with information to the support the item's sale. If the hosts decides to sell the item, the Live Listing Engine provides functionalities for creating an item sales listing “on the fly” by generating a thumbnail based on the host computer device's view of the item and listing information provided by the host during the live video stream. The Live Listing Engine inserts the thumbnail into the live video stream and a viewer(s) may thereby select (i.e. tap) the displayed thumbnail in order to purchase the item. It is understood that a host may be an end-user of the host computer device and a viewer may be an end-user of the viewer computer device. The host computer device and the viewer computer device may each be a mobile computer device. There may be any number of viewers and the host may sell any type of item. An item listing may be for a sale of a physical product or a service. For example, a listing for a service may be to sell a digital service provided during an online session.


According to various embodiments, a view of an item from a perspective of a camera of the host computer device may be displayed within a graphical user interface at the host computer device. Video data is sent from the host computer device in order for display of the view of the item within respective graphical user interfaces of viewer computer devices. The Live Listing Engine receives the video data from the host computer device. The Live Listing Engine generates a live video stream based on the host computer device's video data. The live video stream thereby may include the video data received from the host computer device and stream data, such as one or more inserted thumbnails, notifications, functionalities, etc. As such, the live video stream sent from the Live Listing Engine to the host computer device may be based on the stream data (i.e. inserted thumbnails, notifications, functionalities) without the video data since the video data originates from the host computer device and will be displayed at the host computer device via the camera. The live video stream sent from the Live Listing Engine to a viewer computer device(s) will be based on the video data and stream data.


According to various embodiments, the host computer device initiates upload of an image of an item to the Live Listing Engine. As the Live Listing Engine receives the upload, the live video stream is still being delivered to the host and viewer computer devices. Listing information may further be input at the host computer device while the image upload is in progress. The listing information may include an item name, price and inventory (i.e. quantity available for purchase). According to various embodiments, a resolution of the uploaded image of an item may be a resolution associated with a displayed view of the item in a camera preview window.


The Live Listing Engine generates a first thumbnail with one or more graphical overlays based on the listing information. The Live Listing Engine may receive updated listing information from the host computer device and may further generate an updated first thumbnail based on the updated listing information.


Further areas of applicability of the present disclosure will become apparent from the detailed description, the claims and the drawings. The detailed description and specific examples are intended for illustration only and are not intended to limit the scope of the disclosure.





BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure will become better understood from the detailed description and the drawings, wherein:



FIG. 1 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 2 is a flowchart illustrating exemplary methods that may be performed in some embodiments.



FIG. 3 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 4 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 5 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 6 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 7 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 8 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 9 is a diagram illustrating an exemplary environment in which some embodiments may operate.



FIG. 10 is a diagram illustrating an exemplary computer that may perform processing in some embodiments.





DETAILED DESCRIPTION

In this specification, reference is made in detail to specific embodiments of the invention. Some of the embodiments or their aspects are illustrated in the drawings.


For clarity in explanation, the invention has been described with reference to specific embodiments, however it should be understood that the invention is not limited to the described embodiments. On the contrary, the invention covers alternatives, modifications, and equivalents as may be included within its scope as defined by any patent claims. The following embodiments of the invention are set forth without any loss of generality to, and without imposing limitations on, the claimed invention. In the following description, specific details are set forth in order to provide a thorough understanding of the present invention. The present invention may be practiced without some or all of these specific details. In addition, well known features may not have been described in detail to avoid unnecessarily obscuring the invention.


In addition, it should be understood that steps of the exemplary methods set forth in this exemplary patent can be performed in different orders than the order presented in this specification. Furthermore, some steps of the exemplary methods may be performed in parallel rather than being performed sequentially. Also, the steps of the exemplary methods may be performed in a network environment in which some steps are performed by different computers in the networked environment.


Some embodiments are implemented by a computer system. A computer system may include a processor, a memory, and a non-transitory computer-readable medium. The memory and non-transitory medium may store instructions for performing methods and steps described herein.



FIG. 1 is a diagram illustrating an exemplary environment in which some embodiments may operate. FIG. 1 illustrates a block diagram of an example system 100 that includes a live video stream module 104, an upload module 106, a listing module module 108, a thumbnail module 110 and a purchase module 112. The system 100 may communicate with a user device 140 via a network to display output, via a user interface 144 generated by an application engine 142. The database 120 may further be a component of the system 100 and may be implemented in any manner that promotes retrieval and storage efficiency, privacy and/or data security.


The live video stream module 104 of the system 100 may perform functionality for as illustrated in FIGS. 2, 3, 4, 5, 6, 7, 8 and 9.


The upload module 106 of the system 100 may perform functionality for as illustrated in FIGS. 2, 3 and 4.


The listing module 108 of the system 100 may perform functionality for as illustrated in FIGS. 2 and 4.


The thumbnail module 110 of the system 100 may perform functionality as illustrated in FIGS. 2, 5, 7, 8 and 9.


The purchase module 112 of the system 100 may perform for functionality as illustrated in FIGS. 6, 7 and 8.


It is understood that execution of one or more operations, steps and/or acts described herein may be performed by the system 100, the application engine 142 and/or distributed across the system 100 and the application engine 142.


As shown in the flowchart 200 in FIG. 2, the Live Listing Engine sends a live video stream to a viewer computer device(s) and a host computer device (Act 202). The live video stream includes a view of an item from a perspective of a camera of the host computer device. The host computer device captures an image of the view of the item while the view of the item is included in the live video stream. According to various embodiments, the view of the item may be a view via an image preview window. The resolution of the image may correspond to a resolution of the image preview window.


The Live Listing Engine receives an upload of an image of the view of the item captured from a preview window rendered on the host computer device (Act 204). The Live Listing Engine receives listing information associated with the image from the host computer device (Act 206). The Live Listing Engine generates a listing thumbnail based on the image and the listing information (Act 208) and inserts the listing thumbnail into the live video stream for display at the viewer computer device and the host computer device (Act 210).


According to various embodiments, the Live Listing Engine receives a request to purchase the item based on a selection of the listing thumbnail displayed at the viewer computer device during the live video stream. The purchase may be a purchase of the item by a viewer to be sent to a physical address of that viewer. In some embodiments, the purchase may be a gift purchase of the item by a first viewer to be sent to a physical address of a second viewer upon receiving the second viewer's approval (or acceptance) of the gift. It is understood that all the features, operations and steps described herein may be performed while the live video stream is being sent to the viewer and host computer devices.


According to various embodiments, one or more acts of the exemplary flowchart may be initiated in response to one or more voice commands. For example, a person who is the host of the live video stream may speak a voice command such as “Create listing” proximately to a microphone of the host computer device. Upon detecting the voice command, Live Listing Engine module operating on the host computer device may initiate an “on the fly” listing creation sequence based on flowchart 200.


It is understood that some of the acts of exemplary flowchart 200 may be performed in different orders or in parallel. Also, one or more of the acts in the exemplary flowcharts 200 and 320 may occur in two or more computers, for example if the method is performed in a networked environment. Various acts may be optional. Some acts may occur on local computer with other acts occur on a remote computer.


According to a peer-to-peer embodiment, the Live Listing Engine may be one or more modules distributed across the host computer device and one or more viewer computer devices that work in coordination with each other to execute the operations, steps and acts described therein. For example, a Live Listing Engine module operating on the host computer device may send video data directly to one or more viewer computer devices. A Live Listing Engine module operating at respective viewer computer device may receive the video data and incorporate the video data with stream data for display in a graphical user interface at the respective viewer computer device.


Stream data may be generated by a Live Listing Engine module operating on any computer device (i.e. host and viewer) and sent to all other associated Live Listing Engine modules operating on other computer devices. For example, an item image may be captured at the host computer device and the Live Listing Engine module operating on host computer device may generate the listing thumbnail for the item and send the listing thumbnail to the Live Listing Engine modules operating on other computer devices. A purchase transaction for the item may be executed by a Live Listing Engine module operating on a viewer computer device, which further sends a purchase notification to the Listing Engine module operating on the host computer device. In response to the purchase notification, the Listing Engine module operating on the host computer device may update listing information associated with the item stored at the host computer. In other embodiments, the listing information may be stored at a data repository remote from the host computer device. The Live Listing Engine module operating at the host computer device may forward the purchase notification to the remote data repository to update the item's listing information stored at the remote data repository. In another embodiment, the Live Listing Engine module operating at the viewer computer device may send the purchase notification directly to the remote data repository to update the item's listing information stored at the remote data repository.


The Live Listing Engine module operating at the host computer device may receive the updated listing information and may generate an updated listing thumbnail for the sale of the item based on the updated listing information due to the purchase notification. For example, the updated listing information may modify the inventory information associated with the sale of the item and the updated listing thumbnail generated by the Live Listing Engine module operating at the host computer device may reflect a change in inventory. The Live Listing Engine module operating at the host computer device thereby sends the updated listing thumbnail and current video data to the Live Listing Engine modules operating at the respective viewer computer devices. For example, the Live Listing Engine module operating at the host computer may insert the updated listing thumbnail into the video data in order to generate the live video stream and send the live video stream to the Live Listing Engine modules operating at the respective viewer computer devices.


As shown in FIG. 3, Live Listing Engine sends a live video stream to a viewer computer device and a host computer device. The live video stream includes a view of an item, such as a pair of headphones, from a camera associated with a host computer device. The live video stream is displayed in a graphical user interface (GUI) 300 at the viewer computer device. The view of the item, captured by the host computer device, is included in the live video stream displayed in the viewer's GUI 300.


A host of the live video stream intends to offer the pair of headphones for sale during the live video stream. However, the host has not created a listing for the sale of the pair of headphones prior to showing the pair of headphones to the viewers of the live video stream. The host selects an image functionality associated with the host computer device. A preview window GUI 302 is displayed on the host computer device during the live video stream but is not displayed to the viewers of the live video stream. The preview window GUI 302 includes the view of the pair of headphones from the host computer device's camera. The preview window GUI 302 portrays of preview of an image of the headphones that may be captured at the host computer device. The preview window GUI 302 is further accompanied by an image capture region 304 that includes a selectable functionality 306 to trigger capture of an image of the host computer device camera's current view of the headphones.


Upon capture of the image, the host computer device initiates an upload of the image during the live video stream. The uploaded image is based on a preview image of the headphones rendered in the preview window. In other embodiments, the host computer device may capture a video clip, such as a short video clip, for example, with a duration of 2-3 seconds. The video clip may be uploaded to the Live Listing Engine during the live video stream and the video clip may be used for dynamic thumbnail generation instead of an image. It is understood that various embodiments may generate a thumbnail(s) for a listing based on an image(s), a .gif file(s) and/or a video file(s).


As shown in FIG. 4, the host populates listing information at the host computer device to be associated with the headphones while the image 402 of the headphones is uploaded to the Live Listing Engine. A listing GUI 400 includes display of the image 402 of the headphones and one or more fields to include various types of listing information, such as listing title, price information, discount price information and quantity (i.e. inventory). For example, the host inputs the listing title as the Live Listing Engine receives a portion of the upload of the image 402. The price for the headphones may be input as $450.00 while a discount price may be input as $400.00. When the listing information is complete, the host computer device sends the listing information to the Live Listing Engine. The quantity (i.e. inventory) information may the amount of one (“1”) in the case of the host having only one pair headphones for sale. During the live video stream, the Live Listing Engine creates and stores a listing for the sale of the headphones based on the image 402 and the listing information.


While streaming the live video stream to various computer devices, the Live Listing Engine generates a thumbnail of the image and inserts the thumbnail into the live video stream such that the thumbnail is displayed, for example, in the live video stream GUI 300 of the viewer computer device and a live video stream GUI 500 of the host computer device. For example, the live video stream may still include a current view of the headphones from the host computer device's camera while the Live Listing Engine generates the thumbnail. For example, the image uploaded to the Live Listing Engine for the thumbnail may be based on a first view of the headphones from the perspective of the host computer device's camera but the host may have moved or adjusted the host computer device to a different orientation after capturing the image of the first view of the item. While the Live Listing Engine generates the thumbnail, the live video stream may include a second view of the headphones from the perspective of the host computer device's camera according to the different orientation of the host computer device.


The Live Listing Engine generates the thumbnail to include an overlay of a price indicator and an overlay of an inventory indicator. Both indicators are based on price information and inventory information, respectively, stored in the listing for the sale of the headphones. For example, an initial thumbnail for the sale of the headphones may include an overlay price indicator that displays the price of $450.00 and an overlay inventory indicator that displays the initial amount (“1”) of headphones in the host's possession that are available for purchase by viewers during the live video stream.


In another embodiment, the Live Listing Engine may generate a timestamp for the listing information. The timestamp may represent a time in the live video stream at which the initial thumbnail was inserted into the live video stream. The timestamp may be used by the host and/or viewer(s) during playback of the live video stream. The Live Listing Engine may generate a visual cue based on the timestamp to indicate when an item's corresponding thumbnail was displayed during a timeline of the recorded live video stream.


As shown in FIG. 5, while sending the live video stream with the initial thumbnail to the viewer and host computer devices, the Live Listing Engine may receive updated price information the host computer device. For example, the host (i.e. end user of the host computer device) may select a discount functionality that changes a current price of the headphones to a discount price stored in the listing information. According to another example, the host may input a new price for the headphones, which the Live Listing Engine stores as updated price information in the listing information.


Upon receiving the updated price information, the Live Listing Engine generates a second thumbnail 510 for concurrent display at the host computer device with the live video stream in the live video stream GUI 500. The second thumbnail 510 is presented in a thumbnail preview GUI region 508. The second thumbnail 510 thumbnail includes an overlay 510 of an updated price indicator based on the updated price information. For example, if the host selected a discount price to be applied to the sale of the headphones, then the overlay 510 includes the discount price ($400.00). According to various embodiments, the Live Listing Engine many generate another timestamp for the listing information based on when the headphones were discounted during the live video stream.


According to various embodiments, the Live Listing Engine modifies the initial thumbnail previously inserted into the live video stream due to the updated price information. For example, the Live Listing Engine generates an updated overlay price indicator 504 that modifies a visual appearance of the initial price. The overlay inventory indicator 506 maintains the current number of headphones still available for purchase. The Live Listing Engine generates an updated thumbnail 502 with the respective overlays 504, 506 and inserts the updated thumbnail 502 into the live video stream for display of the updated thumbnail 502 in the viewer's live video stream GUI 300 and the host's live video stream GUI 500. According to various embodiments, the second thumbnail 510 in the thumbnail preview GUI region 508 may be concurrently displayed with the updated thumbnail 502 in the host's live video stream GUI 500.


As shown in FIG. 6, the Live Listing Engine receives a request to purchase the headphones based on a selection of the updated thumbnail 502 displayed in the viewer's live video stream GUI 300. For example, a viewer (end-user) of the viewer computer device may tap on the displayed updated thumbnail 502 to indicate an intent to purchase the headphones. During the live video stream, in response to the request to purchase, the viewer computer device displays a purchase GUI region 600 over a portion(s) of the viewer's live video stream GUI 300 from which the viewer can complete and finalize the purchase request. According to various embodiments, the purchase GUI region 600 includes the image of the headphones and information from the stored listing information that corresponds to the overlays 504, 506.


As shown in FIG. 7, upon finalizing the purchase request, viewer computer device displays a checkout GUI region 700 over a portion(s) of the viewer's live video stream GUI 300. The Live Listing Engine may further update the thumbnail 502 based on finalization of the purchase request via the checkout GUI region 700. For example, the Live Listing Engine may detect that the purchase request resulted in a sale of the last available pair of headphones offered by the host. The Live Listings Engine may update the overlay inventory indicator 506 by generating an updated overlay 704 that indicates that the host no longer has an inventory of headphones (“sold out”). The Live Listings Engine may generate an additional thumbnail 702 that includes the updated overlay 704 and insert the additional thumbnail 702 into the live video stream.


According to various embodiments, the Live Listings Engine may further generate one or more thumbnail layers 706, 708 in response to detecting the host no longer has an inventory of headphones. Each thumbnail layer 706, 708 may correspond to thumbnails for other respective items being offered for sale by the host during the live video stream. Each thumbnail that corresponds to a respective layer 706, 708 may generated in a manner to generation of other thumbnails 502, 702. In various embodiments, generating of respective thumbnail layers is not solely limited to detection of an item being sold out. The Live Listings Engine may generate thumbnail layers at any time during the live video stream to provide a viewer(s) with a visual cue that the host has additional items being offered for sale.


As shown in FIG. 8, upon completion of a purchase of the pair of headphones by a viewer, the Live Listing Engine displays a confirmation region GUI 800 over the live video stream GUI 300 of the viewer computer device. In addition, the Live Listing Engine updates the live video stream to include a notification 802 that identifies the particular viewer that purchased the pair of headphones from the host (“Eli M.”). The notification 802 may also include an identification of the item that was purchased. The Live Listing Engine may trigger display of an expansion functionality 804 that, when selected, may display one or more items associated with the thumbnail layers 706, 708.


As shown in FIG. 9, based on the selection of the expansion functionality 804, an item gallery region GUI 900 may be displayed on a viewer's computer device during the live video stream. The item gallery region GUI 900 may include a view of one or more thumbnails that correspond to items currently and/or previously offered for sale by the host. A respective thumbnail may be selected directly from the item gallery region GUI 900 in order to initiate a purchase request for the particular item that is represented by the selected thumbnail.



FIG. 10 illustrates an example machine of a computer system within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative implementations, the machine may be connected (e.g., networked) to other machines in a LAN, an intranet, an extranet, and/or the Internet. The machine may operate in the capacity of a server or a client machine in client-server network environment, as a peer machine in a peer-to-peer (or distributed) network environment, or as a server or a client machine in a cloud computing infrastructure or environment.


The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a server, a network router, a switch or bridge, or any machine capable of executing a set of instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein.


The example computer system 1000 includes a processing device 1002, a main memory 1004 (e.g., read-only memory (ROM), flash memory, dynamic random access memory (DRAM) such as synchronous DRAM (SDRAM) or Rambus DRAM (RDRAM), etc.), a static memory 1006 (e.g., flash memory, static random access memory (SRAM), etc.), and a data storage device 1018, which communicate with each other via a bus 1030.


Processing device 1002 represents one or more general-purpose processing devices such as a microprocessor, a central processing unit, or the like. More particularly, the processing device may be complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, or processor implementing other instruction sets, or processors implementing a combination of instruction sets. Processing device 1002 may also be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, or the like. The processing device 1002 is configured to execute instructions 1026 for performing the operations and steps discussed herein.


The computer system 1000 may further include a network interface device 1008 to communicate over the network 1020. The computer system 1000 also may include a video display unit 1010 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), an alphanumeric input device 1012 (e.g., a keyboard), a cursor control device 1014 (e.g., a mouse), a graphics processing unit 1022, a signal generation device 1016 (e.g., a speaker), graphics processing unit 1022, video processing unit 1028, and audio processing unit 1032.


The data storage device 1018 may include a machine-readable storage medium 1024 (also known as a computer-readable medium) on which is stored one or more sets of instructions or software 1026 embodying any one or more of the methodologies or functions described herein. The instructions 1026 may also reside, completely or at least partially, within the main memory 1004 and/or within the processing device 1002 during execution thereof by the computer system 1000, the main memory 1004 and the processing device 1002 also constituting machine-readable storage media.


In one implementation, the instructions 1026 include instructions to implement functionality corresponding to the components of a device to perform the disclosure herein. While the machine-readable storage medium 1024 is shown in an example implementation to be a single medium, the term “machine-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “machine-readable storage medium” shall also be taken to include any medium that is capable of storing or encoding a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present disclosure. The term “machine-readable storage medium” shall accordingly be taken to include, but not be limited to, solid-state memories, optical media and magnetic media.


Some portions of the preceding detailed descriptions have been presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the ways used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of operations leading to a desired result. The operations are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.


It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the above discussion, it is appreciated that throughout the description, discussions utilizing terms such as “identifying” or “determining” or “executing” or “performing” or “collecting” or “creating” or “sending” or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage devices.


The present disclosure also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the intended purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including floppy disks, optical disks, CD-ROMs, and magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, or any type of media suitable for storing electronic instructions, each coupled to a computer system bus.


Various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the method. The structure for a variety of these systems will appear as set forth in the description above. In addition, the present disclosure is not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the disclosure as described herein.


The present disclosure may be provided as a computer program product, or software, that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer system (or other electronic devices) to perform a process according to the present disclosure. A machine-readable medium includes any mechanism for storing information in a form readable by a machine (e.g., a computer). For example, a machine-readable (e.g., computer-readable) medium includes a machine (e.g., a computer) readable storage medium such as a read only memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical storage media, flash memory devices, etc.


In the foregoing disclosure, implementations of the disclosure have been described with reference to specific example implementations thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of implementations of the disclosure as set forth in the following claims. The disclosure and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.

Claims
  • 1. A computer-implemented method, comprising: sending a live video stream associated with a host computer device of an individual hosting the live video stream to one or more viewer computer devices;generating a portion of the live video stream portraying a first camera view of an item based on a first perspective of the host computer device, the first camera view of the item corresponding to the first perspective of the host computer device, the first perspective of the host computer device caused by at least one change in respective physical orientations of the host computer device, the camera comprising a component of the host computer device;receiving an image of the first camera view of the item uploaded from the host computer device, the image of the first camera view of the item captured on the host computer device concurrent with the first perspective of the host computer device, the image of the first camera view of the item captured from an image preview window for the camera, the image preview window rendered at the host computer device separate from display of the live video stream, the image preview window comprises a graphical user interface separate from a graphical user interface for display of the live video stream, the image preview window further rendered prior to capture of the image of the first camera view of the item;generating a thumbnail based on the image of the first camera view of the item uploaded from the host computer device;generating a portion of the live video stream based on a second camera view of the item captured on the host computer device, the second camera view of the item corresponding to a second perspective of the host computer device, the second perspective of the host computer device caused by at least one subsequent change in respective physical orientations of the host computer device after the first perspective of the host computer device;sending an instance of the live stream comprising the second camera view of the e to a respective viewer computer device, the instance of the live stream including concurrent display of an instance of the thumbnail; andreceiving a request to purchase the item based on selection of the instance of the thumbnail at the respective viewer computer device.
  • 2. The computer-implemented method of claim 1, wherein the portion of the live video stream comprises real-time video data generated by the host computer device, the real-time video data portraying respective camera views of the item during the live video stream.
  • 3. The computer-implemented method of claim 1, further comprises: sending the real-time video data generated by the host computer device for display within a live video stream user interface rendered on the respective viewer computer device, the live video stream user interface presenting, during the live video stream, at least one viewer activity icon over a first portion of at least one of the respective camera views of the item provided by the real-time video data.
  • 4. The computer-implemented method of claim 3, wherein the live video stream user interface presenting the at least one viewer activity icon occurs prior to receiving the request to purchase the item from the respective viewer computer device.
  • 5. The computer-implemented method of claim 4, wherein the at least one viewer activity icon represents activity of a first end-user of a different viewer computer device, the first end-user different than a second end-user of the respective viewer computer device that requests to purchase the item.
  • 6. The computer-implemented method of claim 3, wherein the live video stream user interface presents, during the live video stream, a live show icon over at least a portion of the second camera view of the item provided by the real-time video.
  • 7. The computer-implemented method of claim 1, wherein the image preview window comprises an image capture region providing a selectable functionality for triggering capture of the image of the first camera view of the item displayed in the image preview window.
  • 8. The computer-implemented method of claim 1, wherein sending an instance of the live stream comprising the second camera view of the item to a respective viewer computer device comprises: transitioning, at the host computer device, from display of the image preview window at to display of the live video stream comprising the second camera view of the item, the live video stream displayed at the host computer device further including display of the thumbnail.
  • 9. The computer-implemented method of claim 1, further comprising: generating a portion of the live video stream portraying a third camera view of a different item based on a subsequent perspective of the host computer device, the third camera view of the different item corresponding to the subsequent perspective of the host computer device;receiving a second image of the third camera view of the different item uploaded from the host computer device, the second image captured on the host computer device concurrent with the subsequent perspective of the host computer device, the second image captured from the image preview window;generating a second thumbnail based on the second image;generating a portion of the live video stream based on a fourth camera view of the different item captured on the host computer device, the fourth camera view of the item corresponding to a another perspective of the host computer device caused by at least one change in respective physical orientations of the host computer device after the subsequent perspective of the host computer device;sending an instance of the live stream comprising the fourth camera view of the different item to the respective viewer computer device, the instance of the live stream including concurrent display of an instance of a layered thumbnail comprising a first layer representing the thumbnail based on the image of the first camera view of the item and a second layer representing the second thumbnail.
  • 10. A computer program product comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to: send a live video stream associated with a host computer device of an individual hosting the live video stream to one or more viewer computer devices;generate a portion of the live video stream portraying a first camera view of an item based on a first perspective of the host computer device, the first camera view of the item corresponding to the first perspective of the host computer device, the first perspective of the host computer device caused by at least one change in respective physical orientations of the host computer device, the camera comprising a component of the host computer device;receive an image of the first camera view of the item uploaded from the host computer device, the image of the first camera view of the item captured on the host computer device concurrent with the first perspective of the host computer device, the image of the first camera view of the item captured from an image preview window for the camera, the image preview window rendered at the host computer device separate from display of the live video stream, the image preview window comprises a graphical user interface separate from a graphical user interface for display of the live video stream, the image preview window further rendered prior to capture of the image of the first camera view of the item;generate a thumbnail based on the image of the first camera view of the item uploaded from the host computer device;generate a portion of the live video stream based on a second camera view of the item captured on the host computer device, the second camera view of the item corresponding to a second perspective of the host computer device, the second perspective of the host computer device caused by at least one subsequent change in respective physical orientations of the host computer device after the first perspective of the host computer device;send an instance of the live stream comprising the second camera view of the item to a respective viewer computer device, the instance of the live stream including concurrent display of an instance of the thumbnail; andreceive a request to purchase the item based on selection of the instance of the thumbnail at the respective viewer computer device.
  • 11. The computer program product of claim 10, wherein the portion of the live video stream comprises real-time video data generated by the host computer device, the real-time video data portraying respective camera views of the item during the live video stream.
  • 12. The computer program product of claim 10, further comprises: send the real-time video data generated by the host computer device for display within a live video stream user interface rendered on the respective viewer computer device, the live video stream user interface presenting, during the live video stream, at least one viewer activity icon over a first portion of at least one of the respective camera views of the item provided by the real-time video data;wherein the live video stream user interface presenting the at least one viewer activity icon occurs prior to receiving the request to purchase the item from the respective viewer computer device.
  • 13. The computer program product of claim 12, wherein the at least one viewer activity icon represents activity of a first end-user of a different viewer computer device, the first end-user different than a second end-user of the respective viewer computer device that requests to purchase the item; and wherein the live video stream user interface presents, during the live video stream, a live show icon over at least a portion of the second camera view of the item provided by the real-time video.
  • 14. A system comprising one or more processors, and a non-transitory computer-readable medium including one or more sequences of instructions that, when executed by the one or more processors, cause the system to perform operations comprising: send a live video stream associated with a host computer device of an individual hosting the live video stream to one or more viewer computer devices;generate a portion of the live video stream portraying a first camera view of an item based on a first perspective of the host computer device, the first camera view of the item corresponding to the first perspective of the host computer device, the first perspective of the host computer device caused by at least one change in respective physical orientations of the host computer device, the camera comprising a component of the host computer device;receive an image of the first camera view of the item uploaded from the host computer device, the image of the first camera view of the item captured on the host computer device concurrent with the first perspective of the host computer device, the image of the first camera view of the item captured from an image preview window for the camera, the image preview window rendered at the host computer device separate from display of the live video stream, the image preview window comprises a graphical user interface separate from a graphical user interface for display of the live video stream, the image preview window further rendered prior to capture of the image of the first camera view of the item;generate a thumbnail based on the image of the first camera view of the item uploaded from the host computer device;generate a portion of the live video stream based on a second camera view of the item captured on the host computer device, the second camera view of the item corresponding to a second perspective of the host computer device, the second perspective of the host computer device caused by at least one subsequent change in respective physical orientations of the host computer device after the first perspective of the host computer device;send an instance of the live stream comprising the second camera view of the item to a respective viewer computer device, the instance of the live stream including concurrent display of an instance of the thumbnail; andreceive a request to purchase the item based on selection of the instance of the thumbnail at the respective viewer computer device.
  • 15. The system of claim 14, wherein the portion of the live video stream comprises real-time video data generated by the host computer device, the real-time video data portraying respective camera views of the item during the live video stream.
  • 16. The system of claim 14, further comprises: send the real-time video data generated by the host computer device for display within a live video stream user interface rendered on the respective viewer computer device, the live video stream user interface presenting, during the live video stream, at least one viewer activity icon over a first portion of at least one of the respective camera views of the item provided by the real-time video data.
  • 17. The system of claim 16, wherein the live video stream user interface presenting the at least one viewer activity icon occurs prior to receiving the request to purchase the item from the respective viewer computer device.
  • 18. The system of claim 17, wherein the at least one viewer activity icon represents activity of a first end-user of a different viewer computer device, the first end-user different than a second end-user of the respective viewer computer device that requests to purchase the item.
  • 19. The system of claim 18, wherein the live video stream user interface presents, during the live video stream, a live show icon over at least a portion of the second camera view of the item provided by the real-time video.
CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. patent application Ser. No. 17/008,445, filed Aug. 31, 2020, which is hereby incorporated by reference in its entirety.

US Referenced Citations (92)
Number Name Date Kind
5146548 Bijnagte Sep 1992 A
6154771 Rangan et al. Nov 2000 A
8601372 Gentile Dec 2013 B1
8706558 Scheinfeld Apr 2014 B2
8924261 Stinchcomb Dec 2014 B2
9177225 Cordova-Diba et al. Nov 2015 B1
9317778 Cordova-Diba Apr 2016 B2
9336459 Cordova-Diba May 2016 B2
9875504 Roe Jan 2018 B1
9883249 Taylor et al. Jan 2018 B2
9973819 Taylor et al. May 2018 B1
10021458 Taylor et al. Jul 2018 B1
10242477 Charlton Mar 2019 B1
10397662 Bulusu Aug 2019 B1
10444005 Dryer et al. Oct 2019 B1
10762132 Perlegos Sep 2020 B2
11051067 Baxter Jun 2021 B1
20020089524 Ikeda Jul 2002 A1
20020135621 Angiulo et al. Sep 2002 A1
20030193578 Parulski Oct 2003 A1
20050252966 Kulas Nov 2005 A1
20050257400 Sommerer et al. Nov 2005 A1
20060112003 Levy et al. May 2006 A1
20060200518 Sinclair Sep 2006 A1
20070086669 Berger Apr 2007 A1
20070294346 Moore Dec 2007 A1
20080077520 Odeh Mar 2008 A1
20080119235 Nielsen et al. May 2008 A1
20080151047 Bendall Jun 2008 A1
20080222295 Robinson et al. Sep 2008 A1
20090109431 Delmonico Apr 2009 A1
20090136141 Badawy et al. May 2009 A1
20100217687 Garafola Aug 2010 A1
20110099069 Hoelz et al. Apr 2011 A1
20110279478 Bitra Nov 2011 A1
20120082226 Weber Apr 2012 A1
20120084661 Gil et al. Apr 2012 A1
20120231814 Calman et al. Sep 2012 A1
20120296739 Cassidy et al. Nov 2012 A1
20120307039 Holmes Dec 2012 A1
20130194430 Worrill Aug 2013 A1
20130246633 Giesen et al. Sep 2013 A1
20130251338 Abecassis Sep 2013 A1
20130326373 Lisabeth Dec 2013 A1
20140063174 Junuzovic Mar 2014 A1
20140129919 Benson May 2014 A1
20140139658 Dhanvantri May 2014 A1
20140160223 Bieselt Jun 2014 A1
20140165120 Losev Jun 2014 A1
20140187239 Friend et al. Jul 2014 A1
20140247324 Cury et al. Sep 2014 A1
20140279283 Budaraju et al. Sep 2014 A1
20140285522 Kim et al. Sep 2014 A1
20140310739 Ricci Oct 2014 A1
20150043892 Groman Feb 2015 A1
20150302474 Lampert Oct 2015 A1
20160042250 Cordova-Diba Feb 2016 A1
20160042251 Cordova-Diba Feb 2016 A1
20160182969 Berry, III Jun 2016 A1
20160284112 Greenberg et al. Sep 2016 A1
20160292966 Denham Oct 2016 A1
20160295086 Bhat Oct 2016 A1
20160307599 Snell et al. Oct 2016 A1
20170124664 Savenok et al. May 2017 A1
20170223273 Bendall Aug 2017 A1
20180012506 Azartash Jan 2018 A1
20180021684 Benedetto Jan 2018 A1
20180167877 Guzik Jun 2018 A1
20180189863 Tapley et al. Jul 2018 A1
20190069047 Wood Feb 2019 A1
20190082118 Wang Mar 2019 A1
20190104325 Linares Apr 2019 A1
20190132650 Kedenburg, III May 2019 A1
20190141410 Zverina May 2019 A1
20190174149 Zhang et al. Jun 2019 A1
20190182554 Schupak et al. Jun 2019 A1
20190200051 Paul Jun 2019 A1
20190205646 Piramuthu et al. Jul 2019 A1
20190259206 Martin Aug 2019 A1
20190289052 Boutet Sep 2019 A1
20200005367 Christian-Ezeofor Jan 2020 A1
20200128286 Anders et al. Apr 2020 A1
20200162796 Azuolas et al. May 2020 A1
20200175303 Bhat et al. Jun 2020 A1
20200260150 Wong Aug 2020 A1
20200272713 Black Aug 2020 A1
20200285353 Rezazadeh Sereshkeh Sep 2020 A1
20200404383 Li et al. Dec 2020 A1
20210056761 Nigam Feb 2021 A1
20210099733 Xie Apr 2021 A1
20210314665 Davenport Oct 2021 A1
20220239988 Yang Jul 2022 A1
Non-Patent Literature Citations (8)
Entry
Alibaba Group; How to Livestream to Chinese Consumers; Mar. 4, 2020; YouTube.com; https://youtu.be/elAEoeadhWY, pp. 1-65.
Chris Gollop; Live Streaming Ecommerce: the new way to sell online; Jul. 9, 2020; saleslayer.com; pp. 1-16.
Lauren Hallanan; 6 Tactics from Taobao's Top E-Commerce Live Streamer Viya; Oct. 21, 2019; Jing Daily; pp. 1-8.
“in place of;” Feb. 4, 2019; collinsdictionary.com; pp. 1-3.
Cameron; How to Live Stream from iPhones & Android Phones; Oct. 26, 2015; StreamShark; 8 Pages.
Jan Ozer, Review: Switcher Studio; Feb. 21, 2017; Streaming Media Producer; 8 Pages.
Stephen Jackson and Nicole Jones; How to Broadcast a Facebook Live Event in 7 Easy Steps, May 28, 2020; TechSoup; 7 Pages.
Lory Gil; How to Use Live Photos on iPhone and iPad; Oct. 7, 2019; MacRumors; 21 Pages.
Related Publications (1)
Number Date Country
20220070514 A1 Mar 2022 US
Continuations (1)
Number Date Country
Parent 17008445 Aug 2020 US
Child 17028851 US