WO2022046664A9 - Electronic file presentation in a network environment - Google Patents

Electronic file presentation in a network environment Download PDF

Info

Publication number
WO2022046664A9
WO2022046664A9 PCT/US2021/047201 US2021047201W WO2022046664A9 WO 2022046664 A9 WO2022046664 A9 WO 2022046664A9 US 2021047201 W US2021047201 W US 2021047201W WO 2022046664 A9 WO2022046664 A9 WO 2022046664A9
Authority
WO
WIPO (PCT)
Prior art keywords
virtual room
electronic media
viewing
gui
area
Prior art date
Application number
PCT/US2021/047201
Other languages
French (fr)
Other versions
WO2022046664A1 (en
Inventor
Elina M.I. OLLILA
Tim Flack
Stephan SOMERS
Mark OLLILA
Original Assignee
Evasyst, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Evasyst, Inc. filed Critical Evasyst, Inc.
Publication of WO2022046664A1 publication Critical patent/WO2022046664A1/en
Publication of WO2022046664A9 publication Critical patent/WO2022046664A9/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection

Definitions

  • a method may include receiving an initial request from a host device to initialize a virtual room.
  • the method may include initializing the virtual room including a host graphical user interface (GUI) comprising a chat area, a social contacts area, and a media area.
  • GUI host graphical user interface
  • the method may further include providing the host device access to the virtual room via the host GUI.
  • the method may also include receiving a display request to display electronic media in the media area of the host GUI.
  • the method may include displaying the electronic media in the media area of the host GUI.
  • the method may further include providing a discover page that displays information pertaining to the virtual room including progress information indicating an amount of the electronic media that has been presented.
  • the method may further include receiving a viewing request from a viewing device to join the virtual room.
  • the method may include providing the viewing device access to the virtual room via a viewing GUI, wherein the electronic media is streamed to the viewing device at a time corresponding to the progress information.
  • FIG. 1 illustrates a block diagram of an example operating environment for electronic file presentation in a network environment
  • FIG. 2A illustrates an example graphical user interface (GUI) associated with electronic file presentation in a network environment
  • FIG. 2B illustrates another example GUI with multiple content providers
  • FIG. 3 illustrates another example GUI illustrating a virtual room
  • FIG. 4 illustrates another example GUI illustrating a discover page of the virtual room
  • FIG. 5A illustrates another example GUI illustrating a concise queued media area
  • FIG. 5B illustrates another example GUI illustrating an expanded queued media area
  • FIG. 6 illustrates a flowchart of an example method of electronic file presentation in a network environment
  • FIG. 7 illustrates a flowchart of an example method of managing connectivity issues related to electronic file presentation in a network environment
  • FIG. 8 illustrates an example system that may be used for electronic file presentation in a network environment.
  • a media service may be configured to host a virtual room that may be configured to join together one or more devices therein.
  • electronic media may be shared among the devices present in the virtual room.
  • the virtual room may be configured to facilitate various forms of communication between the users of the devices present in the virtual room.
  • the sharing of electronic media and communication related thereto via a virtual room may provide opportunities to gather users together that may otherwise be unable to. For example, users that are geographically remote and/or limited in contact with others due to illness may use the streaming service to view and use electronic media with others as a way to supplement or in lieu of gathering in person.
  • electronic media associated with a virtual room of the streaming service may be obtained from a third-party content provider.
  • electronic media may be streamed from a remote source for viewing within the streaming service.
  • the streaming service may be configured to synchronize the display of the electronic media among the viewing devices present in the virtual room, such that each viewing device displays the electronic media at substantially the same time.
  • the streaming service may be configured to support communication between multiple devices within the virtual room.
  • the streaming service may accommodate a first user desiring to share with a second user a video clip where the first user and the second user may communicate during the display of the video clip.
  • One or more aspects of the present disclosure may include a streaming service that may provide a platform on which users may communicate with other users while viewing electronic media.
  • the streaming service may be configured to synchronize the electronic media between the associated user devices such that the users may have the experience of watching the electronic content at substantially the same time.
  • FIG. 1 illustrates a block diagram of an example operating environment 100 for electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure.
  • the environment 100 may include a network 102, a streaming service 104, a content server 106, a host device 110, and a viewing device 120.
  • the host device 110 may include a host graphical user interface (GUI) 112.
  • the viewing device 120 may include a viewing GUI 122.
  • GUI graphical user interface
  • the network 102 may be configured to communicatively couple the streaming service 104, the content server 106, the host device 110, and/or the viewing device 120.
  • the network 102 may be any network or configuration of networks configured to send and receive communications between systems.
  • the network 102 may include a wired network, an optical network, and/or a wireless network, and may include numerous different configurations, including multiple different types of networks, network connections, and protocols to communicatively couple systems in the environment 100.
  • the content server 106 may be configured to store electronic media.
  • the content server 106 may include one or more systems, such as the system 800 of FIG. 8, that may be configured to store digital media.
  • the content server 106 may be configured to permit devices to access the electronic media located thereon, upon request.
  • a requesting device such as the host device 110
  • the content server 106 may request electronic media from the content server 106, after which, the content server 106 may permit the host device 110 to access the electronic media.
  • the content server 106 may be configured to transmit the electronic media to the host device 110.
  • the content server 106 may transmit the electronic media to the host device 110, such as via the network 102.
  • the content server 106 may be located remote from the streaming service 104, the host device 110, and/or the viewing device 120, as illustrated in FIG. 1. Alternatively or additionally, the content server 106 may be co-located with the streaming service 104, the host device 110, and/or the viewing device 120. For example, electronic media associated with the content server 106 may be located on the streaming service 104.
  • the content server 106 may include restrictions to the electronic media located thereon.
  • the restrictions may include age restrictions, geographic restrictions, device restrictions, etc.
  • a first device may include access to the content server 106 and a second device may not include access to the content server 106 due to a different geographic location than the first device.
  • the restrictions may apply to a device for all electronic media associated with the content server 106.
  • a first device may be restricted from all electronic media on the content server 106.
  • the restrictions may vary in application regarding each electronic media on the content server 106.
  • the first device may have access to a first electronic media and may not have access to a second electronic media on the content server 106.
  • the content server 106 may be configured to distribute electronic media to the host device 110 and/or the viewing device 120. Alternatively or additionally, the content server 106 may be configured to distribute electronic media to the streaming service 104, which may further be distributed to the host device 110 and/or the viewing device 120. In these and other embodiments, the distribution of the electronic media may be performed over the network 102.
  • the streaming service 104 may be configured to create and/or manage a virtual room, which may be used to display electronic media and view and chat with others.
  • the streaming service 104 may create and share the virtual room with the host device 110, such that the virtual room may be displayed on the host device 110 via the host GUI 112.
  • the streaming service 104 may be configured to share the virtual room with other devices, such as the viewing device 120.
  • the streaming service 104 may be configured to display on the viewing device 120 via the viewing GUI 122.
  • a shareable link to the virtual room may be generated in conjunction with the creation of the virtual room.
  • the shareable link may be provided to the host device 110 and/or the viewing device 120.
  • the shareable link may be configured to be distributed via electronic communications. For example, the shareable link to the virtual room may be emailed, texted, made available via social media, and/or distributed via other forms of electronic communication.
  • the virtual room may include a media area that may be configured to display electronic media.
  • the media area may be configured to display the electronic media that may be obtained from the content server 106.
  • the virtual room may include a chat area that may be configured to facilitate communication between users in the virtual room, such as a user associated with the host device 110 and a user associated with the viewing device 120.
  • the chat area may be configured to support digital communications that may include, but not be limited to, text, images, gifs, emojis, memes, stickers, reactions, and the like.
  • the virtual room may include a social contacts area that may be configured to display one or more users in the virtual room.
  • the social contacts area may include a current video feed, a still image, and/or a text description (e.g., the users name) for one or more users in the virtual room.
  • a text description e.g., the users name
  • An example virtual room including the media area, the chat area, and the social contacts area may be shown and described in conjunction with FIG. 3.
  • the streaming service 104 may be configured to interface with the content server 106 via the network 102.
  • the streaming service 104 may be configured to obtain metadata from the content server 106.
  • the streaming service 104 may be configured to obtain a list of the electronic media, search results of the electronic media, a schema normalization of the electronic media, and/or obtain other metadata from the content server 106, such as by way of an application programming interface (API).
  • API application programming interface
  • the streaming service 104 may be configured to normalize the metadata, such that the delivery of the data associated with the metadata to the host device 110 and/or the viewing device 120 may be similar for each device.
  • the streaming service 104 may be configured to provide the metadata obtained from the content server 106 to the host device 110 and/or the viewing device 120.
  • the streaming service 104 may be configured to provide metadata to the host device 110 and the viewing device 120 such that the host GUI 112 and the viewing GUI 122 display substantially the same display (e.g., search results, arrangement of electronic media, etc.) as one another.
  • the streaming service 104 may be configured synchronize the electronic media between devices in the virtual room, which may include the host device 110 and/or the viewing device 120. For example, in instances in which the electronic media is a movie, the streaming service 104 may synchronize the playback of the movie such that the host device 110 and the viewing device 120 may display substantially the same portions of the movie at substantially the same time. In some embodiments, the streaming service 104 may be configured to alter the playback speed of the electronic media of one or more of the devices in the virtual room.
  • the streaming service 104 may increase the playback speed of the electronic media on the viewing device 120 and/or decrease the playback speed of the electronic media on the host device 110, until the playback of the electronic media is substantially at the same position on the host device 110 and the viewing device 120.
  • the streaming service 104 may be configured to maintain a substantial synchronization of the electronic media between devices in the virtual room.
  • the synchronization performed by the streaming service 104 may include a playback status of the electronic media to the host device 110 and/or the viewing device 120.
  • the streaming service 104 may be configured to transmit the playback status to the viewing device 120 such that the viewing device 120 may play, pause, or seek in similar fashion to the host device 110.
  • the playback change may be sent to a Web Socket-based service which may distribute the playback change to all viewing devices, including the viewing device 120, present in the virtual room.
  • the playback change may be communicated to the streaming service 104 for display on a discover page of the streaming service 104 to prospective viewing devices not present in the virtual room.
  • the playback controls may be operable by the host device 110.
  • the playback controls may be transferrable to the viewing device 120.
  • the playback controls associated with the electronic media in the virtual room may be assigned to the viewing device 120.
  • the host controls may be reassigned to the host device 110.
  • the display of the electronic media in the virtual room may be independent of the host device 110 and/or the presence of the host device 110 in the virtual room.
  • the viewing device 110 may continue to display the electronic media in the virtual room.
  • the host device 110 may continue playback of the electronic media at the position of the viewing device 120.
  • the streaming service 104 may be configured to adjust the playback speed of the host device 110 and/or the viewing device 120 so as to synchronize the playback between the devices, as further described herein.
  • the streaming service 104 may be configured to provide a discover page to the viewing device 120 via the viewing GUI 122.
  • the viewing GUI 122 may display the discover page provided by the streaming service 104.
  • the discover page may include one or more virtual rooms displayed that may be joinable.
  • the discover page may include progress information that may provide an indication of an amount of the electronic media that may have been presented in the associated virtual room. An example discover page may be shown and described in conjunction with FIG. 4.
  • the streaming service 104 may be configured to receive content from a content creator that may be selectable as electronic media available to be displayed in a virtual room.
  • the content creator may upload generated content to the streaming service 104.
  • the generated content may include a description, pricing options, restriction on the number of virtual rooms that may display the generated content, restrictions on the number of viewing devices allowing in a virtual room displaying the generated content, and/or other constraints as determined by the content creator.
  • the content creator may be permitted to change the accessibility of the generated content on the streaming service 104. For example, the content creator may enable the generated content for display in a virtual room and/or the content creator may disable the generated content for display in a virtual room at any point as determined by the content creator.
  • the streaming service 104 may be configured to provide the content creator with statistics related to the generated content upon request from the content creator. For example, the content creator may request to know the number of virtual rooms that have displayed the generated content, the number of viewing device that have viewed the generated content, etc. Alternatively or additionally, the streaming service 104 may be configured to receive input from the content creator that may edit the generated content. An edit to the generated content may include pricing changes, content changes, and the like.
  • the host device 110 and/or the viewing device 120 may include any device that may be capable of communicating over the network 102, capable of displaying an associated GUI, and/or capable of displaying electronic media thereon.
  • the host device 110 and/or the viewing device 120 may include a desktop computer, a laptop computer, a smartphone, a mobile phone, a tablet computer, or any other computing device that may be configured to perform the actions described above.
  • the host device 110 may be configured to display and/or operate the host GUI 112.
  • the host GUI 112 may be configured to display electronic media, social contacts, chat, and/or combinations thereof in association with a virtual room.
  • the host GUI 112 may be configured to display the virtual room provided by the streaming service 104.
  • the host device 110 may send a request to the streaming service 104 to initiate a virtual room, after which, the streaming service 104 may initialize and provide access to the host device 110 to the virtual room via the host GUI 112.
  • An example view of the host GUI 112 may be displayed and described in relation to FIGS. 2-5.
  • the host GUI 112 may provide a host user controls over the playback of the electronic media that may be displayed within the host GUI 112 and/or other viewing devices and the associated GUIs, such as the viewing device 120 and the viewing GUI 122.
  • the viewing device 120 may be configured to display and/or operate the viewing GUI 122.
  • the viewing GUI 122 may be the same or similar as the host GUI 112.
  • the viewing GUI 122 may be configured to display electronic media, social contacts, chat, and/or combinations thereof in association with a virtual room, similar to the host GUI 112.
  • the viewing GUI 122 may be configured to display the virtual room provided by the streaming service 104.
  • the viewing device 120 may send a request to the streaming service 104 to join a virtual room, after which, the streaming service 104 may provide the viewing device access to the virtual room via the viewing GUI 122.
  • the viewing GUI 122 may include one or more limitations on the operations that may be performed within the viewing GUI 122.
  • the viewing GUI 122 may be limited or restricted from operations related to the playback of the electronic media, such as playing, pausing, seeking, etc., when the host device 110 is present.
  • the viewing GUI 122 may be configured to acquire control over operations related to the playback of the electronic media. For example, in instances in which the host device 110 becomes disconnected from the streaming service 104 and/or the network 102, the viewing device 120 and/or the viewing GUI 122 may acquire control over operations related to the playback of the electronic media.
  • the environment 100 may be configured to include more than one viewing device 120.
  • the number of viewing devices that may be included in a virtual room may be defined by the streaming service 104.
  • the streaming service 104 may limit the number of viewing devices in a virtual room to 10.
  • the number of viewing devices included in a virtual room may be defined by the host device 110.
  • the host device 110 may include a limit on the number of viewing devices that may have access to the virtual room.
  • no limit to the number of viewing devices may be defined by the host device 110 or the streaming service 104.
  • the electronic media delivered to the host device 110 and/or the viewing device 120 may be delivered from the content server 106.
  • the electronic media delivered to the host device 110 and/or the viewing device 120 may be distributed from the content server 106 whereas the selection of the electronic media to display, the progress of the electronic media to display, the playback status of the electronic media, etc., may be synchronized between the host device 110 and the viewing device 120 by the streaming service 104.
  • FIG. 2A illustrates an example graphical user interface (GUI) 200 associated with electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure.
  • GUI graphical user interface
  • the GUI 200 may include a media area 205 and a chat area 230.
  • the media area 205 may include user controls 210 which may include a content GUI button 212, a social display GUI button 214, a video feed GUI button 216, a microphone GUI button 218, and a connection GUI button 220.
  • the chat area 230 may include a chat GUI button 232, an alert GUI button 234, a profile GUI button 236, a chat window GUI button 238, and a participants GUI button 240.
  • the media area 205 may be configured to display at least electronic media.
  • the electronic media may occupy some or all of the media area 205 and/or may be resizable as desired.
  • the media area 205 may be configured to display the user controls 210.
  • the media area 205 may be configured to display media controls, such as play, pause, seek, etc., that may be used to control the playback of the electronic media.
  • the user controls 210 may be hidden from view. For example, in instances in which electronic media is displayed in the media area 205, the user control 210 may be hidden which may reduce distractions from the electronic media.
  • a selection of the content GUI button 212 of the user controls 210 may enable the user to select a content source for electronic media that may be displayed in the media area 205.
  • the GUI 200 may transition to another GUI display, such as the
  • the social display GUI button 214 may be configured to toggle a display of a social contacts area that may be associated with the GUI 200. As illustrated in FIG. 2A, the social contracts area is disabled as indicated by the strike through icon representing the social display GUI button 214. FIG. 2B illustrates a display of the social contacts area, although the social display GUI button 214 is not displayed as electronic media is presented therein.
  • the video feed GUI button 216 may be configured to toggle a video feed of the user that may be displayed in the social contacts area. For example, enabling the video feed GUI button 216 may enable a camera on the user device, such as the host device 110 of FIG. 1. Alternatively or additionally, the video feed GUI button 216 may be configured to provide the user access to video feed options.
  • the video feed options may include camera quality settings, background settings, overlay settings, and/or other similar camera settings.
  • the microphone GUI button 218 may be configured to toggle an audio feed of the user. For example, enabling the microphone GUI button 218 may enable a microphone on the user device, such as the host device 110 of FIG. 1. Alternatively or additionally, the microphone GUI button 218 may be configured to provide the user access to microphone options. For example, the microphone options may include microphone volume, voice overlay settings, and/or other similar microphone settings.
  • connection GUI button 220 may be configured to toggle the connection of the user relative to the virtual room. For example, in instances in which a user is watching electronic media a selects the connection GUI button 220, the electronic media may discontinue playback and the device may disconnect from other related portions of the virtual room, such as the chat area and/or the social contacts area. Alternatively or additionally, in instances in which a device is not connected to a virtual room, the user may select the connection GUI button 220, which may connect to the virtual room and may cause other portions of the virtual room to operate, such as the chat area and/or the social contacts area.
  • the chat area 230 may be configured to display communication between multiple users within a virtual room. For example, one or more users may use the chat area 230 to communicate with one another using various text and/or other communicative methods including emojis, gifs, memes, reactions, and the like. Alternatively or additionally, the chat area 230 may be configured to display one or more alerts for the user. Alternatively or additionally, the chat area 230 may be configured to display settings associated with the virtual room, the user, the chat, and/or other customizable settings.
  • selection of the chat GUI button 232 may cause the chat area 230 to display the communications between the users in the virtual room.
  • the chat area 230 may include communications between users from previous virtual room sessions. For example, communications in a first session of a virtual room may be displayed in a second session of the virtual room.
  • the chat area 230 may include chat from the current instance of the virtual room.
  • the chat area 230 displayed after selection of the chat GUI button 232 may be further arranged to display the communication between users in the virtual room or to display the users in the virtual room.
  • the chat area 230 may be configured to display the communications between the users in the virtual room.
  • the chat area 230 may be configured to display the current users in the virtual room.
  • selection of the alert GUI button 234 may cause the chat area 230 to display alerts and/or notifications for the user to view and/or respond to. In some embodiments, no alerts may be displayed.
  • alerts may be displayed in the chat area 230.
  • the alerts may include a friend of the user online, a list of the users that have joined the virtual room, a new recommended virtual room, a previously visited virtual room online, a message indication from another user, notifications about the virtual room and/or updates to the virtual room service, and/or other similar notifications and alerts.
  • the alerts may be cleared by the user. Alternatively or additionally, the alerts may be removed from the chat area 230 after a threshold period of time.
  • selection of the profile GUI button 236 may be configured to display user options.
  • the user options may be displayed in the chat area 230.
  • the user options may be displayed in the media area 205.
  • the user options may be displayed in a new window.
  • a user may select the profile GUI button 236 to alter options related to the chat area 230, the media area 205, and/or any related options to the GUI 200.
  • selection of the profile GUI button 236 may be configured to alter display options of the user in various portions of the GUI 200.
  • FIG. 2B illustrates an example GUI 250 with multiple content providers, in accordance with at least one embodiment described in the present disclosure.
  • the GUI 250 may be configured to display one or more sources of electronic media, such as the content server 106 of FIG. 1.
  • the sources of electronic media may include streaming services, data storage including electronic media, and the like.
  • the content providers that may be displayed in the GUI 250 may include content associated with the streaming service, such as the streaming service 104 of FIG. 1.
  • the content may be associated with a third- party content provider, such as the content server 106 of FIG. 1.
  • a third-party streaming service may include YOUTUBE, TUBI, and/or other third-party content providers.
  • the GUI 250 may include a selectable GUI button associated with each source of electronic media.
  • the GUI 250 may include a selectable GUI button to add additional sources of electronic media.
  • the GUI 250 may be configured to accept user input that may enable the use of one or more additional sources of electronic media in the GUI 250, which may include receiving user log in information for the additional sources of electronic media.
  • FIG. 3 illustrates an example GUI 300 illustrating a virtual room, in accordance with at least one embodiment described in the present disclosure.
  • the GUI 300 may include a media area 305, a social contacts area 315, and a chat area 330.
  • the media area 305 and the chat area 330 may be the same or similar as the media area 205 and the chat area 230 of FIG. 2 A.
  • the GUI 300 may be configured to facilitate conversation between viewers within a virtual room in conjunction with watching electronic media.
  • electronic media may be displayed in the media area 305 while a text conversation may transpire in the chat area 330 and/or a verbal/visual conversation may transpire in the social contacts area 315.
  • the size of any of the media area 305, the social contacts area 315, and/or the chat area 330 may be adjusted within the GUI 300.
  • the media area 305 may be expanded such that the social contacts area 315 and/or the chat area 330 may not be displayed within the GUI 300.
  • combinations of one or more of the media area 305, the social contacts area 315, and/or the chat area 330 may be displayed within the GUI 300, as configured by the user of the GUI 300.
  • the social contacts area 315 may include a video feed of one or more users present in the virtual room. For example, in instances in which a host and two viewers are present in a virtual room, three video feeds of the respective viewers in the virtual room may be displayed in the social contacts area 315.
  • the video feed may be disabled by the user providing the video feed and/or by a user viewing the video feed in the social contacts area 315 of the GUI 300. For example, in instances in which a user does not want to be displayed in the virtual room, the user may disable their video feed such that the user may not be displayed in any social contacts area 315 of other viewers in the virtual room.
  • the social contacts area 315 may be configured to display an image selected by the associated user. For example, in instances in which a user does not want to be displayed in the virtual room via a video feed, the user may choose to display an image, which image may be displayed in other viewers in the virtual room’s social contacts area 315.
  • FIG. 4 illustrates an example GUI 400 illustrating a discover page of the virtual room, in accordance with at least one embodiment described in the present disclosure.
  • the GUI 400 may include a social status area 410, an upcoming schedule area 420, and a virtual room overview area 430.
  • the upcoming schedule area 420 may include a time 422, a title 424, and a payment icon 426.
  • the virtual room overview area 430 may include a next GUI button 432, a progress indicator 434, and a thumbnail
  • the social status area 410 may be configured to display a listing of contacts that may be associated with the user of the GUI 400.
  • the social status area 410 may include a listing of friends that a user has connected with within the environment the virtual room is a element of, such as the environment 100 of FIG. 1.
  • the social status area 410 may include a visual indicator associated with the contact in the social status area 410 that may indicate the contact’s online presence. For example, a green icon may indicate the contact is online while a red icon may indicate the contact is online and currently watching electronic media in a virtual room.
  • the social status area 410 may be configured to display one or more virtual rooms that a viewer has created.
  • the virtual rooms may have been created in the current viewing session or in a prior viewing session.
  • the social status area 410 may be configured to display one or more virtual rooms that the viewer has participated in.
  • the first virtual room may be included in the viewer’s social status area 410.
  • the virtual rooms displayed in the social status area 410 may include an indication of current playback.
  • the social status area 410 may display an indication that the first virtual room is displaying electronic media.
  • the upcoming schedule area 420 may include entries that may include one or more virtual rooms and associated electronic media that may be displayed at a time in the future.
  • an entry that may be shown may include a time 422 and/or a title 424 that may be associated with a virtual room.
  • “Kite Liberator” may be the title 424 of electronic media that may be shown at a time 422 of “2:30 pm” in the virtual room titled “Kite watchers party”.
  • the upcoming schedule area 420 may be arranged temporally. For example, entries that may be configured to display next may be arranged at the top of the list of the upcoming electronic media.
  • the upcoming schedule area 420 may be sorted by title 424 such that the upcoming electronic media may be displayed alphabetically.
  • one or more filters may be applied to the upcoming schedule area 420 such that the number of entries in the upcoming schedule area 420 may be limited.
  • the upcoming schedule area 420 may be filtered such that entries occurring after a determined time (e.g., 2:00 pm) may be displayed and entries prior to the determined time may not be displayed.
  • a search feature may be included in the upcoming schedule area 420.
  • the search feature may be configured to permit a user to search for times, titles, and/or virtual rooms in the upcoming schedule area 420.
  • one or more entries in the upcoming schedule area 420 may include the payment icon 426.
  • the payment icon 426 may indicate a cost associated with joining the associated virtual room and/or with the electronic media that may be displayed in the associated virtual room. For example, in instances in which the payment icon 426 is displayed relative to an entry in the upcoming schedule area 420, a fee may be collected prior to admittance into the associated virtual room.
  • a host of a virtual room may make a payment prior to creating the virtual room.
  • some electronic media may be inaccessible by the host device in the virtual room until a payment is received.
  • some electronic media may include a cost before being included for viewing in a virtual room.
  • the host device that submits a payment in association with a virtual room and/or electronic media may manage the virtual room such that viewers that desire to join the virtual room may submit a payment to join prior to joining the virtual room.
  • a viewing device such as the viewing device 120 of FIG.
  • the host device may submit a payment to the host device prior to joining the virtual room created by the host device that includes a payment to join.
  • the cost incurred by the host device setting up the virtual room and/or electronic media may be received from the viewing devices in an equal division among the viewing devices. For example, in instances in which the host device incurs a cost of 50 dollars to setup a virtual room and five viewing devices join the virtual room, each viewing device may submit a payment of ten dollars.
  • the host device may determine a payment amount that may be independent of the number of viewing devices that may join the virtual room. For example, a cost of five dollars may be requested by the host device prior to joining the virtual room regardless of the number of viewing devices that join the virtual room.
  • the virtual room overview area 430 may be configured to provide a visual indication of available virtual rooms that may be displaying electronic media.
  • the virtual room overview area 430 may be configured to display one or more recommended virtual rooms, one or more previously visited virtual rooms, and/or one or more friend’s virtual rooms.
  • the virtual room overview area 430 may be configured to provide a visual indication of the progress of the electronic media displayed in the associated virtual room.
  • selection of the next GUI button 432 may provide a visual indication of the next electronic media that may be displayed in the associated virtual room. For example, in instances in which the next GUI button 432 is selected, a text description and/or a thumbnail of the next electronic media that may be displayed in the associated virtual room may be displayed.
  • the progress indicator 434 may provide a visual indication of the current progress of the electronic media displayed in the associated virtual room. For example, in instances in which half of the electronic media has been presented in the virtual room, the progress indicator 434 may include a progress bar that is half filled. Alternatively or additionally, the progress indicator 434 may include numbers that represent the current progress of the electronic media.
  • the progress indicator 434 may indicate that 20 of 60 minutes have elapsed (e.g., 0:20.0 : 1 :00.0).
  • the progress indicator 434 may include a percentage that may indicate the current progress of the electronic media relative to the total length of the electronic media. For example, in instances in which 20 minutes have elapsed of a 60- minute movie, the progress indicator 434 may display 33% which may indicate the current progress of the electronic media.
  • the thumbnail 436 may illustrate the electronic media that may be displayed in the associated virtual room.
  • the thumbnail 436 may include an image of the electronic media (e.g., a movie poster for a movie) that may identify the electronic media being displayed in the associated virtual room.
  • the thumbnail 436 may include a changing image that may provide an indication of the progress of the electronic media of the associated virtual room. For example, in instances in which the progress of the electronic media is in between the start and the end, a screenshot may be displayed as the thumbnail 436 which may provide an indication of the location of the electronic media that may be currently displayed.
  • the thumbnail 436 may be configured to update at a regular interval, which may be based on the current location of the electronic media, as may be indicated by the progress indicator 434. For example, the thumbnail 436 may be configured to update every five minutes of display time of the electronic media.
  • FIG. 5A illustrates an example GUI 500 illustrating a concise queued media area, in accordance with at least one embodiment described in the present disclosure.
  • the GUI 500 may include a media area 505 and a chat area 530.
  • the chat area 530 may include a queue 535.
  • the media area 505 and the chat area 530 may be the same or similar as the media area 205 and the chat area 230 of FIG. 2A.
  • the queue 535 may be configured to display a next electronic media that may be displayed in the virtual room.
  • the electronic media in the queue 535 may be added by a host device of the virtual room, such as the host device 110 of FIG. 1.
  • the electronic media in the queue 535 may be added by a viewing device of the virtual room, such as the viewing device 120 of FIG. 1.
  • the electronic media in the queue 535 may be voted on prior to being added to the queue 535. For example, in instances in which the viewing device proposes a new electronic media to add to the queue 535, other viewers in the virtual room, such as the host device, may submit an input indicating approval or disapproval of the proposed electronic media. An example voting option may be displayed and described relative to FIG. 5B.
  • the queue 535 may display text describing the next electronic media.
  • the queue 535 may include a thumbnail image and/or a description of the next electronic media.
  • the queue 535 may be configured to expand and contract which may vary the number of electronic media displayed in the queue 535. For example, in instances in which the queue 535 is contracted, the queue 535 may display a single electronic media. Alternatively or additionally, in instances in which the queue 535 is expanded, the queue 535 may display two or more electronic media and/or may include a scrollable option in instances in which more electronic media is included in the queue 535 than may be displayed in the chat area
  • FIG. 5B illustrates an example GUI 550 including an expanded queued media area, in accordance with at least one embodiment described in the present disclosure.
  • the GUI 550 may be the same or similar to the GUI 550 of FIG. 5A.
  • the chat area 530 may include a queue 535 and voting GUI buttons 537.
  • the chat area 530 and the queue 535 may be the same or similar as the chat area 530 and the queue 535 of FIG. 5A.
  • the voting GUI buttons 537 may be configured to receive input from the user.
  • the results of the inputs from the voting GUI buttons 537 from viewers in the virtual room may be used to determine electronic media in the queue 535. For example, in instances in which a proposed electronic media is presented for voting and a majority of the viewers in the virtual room reject the proposed electronic media, the proposed electronic media may not be added to the queue 535.
  • proposed electronic media that receives a greater number of accept votes compared to reject votes may be added to the queue 535.
  • the electronic media that is added to the queue 535 may be arranged in the order that the electronic media was proposed and/or accepted. Alternatively or additionally, the order of the queue 535 may be rearranged by one or more viewers in the virtual room and/or the host of the virtual room.
  • FIG. 6 illustrates a flowchart of an example method 600 of electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure.
  • the method 600 may be arranged in accordance with at least one embodiment described in the present disclosure.
  • the method 600 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device. However, another system, or combination of systems, may be used to perform the method 600.
  • processing logic may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device.
  • another system, or combination of systems may be used to perform the method 600.
  • the method 600 may begin at block 602 where the processing logic may receive an initial request from a host device to initialize a virtual room. [0087] At block 604, in response to the initial request, the processing logic may initialize the virtual room including a host GUI.
  • the virtual room may include a chat area, a social contacts area, and a media area.
  • the social contacts area may include video provided by a host user associated with the host device and a viewing user associated with the viewing device.
  • the processing logic may provide the host device access to the virtual room via the host GUI.
  • the processing logic may receive a display request to display electronic media in the media area of the host GUI.
  • the processing logic may display the electronic media in the media area of the host GUI.
  • the electronic media may be delivered from a content source to the host device and the viewing device.
  • the processing logic may provide a discover page that displays information pertaining to the virtual room.
  • the information on the discover page may include progress information which may indicate an amount of the electronic media that may have been presented.
  • the discover page may include a social status area, an upcoming schedule area, and/or a virtual room overview area.
  • the social status area may be configured to display a listing of individual connections and the individual connections current online status.
  • the virtual room overview area may be configured to display multiple virtual rooms.
  • the multiple virtual rooms may include a previously visited virtual room, a friend’s virtual room, or a recommended virtual room.
  • the upcoming schedule area may include a listing of upcoming electronic media that may be displayed in an associated virtual room.
  • the upcoming schedule area may include an upcoming time associated with the upcoming electronic media and the associated virtual room.
  • the upcoming schedule area may include a payment icon that may indicate a cost associated with the upcoming electronic media.
  • the virtual room overview area may include the progress bar associated with an active virtual room.
  • the virtual room overview area may include a thumbnail that may be associated with an electronic media displayed in the active virtual room.
  • the thumbnail may be configured to update based on the current status/location of the progress bar.
  • the virtual room overview area may include a GUI button that may be configured to display the next electronic media to be presented in the active virtual room upon the button being selected.
  • the progress information may include an elapsed time versus a total time counter. Alternatively or additionally, the progress information may include a percentage indicating the amount of time elapsed relative to the total time. Alternatively or additionally, the progress information may include a graphical progress bar.
  • the amount of the electronic media that has been presented may be displayed as a progress in relation to total run time of the electronic media
  • the processing logic may receive a viewing request from a viewing device to join the virtual room.
  • the processing logic may provide viewing device access to the virtual room via a viewing GUI.
  • the electronic media may be streamed to the viewing device at a time corresponding to the progress information.
  • the method 600 may include any number of other components that may not be explicitly illustrated or described.
  • the processing logic may be configured to buffer at least a portion of the electronic media on the host device.
  • the processing logic may be configured to continue to display electronic media from the buffer in the media area of the host GUI and the viewing GUI.
  • the processing logic may be configured to receive a request to add additional electronic media to a viewing queue via the host GUI or the viewing GUI. In some embodiments, the processing logic may receive confirmation to add the additional electronic media to the viewing queue from at least one of the host device or the viewing device. In some embodiments, the processing logic may be configured to add the additional electronic media to the viewing queue. In some embodiments, the request to add the additional electronic media to the viewing queue may be received from the viewing device.
  • the processing logic may be configured to receive a payment from the host device in conjunction with the virtual room or the electronic media.
  • the processing logic may be configured to receive a viewing payment from the viewing device in conjunction with the virtual room or the electronic media.
  • the viewing payment may be based on a number of viewers in the virtual room.
  • the processing logic may be configured to display an indication payment on the discover page that may be associated with the virtual room.
  • the processing logic may be configured to receive a payment from the viewing device prior to the viewing device joining the virtual room.
  • FIG. 7 illustrates a flowchart of an example method 700 of managing connectivity issues related to electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure.
  • the method 700 may be arranged in accordance with at least one embodiment described in the present disclosure.
  • the method 700 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device.
  • processing logic may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device.
  • another system, or combination of systems may be used to perform the method 700.
  • the method 700 may begin at block 702 where the processing logic may continue playback of electronic media to a viewing device in response to a host device disconnecting from a virtual room.
  • the processing logic may assign host controls of the virtual room to the viewing device in response to the host device disconnecting from the virtual room.
  • the host controls may include play, pause, and seek operations.
  • the processing logic may reassign the host controls of the virtual room to the host device in response to the host device rejoining the virtual room after disconnecting.
  • FIG. 8 is a block diagram illustrating an example system 800 that may be used for electronic file presentation in a network environment, according to at least one embodiment of the present disclosure.
  • the computing system 800 may be configured to implement or direct one or more operations associated with electronic file presentation in a network environment, which may include the network 102, streaming service 104, the content server 106, the host device 110, and/or the viewing device 120 of FIG. 1.
  • the system 800 may include a processor 802, memory 804, data storage 806, and a communication unit 808, which all may be communicatively coupled.
  • the system 800 may be part of any of the systems or devices described in this disclosure.
  • the system 800 may be part of the streaming service 104 of FIG.
  • system 800 may be part of the host device 110 and may be configured to perform one or more of the tasks described above.
  • the processor 802 may include any computing entity, or processing device including various computer hardware or software modules and may be configured to execute instructions stored on any applicable computer-readable storage media.
  • the processor 802 may include a microprocessor, a microcontroller, a parallel processor such as a graphics processing unit (GPU) or tensor processing unit (TPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a Field- Programmable Gate Array (FPGA), or any other digital or analog circuitry configured to interpret and/or to execute program instructions and/or to process data.
  • a microprocessor such as a graphics processing unit (GPU) or tensor processing unit (TPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a Field- Programmable Gate Array (FPGA), or any other digital or analog circuitry configured to interpret and/or to execute program instructions and/or to process data.
  • processor 802 may include any number of processors distributed across any number of networks or physical locations that are configured to perform individually or collectively any number of operations described herein.
  • the processor 802 may be configured to interpret and/or execute program instructions and/or process data stored in the memory 804, the data storage 806, or the memory 804 and the data storage 806. In some embodiments, the processor 802 may fetch program instructions from the data storage 806 and load the program instructions in the memory 804. After the program instructions are loaded into memory 804, the processor 802 may execute the program instructions.
  • the processor 802 may be configured to interpret and/or execute program instructions and/or process data stored in the memory 804, the data storage 806, or the memory 804 and the data storage 806.
  • the program instruction and/or data may be related to electronic file presentation in a network environment such that the system 800 may perform or direct the performance of the operations associated therewith as directed by the instructions.
  • the instructions may be used to perform the method 600 of FIG. 6 and/or the method 700 of FIG. 7.
  • the memory 804 and the data storage 806 may include computer-readable storage media or one or more computer-readable storage mediums for carrying or having computer-executable instructions or data structures stored thereon.
  • Such computer- readable storage media may be any available media that may be accessed by a general- purpose or special-purpose computer, such as the processor 802.
  • such computer-readable storage media may include non-transitory computer-readable storage media including Random Access Memory (RAM), Read-Only Memory (ROM), Electrically Erasable Programmable Read- Only Memory (EEPROM), Compact Disc Read-Only Memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, flash memory devices (e.g., solid state memory devices), or any other storage medium which may be used to carry or store particular program code in the form of computer-executable instructions or data structures and which may be accessed by a general -purpose or special- purpose computer. Combinations of the above may also be included within the scope of computer-readable storage media.
  • RAM Random Access Memory
  • ROM Read-Only Memory
  • EEPROM Electrically Erasable Programmable Read- Only Memory
  • CD-ROM Compact Disc Read-Only Memory
  • flash memory devices e.g., solid state memory devices
  • Combinations of the above may also be included within the scope of computer-readable storage media.
  • Computer-executable instructions may include, for example, instructions and data configured to cause the processor 802 to perform a certain operation or group of operations as described in this disclosure.
  • the term “non- transitory” as explained in the present disclosure should be construed to exclude only those types of transitory media that were found to fall outside the scope of patentable subject matter in the Federal Circuit decision of In re Nuijten, 500 F.3d 1346 (Fed. Cir. 2007). Combinations of the above may also be included within the scope of computer-readable media.
  • the communication unit 808 may include any component, device, system, or combination thereof that is configured to transmit or receive information over a network. In some embodiments, the communication unit 808 may communicate with other devices at other locations, the same location, or even other components within the same system.
  • the communication unit 808 may include a modem, a network card (wireless or wired), an infrared communication device, a wireless communication device (such as an antenna), and/or chipset (such as a Bluetooth® device, an 802.6 device (e.g., Metropolitan Area Network (MAN)), a WiFi device, a WiMax device, cellular communication facilities, etc.), and/or the like.
  • the communication unit 808 may permit data to be exchanged with a network and/or any other devices or systems described in the present disclosure. For example, when the system 800 is included in the streaming service 104 of FIG. 1, the communication unit 808 may allow the streaming service 104 to communicate with the host device 110.
  • system 800 may include any number of other components that may not be explicitly illustrated or described. Further, depending on certain implementations, the system 800 may not include one or more of the components illustrated and described.
  • the embodiments described herein may include the use of a computing system (e.g., the processor 802 of FIG. 8) including various computer hardware or software modules. Further, as indicated above, embodiments described herein may be implemented using computer-readable media (e.g., the memory 804 of FIG. 8) for carrying or having computer-executable instructions or data structures stored thereon.
  • a computing system e.g., the processor 802 of FIG. 8
  • computer-readable media e.g., the memory 804 of FIG. 8 for carrying or having computer-executable instructions or data structures stored thereon.
  • the different components, modules, engines, and services described herein may be implemented as objects or processes that execute on a computing system (e.g., as separate threads). While some of the systems and methods described herein are generally described as being implemented in software (stored on and/or executed by general purpose hardware), specific hardware implementations or a combination of software and specific hardware implementations are also possible and contemplated.
  • any disjunctive word or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms.
  • the phrase “A or B” should be understood to include the possibilities of “A” or “B” or “A and B.”
  • first,” “second,” “third,” etc. are not necessarily used herein to connote a specific order or number of elements.
  • the terms “first,” “second,” “third,” etc. are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a specific number of elements, these terms should not be understood to connote a specific number of elements.
  • a first widget may be described as having a first side and a second widget may be described as having a second side.
  • the use of the term “second side” with respect to the second widget may be to distinguish such side of the second widget from the “first side” of the first widget and not to connote that the second widget has two sides.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

An example method may include receiving an initial request from a host device to initialize a virtual room. In response to the initial request, the method may include initializing the virtual room. The method may include providing the host device access to the virtual room via the host GUI. The method may further include receiving a display request to display electronic media in the media area of the host GUI. In response to the display request, the method may include displaying the electronic media in the media area of the host GUI. The method may further include providing a discover page that displays information pertaining to the virtual room. The method may further include receiving a viewing request from a viewing device to join the virtual room. In response to the viewing request, the method may include providing the viewing device access to the virtual room via a viewing GUI.

Description

ELECTRONIC FILE PRESENTATION IN A NETWORK ENVIRONMENT
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This application claims the benefit of and priority to United States Provisional Patent Application Serial No. 63/069, 149, filed on August 23, 2020, titled “ELECTRONIC FILE PRESENTATION IN A NETWORK ENVIRONMENT”, the disclosure of which is incorporated herein by reference in its entirety.
FIELD
[0002] The embodiments discussed in the present disclosure are related to electronic file presentation in a network environment.
BACKGROUND
[0003] Unless otherwise indicated herein, the materials described herein are not prior art to the claims in the present application and are not admitted to be prior art by inclusion in this section.
[0004] People may be distant from others that they may want to connect with due to various reasons including geographic distance, health concerns, time constraints, etc. Some people may feel isolated and may benefit from using technology and related technical methods to assist in socializing and interacting with others.
[0005] The subject matter claimed in the present disclosure is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one example technology area where some embodiments described in the present disclosure may be practiced. SUMMARY
[0006] In an embodiment, a method may include receiving an initial request from a host device to initialize a virtual room. In response to the initial request, the method may include initializing the virtual room including a host graphical user interface (GUI) comprising a chat area, a social contacts area, and a media area. The method may further include providing the host device access to the virtual room via the host GUI. The method may also include receiving a display request to display electronic media in the media area of the host GUI. In response to the display request, the method may include displaying the electronic media in the media area of the host GUI. The method may further include providing a discover page that displays information pertaining to the virtual room including progress information indicating an amount of the electronic media that has been presented. The method may further include receiving a viewing request from a viewing device to join the virtual room. In response to the viewing request, the method may include providing the viewing device access to the virtual room via a viewing GUI, wherein the electronic media is streamed to the viewing device at a time corresponding to the progress information.
[0007] The objects and advantages of the embodiments will be realized and achieved at least by the elements, features, and combinations particularly pointed out in the claims. [0008] Both the foregoing general description and the following detailed description are given as examples and are explanatory and are not restrictive of the invention, as claimed.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] Example embodiments will be described and explained with additional specificity and detail through the use of the accompanying drawings in which: [0010] FIG. 1 illustrates a block diagram of an example operating environment for electronic file presentation in a network environment;
[0011] FIG. 2A illustrates an example graphical user interface (GUI) associated with electronic file presentation in a network environment;
[0012] FIG. 2B illustrates another example GUI with multiple content providers;
[0013] FIG. 3 illustrates another example GUI illustrating a virtual room;
[0014] FIG. 4 illustrates another example GUI illustrating a discover page of the virtual room;
[0015] FIG. 5A illustrates another example GUI illustrating a concise queued media area;
[0016] FIG. 5B illustrates another example GUI illustrating an expanded queued media area;
[0017] FIG. 6 illustrates a flowchart of an example method of electronic file presentation in a network environment;
[0018] FIG. 7 illustrates a flowchart of an example method of managing connectivity issues related to electronic file presentation in a network environment; and
[0019] FIG. 8 illustrates an example system that may be used for electronic file presentation in a network environment.
DESCRIPTION OF EMBODIMENTS
[0020] A media service (e.g., streaming service) may be configured to host a virtual room that may be configured to join together one or more devices therein. In some circumstances, electronic media may be shared among the devices present in the virtual room. Further, the virtual room may be configured to facilitate various forms of communication between the users of the devices present in the virtual room. In some circumstances, the sharing of electronic media and communication related thereto via a virtual room may provide opportunities to gather users together that may otherwise be unable to. For example, users that are geographically remote and/or limited in contact with others due to illness may use the streaming service to view and use electronic media with others as a way to supplement or in lieu of gathering in person.
[0021] In some embodiments, electronic media associated with a virtual room of the streaming service may be obtained from a third-party content provider. For example, electronic media may be streamed from a remote source for viewing within the streaming service. In some circumstances, the streaming service may be configured to synchronize the display of the electronic media among the viewing devices present in the virtual room, such that each viewing device displays the electronic media at substantially the same time. [0022] In some circumstances, the streaming service may be configured to support communication between multiple devices within the virtual room. For example, the streaming service may accommodate a first user desiring to share with a second user a video clip where the first user and the second user may communicate during the display of the video clip.
[0023] Users of electronic devices often watch content and often communicate with other people using their electronic devices. However, these two functions are generally accomplished using different applications, making it difficult to watch content while communicating with other people. Further, digital content is often found on multiple different websites. Thus, it is difficult for individuals in isolation to have the experience of watching content with other people.
[0024] One or more aspects of the present disclosure may include a streaming service that may provide a platform on which users may communicate with other users while viewing electronic media. The streaming service may be configured to synchronize the electronic media between the associated user devices such that the users may have the experience of watching the electronic content at substantially the same time.
[0025] FIG. 1 illustrates a block diagram of an example operating environment 100 for electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure. The environment 100 may include a network 102, a streaming service 104, a content server 106, a host device 110, and a viewing device 120. The host device 110 may include a host graphical user interface (GUI) 112. The viewing device 120 may include a viewing GUI 122.
[0026] In some embodiments, the network 102 may be configured to communicatively couple the streaming service 104, the content server 106, the host device 110, and/or the viewing device 120. In some embodiments, the network 102 may be any network or configuration of networks configured to send and receive communications between systems. In some embodiments, the network 102 may include a wired network, an optical network, and/or a wireless network, and may include numerous different configurations, including multiple different types of networks, network connections, and protocols to communicatively couple systems in the environment 100.
[0027] In some embodiments, the content server 106 may be configured to store electronic media. For example, the content server 106 may include one or more systems, such as the system 800 of FIG. 8, that may be configured to store digital media. In some embodiments, the content server 106 may be configured to permit devices to access the electronic media located thereon, upon request. For example, a requesting device, such as the host device 110, may request electronic media from the content server 106, after which, the content server 106 may permit the host device 110 to access the electronic media. Alternatively or additionally, the content server 106 may be configured to transmit the electronic media to the host device 110. For example, in response to a request from the host device 110 for electronic media, the content server 106 may transmit the electronic media to the host device 110, such as via the network 102.
[0028] In some embodiments, the content server 106 may be located remote from the streaming service 104, the host device 110, and/or the viewing device 120, as illustrated in FIG. 1. Alternatively or additionally, the content server 106 may be co-located with the streaming service 104, the host device 110, and/or the viewing device 120. For example, electronic media associated with the content server 106 may be located on the streaming service 104.
[0029] In some embodiments, the content server 106 may include restrictions to the electronic media located thereon. The restrictions may include age restrictions, geographic restrictions, device restrictions, etc. For example, a first device may include access to the content server 106 and a second device may not include access to the content server 106 due to a different geographic location than the first device. In some embodiments, the restrictions may apply to a device for all electronic media associated with the content server 106. For example, a first device may be restricted from all electronic media on the content server 106. Alternatively or additionally, the restrictions may vary in application regarding each electronic media on the content server 106. For example, the first device may have access to a first electronic media and may not have access to a second electronic media on the content server 106.
[0030] In some embodiments, the content server 106 may be configured to distribute electronic media to the host device 110 and/or the viewing device 120. Alternatively or additionally, the content server 106 may be configured to distribute electronic media to the streaming service 104, which may further be distributed to the host device 110 and/or the viewing device 120. In these and other embodiments, the distribution of the electronic media may be performed over the network 102. [0031] In some embodiments, the streaming service 104 may be configured to create and/or manage a virtual room, which may be used to display electronic media and view and chat with others. For example, in response to a request from a device, such as the host device 110, for a virtual room, the streaming service 104 may create and share the virtual room with the host device 110, such that the virtual room may be displayed on the host device 110 via the host GUI 112. Alternatively or additionally, the streaming service 104 may be configured to share the virtual room with other devices, such as the viewing device 120. In these and other embodiments, the streaming service 104 may be configured to display on the viewing device 120 via the viewing GUI 122.
[0032] In some embodiments, a shareable link to the virtual room may be generated in conjunction with the creation of the virtual room. The shareable link may be provided to the host device 110 and/or the viewing device 120. In some embodiments, the shareable link may be configured to be distributed via electronic communications. For example, the shareable link to the virtual room may be emailed, texted, made available via social media, and/or distributed via other forms of electronic communication.
[0033] In some embodiments, the virtual room may include a media area that may be configured to display electronic media. For example, the media area may be configured to display the electronic media that may be obtained from the content server 106. Alternatively or additionally, the virtual room may include a chat area that may be configured to facilitate communication between users in the virtual room, such as a user associated with the host device 110 and a user associated with the viewing device 120. In some embodiments, the chat area may be configured to support digital communications that may include, but not be limited to, text, images, gifs, emojis, memes, stickers, reactions, and the like. Alternatively or additionally, the virtual room may include a social contacts area that may be configured to display one or more users in the virtual room. For example, the social contacts area may include a current video feed, a still image, and/or a text description (e.g., the users name) for one or more users in the virtual room. An example virtual room including the media area, the chat area, and the social contacts area may be shown and described in conjunction with FIG. 3.
[0034] In some embodiments, the streaming service 104 may be configured to interface with the content server 106 via the network 102. In some embodiments, the streaming service 104 may be configured to obtain metadata from the content server 106. For example, the streaming service 104 may be configured to obtain a list of the electronic media, search results of the electronic media, a schema normalization of the electronic media, and/or obtain other metadata from the content server 106, such as by way of an application programming interface (API). In some embodiments, the streaming service 104 may be configured to normalize the metadata, such that the delivery of the data associated with the metadata to the host device 110 and/or the viewing device 120 may be similar for each device.
[0035] In some embodiments, the streaming service 104 may be configured to provide the metadata obtained from the content server 106 to the host device 110 and/or the viewing device 120. For example, the streaming service 104 may be configured to provide metadata to the host device 110 and the viewing device 120 such that the host GUI 112 and the viewing GUI 122 display substantially the same display (e.g., search results, arrangement of electronic media, etc.) as one another.
[0036] In some embodiments, the streaming service 104 may be configured synchronize the electronic media between devices in the virtual room, which may include the host device 110 and/or the viewing device 120. For example, in instances in which the electronic media is a movie, the streaming service 104 may synchronize the playback of the movie such that the host device 110 and the viewing device 120 may display substantially the same portions of the movie at substantially the same time. In some embodiments, the streaming service 104 may be configured to alter the playback speed of the electronic media of one or more of the devices in the virtual room. For example, in instances in which the viewing device 120 is behind the host device 110 in display of the electronic media, the streaming service 104 may increase the playback speed of the electronic media on the viewing device 120 and/or decrease the playback speed of the electronic media on the host device 110, until the playback of the electronic media is substantially at the same position on the host device 110 and the viewing device 120. In these and other embodiments, the streaming service 104 may be configured to maintain a substantial synchronization of the electronic media between devices in the virtual room. [0037] In some embodiments, the synchronization performed by the streaming service 104 may include a playback status of the electronic media to the host device 110 and/or the viewing device 120. For example, in instances in which the host device 110 plays, pauses, or seeks the electronic media within the virtual room, the streaming service 104 may be configured to transmit the playback status to the viewing device 120 such that the viewing device 120 may play, pause, or seek in similar fashion to the host device 110. For example, in instances in which the host device 110 changes a playback status of the electronic media, the playback change may be sent to a Web Socket-based service which may distribute the playback change to all viewing devices, including the viewing device 120, present in the virtual room. Alternatively or additionally, the playback change may be communicated to the streaming service 104 for display on a discover page of the streaming service 104 to prospective viewing devices not present in the virtual room.
[0038] In some embodiments, the playback controls may be operable by the host device 110. In some embodiments, the playback controls may be transferrable to the viewing device 120. For example, in instances in which the host device 110 disconnects from the streaming service 104, the playback controls associated with the electronic media in the virtual room may be assigned to the viewing device 120. Alternatively or additionally, in instances in which the host device 110 reconnects to the virtual room after a disconnection, the host controls may be reassigned to the host device 110.
[0039] In some embodiments, the display of the electronic media in the virtual room may be independent of the host device 110 and/or the presence of the host device 110 in the virtual room. For example, in instances in which the host device 110 begins playback of electronic media in a virtual room and subsequently disconnects, the viewing device 110 may continue to display the electronic media in the virtual room. In some embodiments, after disconnecting and rejoining, the host device 110 may continue playback of the electronic media at the position of the viewing device 120. Alternatively or additionally, the streaming service 104 may be configured to adjust the playback speed of the host device 110 and/or the viewing device 120 so as to synchronize the playback between the devices, as further described herein.
[0040] In some embodiments, the streaming service 104 may be configured to provide a discover page to the viewing device 120 via the viewing GUI 122. For example, in instances in which the viewing device 120 in not in a virtual room, the viewing GUI 122 may display the discover page provided by the streaming service 104. In some embodiments, the discover page may include one or more virtual rooms displayed that may be joinable. In some embodiments, the discover page may include progress information that may provide an indication of an amount of the electronic media that may have been presented in the associated virtual room. An example discover page may be shown and described in conjunction with FIG. 4.
[0041] In some embodiments, the streaming service 104 may be configured to receive content from a content creator that may be selectable as electronic media available to be displayed in a virtual room. In some embodiments, the content creator may upload generated content to the streaming service 104. The generated content may include a description, pricing options, restriction on the number of virtual rooms that may display the generated content, restrictions on the number of viewing devices allowing in a virtual room displaying the generated content, and/or other constraints as determined by the content creator. In some embodiments, the content creator may be permitted to change the accessibility of the generated content on the streaming service 104. For example, the content creator may enable the generated content for display in a virtual room and/or the content creator may disable the generated content for display in a virtual room at any point as determined by the content creator. In some embodiments, the streaming service 104 may be configured to provide the content creator with statistics related to the generated content upon request from the content creator. For example, the content creator may request to know the number of virtual rooms that have displayed the generated content, the number of viewing device that have viewed the generated content, etc. Alternatively or additionally, the streaming service 104 may be configured to receive input from the content creator that may edit the generated content. An edit to the generated content may include pricing changes, content changes, and the like.
[0042] In some embodiments, the host device 110 and/or the viewing device 120 may include any device that may be capable of communicating over the network 102, capable of displaying an associated GUI, and/or capable of displaying electronic media thereon. For example, the host device 110 and/or the viewing device 120 may include a desktop computer, a laptop computer, a smartphone, a mobile phone, a tablet computer, or any other computing device that may be configured to perform the actions described above.
[0043] In some embodiments, the host device 110 may be configured to display and/or operate the host GUI 112. In some embodiments, the host GUI 112 may be configured to display electronic media, social contacts, chat, and/or combinations thereof in association with a virtual room. For example, the host GUI 112 may be configured to display the virtual room provided by the streaming service 104. In some embodiments, the host device 110 may send a request to the streaming service 104 to initiate a virtual room, after which, the streaming service 104 may initialize and provide access to the host device 110 to the virtual room via the host GUI 112. An example view of the host GUI 112 may be displayed and described in relation to FIGS. 2-5. In some embodiments, the host GUI 112 may provide a host user controls over the playback of the electronic media that may be displayed within the host GUI 112 and/or other viewing devices and the associated GUIs, such as the viewing device 120 and the viewing GUI 122.
[0044] In some embodiments, the viewing device 120 may be configured to display and/or operate the viewing GUI 122. In some embodiments, the viewing GUI 122 may be the same or similar as the host GUI 112. For example, the viewing GUI 122 may be configured to display electronic media, social contacts, chat, and/or combinations thereof in association with a virtual room, similar to the host GUI 112. For example, the viewing GUI 122 may be configured to display the virtual room provided by the streaming service 104. In some embodiments, the viewing device 120 may send a request to the streaming service 104 to join a virtual room, after which, the streaming service 104 may provide the viewing device access to the virtual room via the viewing GUI 122.
[0045] In some embodiments, the viewing GUI 122 may include one or more limitations on the operations that may be performed within the viewing GUI 122. For example, the viewing GUI 122 may be limited or restricted from operations related to the playback of the electronic media, such as playing, pausing, seeking, etc., when the host device 110 is present. Alternatively or additionally, the viewing GUI 122 may be configured to acquire control over operations related to the playback of the electronic media. For example, in instances in which the host device 110 becomes disconnected from the streaming service 104 and/or the network 102, the viewing device 120 and/or the viewing GUI 122 may acquire control over operations related to the playback of the electronic media.
[0046] Although illustrated as a single viewing device 120, the environment 100 may be configured to include more than one viewing device 120. In some embodiments, the number of viewing devices that may be included in a virtual room may be defined by the streaming service 104. For example, the streaming service 104 may limit the number of viewing devices in a virtual room to 10. Alternatively or additionally, the number of viewing devices included in a virtual room may be defined by the host device 110. For example, the host device 110 may include a limit on the number of viewing devices that may have access to the virtual room. Alternatively or additionally, no limit to the number of viewing devices may be defined by the host device 110 or the streaming service 104.
[0047] In some embodiments, the electronic media delivered to the host device 110 and/or the viewing device 120 may be delivered from the content server 106. For example, the electronic media delivered to the host device 110 and/or the viewing device 120 may be distributed from the content server 106 whereas the selection of the electronic media to display, the progress of the electronic media to display, the playback status of the electronic media, etc., may be synchronized between the host device 110 and the viewing device 120 by the streaming service 104.
[0048] Modifications, additions, or omissions may be made to the environment 100 without departing from the scope of the present disclosure. For example, more or less viewing devices may be included in the environment 100. Alternatively or additionally, the electronic media associated with the content server 106 may be disposed on the streaming service 104, the host device 110, and/or other computing devices. [0049] FIG. 2A illustrates an example graphical user interface (GUI) 200 associated with electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 200 may include a media area 205 and a chat area 230. The media area 205 may include user controls 210 which may include a content GUI button 212, a social display GUI button 214, a video feed GUI button 216, a microphone GUI button 218, and a connection GUI button 220. The chat area 230 may include a chat GUI button 232, an alert GUI button 234, a profile GUI button 236, a chat window GUI button 238, and a participants GUI button 240.
[0050] In some embodiments, the media area 205 may be configured to display at least electronic media. For example, the electronic media may occupy some or all of the media area 205 and/or may be resizable as desired. Alternatively or additionally, the media area 205 may be configured to display the user controls 210. In instances in which electronic media is displayed in the media area 205, the media area 205 may be configured to display media controls, such as play, pause, seek, etc., that may be used to control the playback of the electronic media. In some embodiments, the user controls 210 may be hidden from view. For example, in instances in which electronic media is displayed in the media area 205, the user control 210 may be hidden which may reduce distractions from the electronic media.
[0051] In some embodiments, a selection of the content GUI button 212 of the user controls 210 may enable the user to select a content source for electronic media that may be displayed in the media area 205. For example, in instances in which the content GUI button 212 is selected, the GUI 200 may transition to another GUI display, such as the
GUI 250 of FIG. 2B. [0052] In some embodiments, the social display GUI button 214 may be configured to toggle a display of a social contacts area that may be associated with the GUI 200. As illustrated in FIG. 2A, the social contracts area is disabled as indicated by the strike through icon representing the social display GUI button 214. FIG. 2B illustrates a display of the social contacts area, although the social display GUI button 214 is not displayed as electronic media is presented therein.
[0053] In some embodiments, the video feed GUI button 216 may be configured to toggle a video feed of the user that may be displayed in the social contacts area. For example, enabling the video feed GUI button 216 may enable a camera on the user device, such as the host device 110 of FIG. 1. Alternatively or additionally, the video feed GUI button 216 may be configured to provide the user access to video feed options. For example, the video feed options may include camera quality settings, background settings, overlay settings, and/or other similar camera settings.
[0054] In some embodiments, the microphone GUI button 218 may be configured to toggle an audio feed of the user. For example, enabling the microphone GUI button 218 may enable a microphone on the user device, such as the host device 110 of FIG. 1. Alternatively or additionally, the microphone GUI button 218 may be configured to provide the user access to microphone options. For example, the microphone options may include microphone volume, voice overlay settings, and/or other similar microphone settings.
[0055] In some embodiments, the connection GUI button 220 may be configured to toggle the connection of the user relative to the virtual room. For example, in instances in which a user is watching electronic media a selects the connection GUI button 220, the electronic media may discontinue playback and the device may disconnect from other related portions of the virtual room, such as the chat area and/or the social contacts area. Alternatively or additionally, in instances in which a device is not connected to a virtual room, the user may select the connection GUI button 220, which may connect to the virtual room and may cause other portions of the virtual room to operate, such as the chat area and/or the social contacts area.
[0056] In some embodiments, the chat area 230 may be configured to display communication between multiple users within a virtual room. For example, one or more users may use the chat area 230 to communicate with one another using various text and/or other communicative methods including emojis, gifs, memes, reactions, and the like. Alternatively or additionally, the chat area 230 may be configured to display one or more alerts for the user. Alternatively or additionally, the chat area 230 may be configured to display settings associated with the virtual room, the user, the chat, and/or other customizable settings.
[0057] In some embodiments, selection of the chat GUI button 232 may cause the chat area 230 to display the communications between the users in the virtual room. In some embodiments, the chat area 230 may include communications between users from previous virtual room sessions. For example, communications in a first session of a virtual room may be displayed in a second session of the virtual room. Alternatively or additionally, the chat area 230 may include chat from the current instance of the virtual room.
[0058] In some embodiments, the chat area 230 displayed after selection of the chat GUI button 232 may be further arranged to display the communication between users in the virtual room or to display the users in the virtual room. For example, upon selection of the chat window GUI button 238, the chat area 230 may be configured to display the communications between the users in the virtual room. Upon selection of the participants GUI button 240, the chat area 230 may be configured to display the current users in the virtual room. [0059] In some embodiments, selection of the alert GUI button 234 may cause the chat area 230 to display alerts and/or notifications for the user to view and/or respond to. In some embodiments, no alerts may be displayed. For example, no alerts may have been received, or the user may have responded to and/or cleared any alerts that were received. In some embodiments, multiple alerts may be displayed in the chat area 230. In some embodiments, the alerts may include a friend of the user online, a list of the users that have joined the virtual room, a new recommended virtual room, a previously visited virtual room online, a message indication from another user, notifications about the virtual room and/or updates to the virtual room service, and/or other similar notifications and alerts. In these and other embodiments, the alerts may be cleared by the user. Alternatively or additionally, the alerts may be removed from the chat area 230 after a threshold period of time.
[0060] In some embodiments, selection of the profile GUI button 236 may be configured to display user options. In some embodiments, the user options may be displayed in the chat area 230. Alternatively or additionally, the user options may be displayed in the media area 205. Alternatively or additionally, the user options may be displayed in a new window. In these and other embodiments, a user may select the profile GUI button 236 to alter options related to the chat area 230, the media area 205, and/or any related options to the GUI 200. In some embodiments, selection of the profile GUI button 236 may be configured to alter display options of the user in various portions of the GUI 200.
[0061] FIG. 2B illustrates an example GUI 250 with multiple content providers, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 250 may be configured to display one or more sources of electronic media, such as the content server 106 of FIG. 1. For example, the sources of electronic media may include streaming services, data storage including electronic media, and the like. In some embodiments, the content providers that may be displayed in the GUI 250 may include content associated with the streaming service, such as the streaming service 104 of FIG. 1. Alternatively or additionally, the content may be associated with a third- party content provider, such as the content server 106 of FIG. 1. For example, a third-party streaming service may include YOUTUBE, TUBI, and/or other third-party content providers.
[0062] In some embodiments, the GUI 250 may include a selectable GUI button associated with each source of electronic media. In some embodiments, the GUI 250 may include a selectable GUI button to add additional sources of electronic media. For example, the GUI 250 may be configured to accept user input that may enable the use of one or more additional sources of electronic media in the GUI 250, which may include receiving user log in information for the additional sources of electronic media.
[0063] FIG. 3 illustrates an example GUI 300 illustrating a virtual room, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 300 may include a media area 305, a social contacts area 315, and a chat area 330. In some embodiments, the media area 305 and the chat area 330 may be the same or similar as the media area 205 and the chat area 230 of FIG. 2 A.
[0064] In some embodiments, the GUI 300 may be configured to facilitate conversation between viewers within a virtual room in conjunction with watching electronic media. For example, electronic media may be displayed in the media area 305 while a text conversation may transpire in the chat area 330 and/or a verbal/visual conversation may transpire in the social contacts area 315. In some embodiments, the size of any of the media area 305, the social contacts area 315, and/or the chat area 330 may be adjusted within the GUI 300. For example, the media area 305 may be expanded such that the social contacts area 315 and/or the chat area 330 may not be displayed within the GUI 300. Alternatively or additionally, combinations of one or more of the media area 305, the social contacts area 315, and/or the chat area 330 may be displayed within the GUI 300, as configured by the user of the GUI 300.
[0065] In some embodiments, the social contacts area 315 may include a video feed of one or more users present in the virtual room. For example, in instances in which a host and two viewers are present in a virtual room, three video feeds of the respective viewers in the virtual room may be displayed in the social contacts area 315. In some embodiments, the video feed may be disabled by the user providing the video feed and/or by a user viewing the video feed in the social contacts area 315 of the GUI 300. For example, in instances in which a user does not want to be displayed in the virtual room, the user may disable their video feed such that the user may not be displayed in any social contacts area 315 of other viewers in the virtual room.
[0066] In some embodiments, the social contacts area 315 may be configured to display an image selected by the associated user. For example, in instances in which a user does not want to be displayed in the virtual room via a video feed, the user may choose to display an image, which image may be displayed in other viewers in the virtual room’s social contacts area 315.
[0067] FIG. 4 illustrates an example GUI 400 illustrating a discover page of the virtual room, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 400 may include a social status area 410, an upcoming schedule area 420, and a virtual room overview area 430. The upcoming schedule area 420 may include a time 422, a title 424, and a payment icon 426. The virtual room overview area 430 may include a next GUI button 432, a progress indicator 434, and a thumbnail
436. [0068] In some embodiments, the social status area 410 may be configured to display a listing of contacts that may be associated with the user of the GUI 400. For example, the social status area 410 may include a listing of friends that a user has connected with within the environment the virtual room is a element of, such as the environment 100 of FIG. 1.
[0069] In some embodiments, the social status area 410 may include a visual indicator associated with the contact in the social status area 410 that may indicate the contact’s online presence. For example, a green icon may indicate the contact is online while a red icon may indicate the contact is online and currently watching electronic media in a virtual room.
[0070] In some embodiments, the social status area 410 may be configured to display one or more virtual rooms that a viewer has created. The virtual rooms may have been created in the current viewing session or in a prior viewing session. Alternatively or additionally, the social status area 410 may be configured to display one or more virtual rooms that the viewer has participated in. For example, in instances in which a viewer joined a first virtual room to watch electronic media, the first virtual room may be included in the viewer’s social status area 410. In some embodiments, the virtual rooms displayed in the social status area 410 may include an indication of current playback. For example, in instances in which the first virtual room is currently displaying electronic media, the social status area 410 may display an indication that the first virtual room is displaying electronic media.
[0071] In some embodiments, the upcoming schedule area 420 may include entries that may include one or more virtual rooms and associated electronic media that may be displayed at a time in the future. In some embodiments, an entry that may be shown may include a time 422 and/or a title 424 that may be associated with a virtual room. For example, as illustrated in FIG. 4, “Kite Liberator” may be the title 424 of electronic media that may be shown at a time 422 of “2:30 pm” in the virtual room titled “Kite watchers party”. In some embodiments, the upcoming schedule area 420 may be arranged temporally. For example, entries that may be configured to display next may be arranged at the top of the list of the upcoming electronic media. Alternatively or additionally, the upcoming schedule area 420 may be sorted by title 424 such that the upcoming electronic media may be displayed alphabetically. Alternatively or additionally, one or more filters may be applied to the upcoming schedule area 420 such that the number of entries in the upcoming schedule area 420 may be limited. For example, the upcoming schedule area 420 may be filtered such that entries occurring after a determined time (e.g., 2:00 pm) may be displayed and entries prior to the determined time may not be displayed. In these and other embodiments, a search feature may be included in the upcoming schedule area 420. For example, the search feature may be configured to permit a user to search for times, titles, and/or virtual rooms in the upcoming schedule area 420.
[0072] In some embodiments, one or more entries in the upcoming schedule area 420 may include the payment icon 426. The payment icon 426 may indicate a cost associated with joining the associated virtual room and/or with the electronic media that may be displayed in the associated virtual room. For example, in instances in which the payment icon 426 is displayed relative to an entry in the upcoming schedule area 420, a fee may be collected prior to admittance into the associated virtual room.
[0073] In some embodiments, a host of a virtual room, such as the host device 110 of FIG. 1, may make a payment prior to creating the virtual room. Alternatively or additionally, some electronic media may be inaccessible by the host device in the virtual room until a payment is received. For example, some electronic media may include a cost before being included for viewing in a virtual room. In these and other embodiments, the host device that submits a payment in association with a virtual room and/or electronic media, may manage the virtual room such that viewers that desire to join the virtual room may submit a payment to join prior to joining the virtual room. For example, a viewing device, such as the viewing device 120 of FIG. 1, may submit a payment to the host device prior to joining the virtual room created by the host device that includes a payment to join. In some embodiments, the cost incurred by the host device setting up the virtual room and/or electronic media may be received from the viewing devices in an equal division among the viewing devices. For example, in instances in which the host device incurs a cost of 50 dollars to setup a virtual room and five viewing devices join the virtual room, each viewing device may submit a payment of ten dollars. Alternatively or additionally, the host device may determine a payment amount that may be independent of the number of viewing devices that may join the virtual room. For example, a cost of five dollars may be requested by the host device prior to joining the virtual room regardless of the number of viewing devices that join the virtual room.
[0074] In some embodiments, the virtual room overview area 430 may be configured to provide a visual indication of available virtual rooms that may be displaying electronic media. For example, the virtual room overview area 430 may be configured to display one or more recommended virtual rooms, one or more previously visited virtual rooms, and/or one or more friend’s virtual rooms. In these and other embodiments, the virtual room overview area 430 may be configured to provide a visual indication of the progress of the electronic media displayed in the associated virtual room.
[0075] In some embodiments, selection of the next GUI button 432 may provide a visual indication of the next electronic media that may be displayed in the associated virtual room. For example, in instances in which the next GUI button 432 is selected, a text description and/or a thumbnail of the next electronic media that may be displayed in the associated virtual room may be displayed. [0076] In some embodiments, the progress indicator 434 may provide a visual indication of the current progress of the electronic media displayed in the associated virtual room. For example, in instances in which half of the electronic media has been presented in the virtual room, the progress indicator 434 may include a progress bar that is half filled. Alternatively or additionally, the progress indicator 434 may include numbers that represent the current progress of the electronic media. For example, in instances in which an electronic media is 60 minutes long and the current progress in 20 minutes, the progress indicator 434 may indicate that 20 of 60 minutes have elapsed (e.g., 0:20.0 : 1 :00.0). Alternatively or additionally, the progress indicator 434 may include a percentage that may indicate the current progress of the electronic media relative to the total length of the electronic media. For example, in instances in which 20 minutes have elapsed of a 60- minute movie, the progress indicator 434 may display 33% which may indicate the current progress of the electronic media.
[0077] In some embodiments, the thumbnail 436 may illustrate the electronic media that may be displayed in the associated virtual room. In some embodiments, the thumbnail 436 may include an image of the electronic media (e.g., a movie poster for a movie) that may identify the electronic media being displayed in the associated virtual room. Alternatively or additionally, the thumbnail 436 may include a changing image that may provide an indication of the progress of the electronic media of the associated virtual room. For example, in instances in which the progress of the electronic media is in between the start and the end, a screenshot may be displayed as the thumbnail 436 which may provide an indication of the location of the electronic media that may be currently displayed. In some embodiments, the thumbnail 436 may be configured to update at a regular interval, which may be based on the current location of the electronic media, as may be indicated by the progress indicator 434. For example, the thumbnail 436 may be configured to update every five minutes of display time of the electronic media.
[0078] FIG. 5A illustrates an example GUI 500 illustrating a concise queued media area, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 500 may include a media area 505 and a chat area 530. The chat area 530 may include a queue 535. In some embodiments, the media area 505 and the chat area 530 may be the same or similar as the media area 205 and the chat area 230 of FIG. 2A.
[0079] In some embodiments, the queue 535 may be configured to display a next electronic media that may be displayed in the virtual room. In some embodiments, the electronic media in the queue 535 may be added by a host device of the virtual room, such as the host device 110 of FIG. 1. Alternatively or additionally, the electronic media in the queue 535 may be added by a viewing device of the virtual room, such as the viewing device 120 of FIG. 1. In some embodiments, the electronic media in the queue 535 may be voted on prior to being added to the queue 535. For example, in instances in which the viewing device proposes a new electronic media to add to the queue 535, other viewers in the virtual room, such as the host device, may submit an input indicating approval or disapproval of the proposed electronic media. An example voting option may be displayed and described relative to FIG. 5B.
[0080] In some embodiments, the queue 535 may display text describing the next electronic media. Alternatively or additionally, the queue 535 may include a thumbnail image and/or a description of the next electronic media. In these and other embodiments, the queue 535 may be configured to expand and contract which may vary the number of electronic media displayed in the queue 535. For example, in instances in which the queue 535 is contracted, the queue 535 may display a single electronic media. Alternatively or additionally, in instances in which the queue 535 is expanded, the queue 535 may display two or more electronic media and/or may include a scrollable option in instances in which more electronic media is included in the queue 535 than may be displayed in the chat area
530.
[0081] FIG. 5B illustrates an example GUI 550 including an expanded queued media area, in accordance with at least one embodiment described in the present disclosure. In some embodiments, the GUI 550 may be the same or similar to the GUI 550 of FIG. 5A. In some embodiments, the chat area 530 may include a queue 535 and voting GUI buttons 537. In some embodiments, the chat area 530 and the queue 535 may be the same or similar as the chat area 530 and the queue 535 of FIG. 5A.
[0082] In some embodiments, the voting GUI buttons 537 may be configured to receive input from the user. In some embodiments, the results of the inputs from the voting GUI buttons 537 from viewers in the virtual room may be used to determine electronic media in the queue 535. For example, in instances in which a proposed electronic media is presented for voting and a majority of the viewers in the virtual room reject the proposed electronic media, the proposed electronic media may not be added to the queue 535. In some embodiments, proposed electronic media that receives a greater number of accept votes compared to reject votes may be added to the queue 535. In some embodiments, the electronic media that is added to the queue 535 may be arranged in the order that the electronic media was proposed and/or accepted. Alternatively or additionally, the order of the queue 535 may be rearranged by one or more viewers in the virtual room and/or the host of the virtual room.
[0083] FIG. 6 illustrates a flowchart of an example method 600 of electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure. The method 600 may be arranged in accordance with at least one embodiment described in the present disclosure.
[0084] The method 600 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device. However, another system, or combination of systems, may be used to perform the method 600.
[0085] For simplicity of explanation, methods described herein are depicted and described as a series of acts. However, acts in accordance with this disclosure may occur in various orders and/or concurrently, and with other acts not presented and described herein. Further, not all illustrated acts may be used to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods may alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, the methods disclosed in this specification are capable of being stored on an article of manufacture, such as a non- transitory computer-readable medium, to facilitate transporting and transferring such methods to computing devices. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
[0086] The method 600 may begin at block 602 where the processing logic may receive an initial request from a host device to initialize a virtual room. [0087] At block 604, in response to the initial request, the processing logic may initialize the virtual room including a host GUI. In some embodiments, the virtual room may include a chat area, a social contacts area, and a media area. In some embodiments, the social contacts area may include video provided by a host user associated with the host device and a viewing user associated with the viewing device.
[0088] At block 606, the processing logic may provide the host device access to the virtual room via the host GUI.
[0089] At block 608, the processing logic may receive a display request to display electronic media in the media area of the host GUI.
[0090] At block 610, in response to the display request, the processing logic may display the electronic media in the media area of the host GUI. In some embodiments, the electronic media may be delivered from a content source to the host device and the viewing device.
[0091] At block 612, the processing logic may provide a discover page that displays information pertaining to the virtual room. In some embodiments, the information on the discover page may include progress information which may indicate an amount of the electronic media that may have been presented.
[0092] In some embodiments, the discover page may include a social status area, an upcoming schedule area, and/or a virtual room overview area. In some embodiments, the social status area may be configured to display a listing of individual connections and the individual connections current online status. In some embodiments, the virtual room overview area may be configured to display multiple virtual rooms. In some embodiments, the multiple virtual rooms may include a previously visited virtual room, a friend’s virtual room, or a recommended virtual room. [0093] In some embodiments, the upcoming schedule area may include a listing of upcoming electronic media that may be displayed in an associated virtual room. Alternatively or additionally, the upcoming schedule area may include an upcoming time associated with the upcoming electronic media and the associated virtual room. In these and other embodiments, the upcoming schedule area may include a payment icon that may indicate a cost associated with the upcoming electronic media.
[0094] In some embodiments, the virtual room overview area may include the progress bar associated with an active virtual room. Alternatively or additionally, the virtual room overview area may include a thumbnail that may be associated with an electronic media displayed in the active virtual room. In some embodiments, the thumbnail may be configured to update based on the current status/location of the progress bar. Alternatively or additionally, the virtual room overview area may include a GUI button that may be configured to display the next electronic media to be presented in the active virtual room upon the button being selected.
[0095] In some embodiments, the progress information may include an elapsed time versus a total time counter. Alternatively or additionally, the progress information may include a percentage indicating the amount of time elapsed relative to the total time. Alternatively or additionally, the progress information may include a graphical progress bar.
[0096] In some embodiments, the amount of the electronic media that has been presented may be displayed as a progress in relation to total run time of the electronic media
[0097] At block 614, the processing logic may receive a viewing request from a viewing device to join the virtual room. [0098] At block 616, in response to the viewing request, the processing logic may provide viewing device access to the virtual room via a viewing GUI. In some embodiments, the electronic media may be streamed to the viewing device at a time corresponding to the progress information.
[0099] Modifications, additions, or omissions may be made to the method 600 without departing from the scope of the present disclosure. For example, in some embodiments, the method 600 may include any number of other components that may not be explicitly illustrated or described.
[00100] Alternatively or additionally, the processing logic may be configured to buffer at least a portion of the electronic media on the host device. In instances in which the processing logic buffers at least a portion of the electronic media and in response to the virtual room disconnecting from a content source associated with the electronic media, the processing logic may be configured to continue to display electronic media from the buffer in the media area of the host GUI and the viewing GUI.
[00101] Alternatively or additionally, the processing logic may be configured to receive a request to add additional electronic media to a viewing queue via the host GUI or the viewing GUI. In some embodiments, the processing logic may receive confirmation to add the additional electronic media to the viewing queue from at least one of the host device or the viewing device. In some embodiments, the processing logic may be configured to add the additional electronic media to the viewing queue. In some embodiments, the request to add the additional electronic media to the viewing queue may be received from the viewing device.
[00102] Alternatively or additionally, the processing logic may be configured to receive a payment from the host device in conjunction with the virtual room or the electronic media. Alternatively or additionally, the processing logic may be configured to receive a viewing payment from the viewing device in conjunction with the virtual room or the electronic media. In some embodiments, the viewing payment may be based on a number of viewers in the virtual room.
[00103] Alternatively or additionally, the processing logic may be configured to display an indication payment on the discover page that may be associated with the virtual room. In some embodiments, the processing logic may be configured to receive a payment from the viewing device prior to the viewing device joining the virtual room.
[00104] FIG. 7 illustrates a flowchart of an example method 700 of managing connectivity issues related to electronic file presentation in a network environment, in accordance with at least one embodiment described in the present disclosure. The method 700 may be arranged in accordance with at least one embodiment described in the present disclosure.
[00105] The method 700 may be performed by processing logic that may include hardware (circuitry, dedicated logic, etc.), software (such as is run on a general purpose computer system or a dedicated machine), or a combination of both, which processing logic may be included in the streaming service 104 of FIG. 1, the system 800 of FIG. 8, or another computer system or device. However, another system, or combination of systems, may be used to perform the method 700.
[00106] For simplicity of explanation, methods described herein are depicted and described as a series of acts. However, acts in accordance with this disclosure may occur in various orders and/or concurrently, and with other acts not presented and described herein. Further, not all illustrated acts may be used to implement the methods in accordance with the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the methods may alternatively be represented as a series of interrelated states via a state diagram or events. Additionally, the methods disclosed in this specification are capable of being stored on an article of manufacture, such as a non- transitory computer-readable medium, to facilitate transporting and transferring such methods to computing devices. The term article of manufacture, as used herein, is intended to encompass a computer program accessible from any computer-readable device or storage media. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
[00107] The method 700 may begin at block 702 where the processing logic may continue playback of electronic media to a viewing device in response to a host device disconnecting from a virtual room.
[00108] At block 704, the processing logic may assign host controls of the virtual room to the viewing device in response to the host device disconnecting from the virtual room. In some embodiments, the host controls may include play, pause, and seek operations.
[00109] At block 706, the processing logic may reassign the host controls of the virtual room to the host device in response to the host device rejoining the virtual room after disconnecting.
[00110] It is understood that, for this and other processes, operations, and methods disclosed herein, the functions and/or operations performed may be implemented in differing order. Furthermore, the outlined functions and operations are only provided as examples, and some of the functions and operations may be optional, combined into fewer functions and operations, or expanded into additional functions and operations without detracting from the essence of the disclosed embodiments.
[00111] FIG. 8 is a block diagram illustrating an example system 800 that may be used for electronic file presentation in a network environment, according to at least one embodiment of the present disclosure. The computing system 800 may be configured to implement or direct one or more operations associated with electronic file presentation in a network environment, which may include the network 102, streaming service 104, the content server 106, the host device 110, and/or the viewing device 120 of FIG. 1. The system 800 may include a processor 802, memory 804, data storage 806, and a communication unit 808, which all may be communicatively coupled. In some embodiments, the system 800 may be part of any of the systems or devices described in this disclosure.
[00112] For example, the system 800 may be part of the streaming service 104 of FIG.
1 and may be configured to perform one or more of the tasks described above with respect to the streaming service 104. As another example, the system 800 may be part of the host device 110 and may be configured to perform one or more of the tasks described above.
[00113] Generally, the processor 802 may include any computing entity, or processing device including various computer hardware or software modules and may be configured to execute instructions stored on any applicable computer-readable storage media. For example, the processor 802 may include a microprocessor, a microcontroller, a parallel processor such as a graphics processing unit (GPU) or tensor processing unit (TPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a Field- Programmable Gate Array (FPGA), or any other digital or analog circuitry configured to interpret and/or to execute program instructions and/or to process data.
[00114] Although illustrated as a single processor in FIG. 8, it is understood that the processor 802 may include any number of processors distributed across any number of networks or physical locations that are configured to perform individually or collectively any number of operations described herein.
[00115] In some embodiments, the processor 802 may be configured to interpret and/or execute program instructions and/or process data stored in the memory 804, the data storage 806, or the memory 804 and the data storage 806. In some embodiments, the processor 802 may fetch program instructions from the data storage 806 and load the program instructions in the memory 804. After the program instructions are loaded into memory 804, the processor 802 may execute the program instructions.
[00116] For example, in some embodiments, the processor 802 may be configured to interpret and/or execute program instructions and/or process data stored in the memory 804, the data storage 806, or the memory 804 and the data storage 806. The program instruction and/or data may be related to electronic file presentation in a network environment such that the system 800 may perform or direct the performance of the operations associated therewith as directed by the instructions. In these and other embodiments, the instructions may be used to perform the method 600 of FIG. 6 and/or the method 700 of FIG. 7.
[00117] The memory 804 and the data storage 806 may include computer-readable storage media or one or more computer-readable storage mediums for carrying or having computer-executable instructions or data structures stored thereon. Such computer- readable storage media may be any available media that may be accessed by a general- purpose or special-purpose computer, such as the processor 802.
[00118] By way of example, and not limitation, such computer-readable storage media may include non-transitory computer-readable storage media including Random Access Memory (RAM), Read-Only Memory (ROM), Electrically Erasable Programmable Read- Only Memory (EEPROM), Compact Disc Read-Only Memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, flash memory devices (e.g., solid state memory devices), or any other storage medium which may be used to carry or store particular program code in the form of computer-executable instructions or data structures and which may be accessed by a general -purpose or special- purpose computer. Combinations of the above may also be included within the scope of computer-readable storage media.
[00119] Computer-executable instructions may include, for example, instructions and data configured to cause the processor 802 to perform a certain operation or group of operations as described in this disclosure. In these and other embodiments, the term “non- transitory” as explained in the present disclosure should be construed to exclude only those types of transitory media that were found to fall outside the scope of patentable subject matter in the Federal Circuit decision of In re Nuijten, 500 F.3d 1346 (Fed. Cir. 2007). Combinations of the above may also be included within the scope of computer-readable media.
[00120] The communication unit 808 may include any component, device, system, or combination thereof that is configured to transmit or receive information over a network. In some embodiments, the communication unit 808 may communicate with other devices at other locations, the same location, or even other components within the same system. For example, the communication unit 808 may include a modem, a network card (wireless or wired), an infrared communication device, a wireless communication device (such as an antenna), and/or chipset (such as a Bluetooth® device, an 802.6 device (e.g., Metropolitan Area Network (MAN)), a WiFi device, a WiMax device, cellular communication facilities, etc.), and/or the like. The communication unit 808 may permit data to be exchanged with a network and/or any other devices or systems described in the present disclosure. For example, when the system 800 is included in the streaming service 104 of FIG. 1, the communication unit 808 may allow the streaming service 104 to communicate with the host device 110.
[00121] Modifications, additions, or omissions may be made to the system 800 without departing from the scope of the present disclosure. For example, in some embodiments, the system 800 may include any number of other components that may not be explicitly illustrated or described. Further, depending on certain implementations, the system 800 may not include one or more of the components illustrated and described.
[00122] As indicated above, the embodiments described herein may include the use of a computing system (e.g., the processor 802 of FIG. 8) including various computer hardware or software modules. Further, as indicated above, embodiments described herein may be implemented using computer-readable media (e.g., the memory 804 of FIG. 8) for carrying or having computer-executable instructions or data structures stored thereon.
[00123] In some embodiments, the different components, modules, engines, and services described herein may be implemented as objects or processes that execute on a computing system (e.g., as separate threads). While some of the systems and methods described herein are generally described as being implemented in software (stored on and/or executed by general purpose hardware), specific hardware implementations or a combination of software and specific hardware implementations are also possible and contemplated.
[00124] In accordance with common practice, the various features illustrated in the drawings may not be drawn to scale. The illustrations presented in the present disclosure are not meant to be actual views of any particular apparatus (e.g., device, system, etc.) or method, but are merely idealized representations that are employed to describe various embodiments of the disclosure. Accordingly, the dimensions of the various features may be arbitrarily expanded or reduced for clarity. In addition, some of the drawings may be simplified for clarity. Thus, the drawings may not depict all of the components of a given apparatus (e.g., device) or all operations of a particular method.
[00125] Terms used herein and especially in the appended claims (e.g., bodies of the appended claims) are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including, but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes, but is not limited to,” etc.).
[00126] Additionally, if a specific number of an introduced claim recitation is intended, such an intent will be explicitly recited in the claim, and in the absence of such recitation no such intent is present. For example, as an aid to understanding, the following appended claims may contain usage of the introductory phrases “at least one” and “one or more” to introduce claim recitations. However, the use of such phrases should not be construed to imply that the introduction of a claim recitation by the indefinite articles “a” or “an” limits any particular claim containing such introduced claim recitation to embodiments containing only one such recitation, even when the same claim includes the introductory phrases “one or more” or “at least one” and indefinite articles such as “a” or “an” (e.g., “a” and/or “an” should be interpreted to mean “at least one” or “one or more”); the same holds true for the use of definite articles used to introduce claim recitations.
[00127] In addition, even if a specific number of an introduced claim recitation is explicitly recited, it is understood that such recitation should be interpreted to mean at least the recited number (e.g., the bare recitation of “two recitations,” without other modifiers, means at least two recitations, or two or more recitations). Furthermore, in those instances where a convention analogous to “at least one of A, B, and C, etc.” or “one or more of A, B, and C, etc.” is used, in general such a construction is intended to include A alone, B alone, C alone, A and B together, A and C together, B and C together, or A, B, and C together, etc. For example, the use of the term “and/or” is intended to be construed in this manner.
[00128] Further, any disjunctive word or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms. For example, the phrase “A or B” should be understood to include the possibilities of “A” or “B” or “A and B.”
[00129] Additionally, the use of the terms “first,” “second,” “third,” etc., are not necessarily used herein to connote a specific order or number of elements. Generally, the terms “first,” “second,” “third,” etc., are used to distinguish between different elements as generic identifiers. Absence a showing that the terms “first,” “second,” “third,” etc., connote a specific order, these terms should not be understood to connote a specific order. Furthermore, absence a showing that the terms first,” “second,” “third,” etc., connote a specific number of elements, these terms should not be understood to connote a specific number of elements. For example, a first widget may be described as having a first side and a second widget may be described as having a second side. The use of the term “second side” with respect to the second widget may be to distinguish such side of the second widget from the “first side” of the first widget and not to connote that the second widget has two sides.
[00130] All examples and conditional language recited herein are intended for pedagogical objects to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions. Although embodiments of the present disclosure have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the present disclosure.

Claims

CLAIMS What is claimed is:
1. A method, comprising: receiving an initial request from a host device to initialize a virtual room; in response to the initial request, initializing the virtual room including a host graphical user interface (GUI) comprising a chat area, a social contacts area, and a media area; providing the host device access to the virtual room via the host GUI; receiving a display request to display electronic media in the media area of the host GUI; in response to the display request, displaying the electronic media in the media area of the host GUI; providing a discover page that displays information pertaining to the virtual room including progress information indicating an amount of the electronic media that has been presented; receiving a viewing request from a viewing device to join the virtual room; and in response to the viewing request, providing the viewing device access to the virtual room via a viewing GUI, wherein the electronic media is streamed to the viewing device at a time corresponding to the progress information.
2. The method of claim 1, wherein in response to a disconnection of the host device from the virtual room, the method further comprises continuing playback of the electronic media to the viewing device.
3. The method of claim 2, wherein in response to the disconnection of the host device from the virtual room, the method further comprises assigning host controls of the virtual room to the viewing device.
4. The method of claim 3, wherein the host controls include play, pause, and seek operations.
38
5. The method of claim 2, wherein in response to the host device rejoining to the virtual room, the method further comprises reassigning the host controls of the virtual room to the host device.
6. The method of claim 1, wherein the electronic media is delivered from a content source to the host device and the viewing device.
7. The method of claim 1, further comprising: buffering at least a portion of the electronic media on the host device; and in response to the virtual room disconnecting from a content source associated with the electronic media, continuing to display electronic media from the buffer in the media area of the host GUI and the viewing GUI.
8. The method of claim 1, further comprising: receiving a request to add additional electronic media to a viewing queue via the host GUI or the viewing GUI; receiving confirmation to add the additional electronic media to the viewing queue from at least one of the host device or the viewing device; and adding the additional electronic media to the viewing queue.
9. The method of claim 8, wherein the request to add the additional electronic media to the viewing queue is received from the viewing device.
10. The method of claim 1, further comprising receiving a payment from the host device in conjunction with the virtual room or the electronic media.
11. The method of claim 10, further comprising receiving a viewing payment from the viewing device in conjunction with the virtual room or the electronic media, wherein the viewing payment is based on a number of viewers in the virtual room.
12. The method of claim 1, further comprising: displaying an indication payment on the discover page associated with the virtual room; and
39 prior to the viewing device joining the virtual room, receiving a payment from the viewing device.
13. The method of claim 1, wherein the social contacts area includes video provided by a host user associated with the host device and a viewing user associated with the viewing device.
14. The method of claim 1, wherein the discover page further comprises at least one of: a social status area configured to display a listing of individual connections and the individual connections current online status; an upcoming schedule area; or a virtual room overview area that is configured to display a plurality of virtual rooms including at least one of: a previously visited virtual room, a friend’s virtual room, or a recommended virtual room.
15. The method of claim 14, wherein the upcoming schedule area comprises: a listing of upcoming electronic media to be displayed in an associated virtual room; and an upcoming time associated with the upcoming electronic media and the associated virtual room.
16. The method of claim 14, wherein the upcoming schedule area includes a payment icon indicating a cost associated with the electronic media in the upcoming schedule area.
17. The method of claim 14, wherein the virtual room overview area comprises at least one of: a progress bar associated with an active virtual room; a thumbnail associated with an electronic media displayed in the active virtual room, wherein the thumbnail is configured to update based on a current status of the progress bar; and a GUI button configured to display the next electronic media to be presented in the active virtual room upon the GUI button being selected.
40
18. The method of claim 1, wherein the progress information comprises at least one of: an elapsed time versus a total time counter; a percentage indicating the elapsed time relative to the total time; and a graphical progress bar.
19. The method of claim 1, wherein the amount of the electronic media that has been presented is displayed as a progress in relation to total run time of the electronic media.
20. A system, comprising:
A memory; and
One or more processors coupled to the memory, the memory storing instructions that, when executed by the one or more processors, cause the system to perform operations comprising: receive an initial request from a host device to initialize a virtual room; in response to the initial request, initialize the virtual room including a host graphical user interface (GUI) comprising a chat area, a social contacts area, and a media area; provide the host device access to the virtual room via the host GUI; receive a display request to display electronic media in the media area of the host GUI; in response to the display request, display the electronic media in the media area of the host GUI; provide a discover page that displays information pertaining to the virtual room including progress information indicating an amount of the electronic media that has been presented; receive a viewing request from a viewing device to join the virtual room; and in response to the viewing request, provide the viewing device access to the virtual room via a viewing GUI, wherein the electronic media is streamed to the viewing device at a time corresponding to the progress information.
PCT/US2021/047201 2020-08-23 2021-08-23 Electronic file presentation in a network environment WO2022046664A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202063069149P 2020-08-23 2020-08-23
US63/069,149 2020-08-23

Publications (2)

Publication Number Publication Date
WO2022046664A1 WO2022046664A1 (en) 2022-03-03
WO2022046664A9 true WO2022046664A9 (en) 2023-06-15

Family

ID=80353875

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2021/047201 WO2022046664A1 (en) 2020-08-23 2021-08-23 Electronic file presentation in a network environment

Country Status (1)

Country Link
WO (1) WO2022046664A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11652860B2 (en) * 2020-09-01 2023-05-16 Yahoo Assets Llc Synchronization of streaming content using live edge offsets

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8661353B2 (en) * 2009-05-29 2014-02-25 Microsoft Corporation Avatar integrated shared media experience
GB201007191D0 (en) * 2010-04-29 2010-06-09 British Broadcasting Corp Content provision system
US10776103B2 (en) * 2011-12-19 2020-09-15 Majen Tech, LLC System, method, and computer program product for coordination among multiple devices
EP2635035A1 (en) * 2012-02-29 2013-09-04 Teliasonera AB A method, an apparatus and a computer readable medium for delivering media content
US9699485B2 (en) * 2012-08-31 2017-07-04 Facebook, Inc. Sharing television and video programming through social networking

Also Published As

Publication number Publication date
WO2022046664A1 (en) 2022-03-03

Similar Documents

Publication Publication Date Title
US11514536B2 (en) Systems and methods for providing a community-based dating service for a social networking system
US10356476B2 (en) Playback of pre-recorded social media sessions
US9377938B2 (en) Live videocast to social network
US8788680B1 (en) Virtual collaboration session access
KR20230062588A (en) Live group video streaming
US9003303B2 (en) Production scripting in an online event
US20140096167A1 (en) Video reaction group messaging with group viewing
US8943141B2 (en) Social networking system and methods of implementation
US20140136310A1 (en) Method and system for seamless interaction and content sharing across multiple networks
US10324587B2 (en) Participant selection and abuse prevention for interactive video sessions
US20080229215A1 (en) Interaction In A Virtual Social Environment
EP2680198A1 (en) Social networking system and methods of implementation
US11297391B2 (en) Television interface for multi-party social media sessions
CN103974133A (en) Device and method for waiting for online event
US9026929B2 (en) Event management/production of an online event using event analytics
JP2015525496A (en) Real-time composite broadcasting system and method having a mechanism for adjusting a plurality of media feeds
US20180109477A1 (en) Methods, systems, and media for facilitating user interactions while watching media content
US20130227434A1 (en) Audio/Text Question Submission and Control in a Produced Online Event
US11272140B2 (en) Dynamic shared experience recommendations
US20140047025A1 (en) Event Management/Production for an Online Event
CN103516783A (en) Simultaneous experience of online content
US20200104092A1 (en) Group Slideshow
US20140245351A1 (en) System For Booking Television Programs
CN112055252A (en) Multi-screen interaction method and device, computer readable medium and electronic equipment
CN114727146A (en) Information processing method, device, equipment and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21862501

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 03/07/2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21862501

Country of ref document: EP

Kind code of ref document: A1