Patent Publication Number: US-11042584-B2

Title: Systems and methods for random access of slide content in recorded webinar presentations

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application claims priority to, and the benefit of, U.S. Provisional Patent Application entitled, “System and method for retrieving and analyzing rich medias,” having Ser. No. 62/537,023, filed on Jul. 26, 2017, which is incorporated by reference in its entirety. 
    
    
     TECHNICAL FIELD 
     The present disclosure generally relates to multimedia content and more particularly, to systems and methods for providing random access of slide content in the context of recorded webinar presentations. 
     BACKGROUND 
     Webinars or live web-based seminars allow presenters to present information in real time, where presenters may include multimedia content to further enhance the presentation. In some cases, webinar attendees may later wish to access archived webinars. However, with conventional live video streaming platforms, users are typically limited to searching the webinar content from the beginning. Therefore, there is a need for an improved mechanism for efficiently accessing content in recorded webinar presentations. 
     SUMMARY 
     In accordance with one embodiment, a server computing device receives user input from a presenter to initiate a live webinar presentation comprising a plurality of slides. Responsive to receiving the user input to initiate the live webinar presentation, the server computing device monitors slide transitions triggered by the presenter and logs time stamp data for each slide transition, generates attendee participation data, and stores the live webinar presentation as a webinar presentation video, the time stamp data, and the attendee participation data. The server computing device obtains a request from a client device to view the stored webinar presentation video and partitions the webinar presentation video into slides based on the time stamp data. The server computing device causes a user interface to be displayed at the client device, the user interface displaying, for each slide, thumbnail graphical representations of each slide for playback of the stored webinar presentation based on a thumbnail graphical representation selected by the user. 
     Another embodiment is a system that comprises a memory storing instructions and a processor coupled to the memory. The processor is configured by the instructions to receive user input from a presenter to initiate a live webinar presentation comprising a plurality of slides. Responsive to receiving the user input to initiate the live webinar presentation, the processor monitors slide transitions triggered by the presenter and logs time stamp data for each slide transition, generates attendee participation data, and stores the live webinar presentation as a webinar presentation video, the time stamp data, and the attendee participation data. The processor obtains a request from a client device to view the stored webinar presentation video and partitions the webinar presentation video into slides based on the time stamp data. The processor causes a user interface to be displayed at the client device, the user interface displaying, for each slide, thumbnail graphical representations of each slide for playback of the stored webinar presentation based on a thumbnail graphical representation selected by the user. 
     Another embodiment is a non-transitory computer-readable storage medium storing instructions to be implemented by a computing device having a processor, wherein the instructions, when executed by the processor, cause the computing device to receive user input from a presenter to initiate a live webinar presentation comprising a plurality of slides. Responsive to receiving the user input to initiate the live webinar presentation, the processor monitors slide transitions triggered by the presenter and logs time stamp data for each slide transition, generates attendee participation data, and stores the live webinar presentation as a webinar presentation video, the time stamp data, and the attendee participation data. The processor obtains a request from a client device to view the stored webinar presentation video and partitions the webinar presentation video into slides based on the time stamp data. The processor causes a user interface to be displayed at the client device, the user interface displaying, for each slide, thumbnail graphical representations of each slide for playback of the stored webinar presentation based on a thumbnail graphical representation selected by the user. 
     Other systems, methods, features, and advantages of the present disclosure will be or become apparent to one with skill in the art upon examination of the following drawings and detailed description. It is intended that all such additional systems, methods, features, and advantages be included within this description, be within the scope of the present disclosure, and be protected by the accompanying claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Various aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, with emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views. 
         FIG. 1  is a block diagram of a server computing device for providing random access of multimedia content in recorded webinar presentations in accordance with various embodiments of the present disclosure. 
         FIG. 2  is a schematic diagram of the server computing device of  FIG. 1  for providing random access of multimedia content in recorded webinar presentations in accordance with various embodiments of the present disclosure. 
         FIG. 3  is a top-level flowchart illustrating examples of functionality implemented as portions of the computing device of  FIG. 1  for providing random access of multimedia content in recorded webinar presentations according to various embodiments of the present disclosure. 
         FIG. 4  illustrates partitioning of a webinar presentation video into slides based on time stamp data according to various embodiments of the present disclosure. 
         FIG. 5  illustrates an example user interface provided on a display of a client device in  FIG. 1  for accessing slides in a webinar presentation video according to various embodiments of the present disclosure. 
         FIG. 6  illustrates an example user interface provided on a display of a client device in  FIG. 1  for accessing multimedia content in a slide in a webinar presentation video according to various embodiments of the present disclosure. 
         FIG. 7  illustrates an example user interface provided on a display of a client device in  FIG. 1  for performing a keyword search for purposes of accessing slides in a webinar presentation video according to various embodiments of the present disclosure. 
         FIG. 8  illustrates an example user interface provided on a display of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. 
         FIG. 9  illustrates transition between a first mode of operation to a second mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. 
         FIG. 10  illustrates transition between a second mode of operation to a first mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. 
         FIG. 11  illustrates transition between a first mode of operation to a fourth mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. 
         FIG. 12  illustrates transition between a fourth mode of operation to a fifth mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. 
         FIG. 13  illustrates an example user interface provided on a display of a client device in  FIG. 1  for sorting content of a chat room session according to various embodiments. 
         FIG. 14  illustrates selectable sorting criteria in the example user interface of  FIG. 13  according to various embodiments. 
         FIG. 15  illustrates selection of sorting criteria by the user in the example user interface of  FIG. 13  according to various embodiments. 
         FIG. 16  illustrates application of the selected sorting criteria in the example user interface of  FIG. 13  according to various embodiments. 
         FIG. 17  illustrates selection of other sorting criteria by the user in the example user interface of  FIG. 13  according to various embodiments. 
         FIG. 18  illustrates application of the other selected sorting criteria in the example user interface of  FIG. 13  according to various embodiments. 
     
    
    
     DETAILED DESCRIPTION 
     Webinars are live web-based video conferences whereby attendees at remote locations hear and view presentations. Many times, presenters incorporate multimedia content (e.g., audio/video content, graphics, animation) to further enhance their presentations. Furthermore, the interactive nature of webinars allows attendees to ask questions and chat with the host. In some cases, past attendees may wish to view an archived webinar presentation by accessing a recorded video of the webinar presentation. There is a need for an improved mechanism for efficiently accessing content in recorded webinar presentations. Various embodiments are disclosed for allowing users to retrieve a recorded webinar presentation video and for allowing users to efficiently search and access the content of slides and corresponding multimedia. Specifically, the present invention allows users to efficiently navigate and search multimedia content of interest found in slides of a recorded webinar presentation video without having to view the webinar presentation video from the beginning. 
     A description of a system for accessing multimedia content in recorded webinar presentations is now described followed by a discussion of the operation of the components within the system.  FIG. 1  is a block diagram of a server computing device  102  in which the techniques for providing random access of multimedia content in recorded webinar presentations disclosed herein may be implemented. The server computing device  102  may comprise a server computer or any other system providing computing capability. Alternatively, the server computing device  102  may employ a plurality of computing devices that can be arranged, for example, in one or more server banks, computer banks or other arrangements. Such computing devices can be located in a single installation or can be distributed among different geographical locations. 
     A webinar service  104  executes on a processor of the server computing device  102  and allows presenters to host live webinar presentations. The webinar service  104  also allows attendees to participate in live webinars as well as to play back recorded videos of past webinar presentations. The server computing device  102  is coupled to a network  120  such as, for example, the Internet, intranets, extranets, wide area networks (WANs), local area networks (LANs), wired networks, wireless networks, or other suitable networks, etc., or any combination of two or more such networks. Through the network, client devices  122   a ,  122   b ,  122   c  may be communicatively coupled to the server computing device  102  for accessing both live webinar presentations as well as archived webinar presentations recorded as webinar presentation videos. 
     The webinar service  104  includes a tracker  106 , a search engine  108 , a slide generator  110 , and an UI generator  112 . The tracker  106  is configured to monitor events associated with live webinar presentations. For some embodiments, the tracker  106  receives user input from a presenter to initiate a live webinar presentation comprising a plurality of slides. In response to receiving the user input to initiate the live webinar presentation, the tracker  106  then performs various tracking operations. The operations performed by the tracker  106  may include monitoring slide transitions triggered by the presenter. Specifically, when the presenter transitions between slides, the tracker  106  logs time stamp data for each slide transition. This allows the webinar service  104  to later extract slides from the recorded webinar presentation video, as described below. 
     The tracker  106  also generates attendee participation data. For example, the tracker  106  may monitor and log the number of attendees that interact with the presenter for each slide. Such interaction may comprise attendees sending questions to the presenter via a chat feature. The interaction may also comprise attendees providing a rating for particular slides. For example, the tracker  106  may monitor and log the number of “likes” generated by attendees for a particular slide. The tracker  106  also generates metadata relating to the content in each slide. The metadata may comprise, for example, textual information contained in each slide (e.g., slide title, slide number, annotation, video), descriptive information relating to audio/video content in each slide, the number of “likes” generated for each slide, chat exchanges produced by attendees for each slide, and so on. The tracker  106  stores the live webinar presentation as a webinar presentation video into a data store  116 . The tracker  106  also stores the time stamp data, the attendee participation data, and the metadata into the data store  116 . 
     For some embodiments, the tracker  106  includes a mode monitor  107  configured to monitor activities by a user of a client device  122  (i.e., an attendee) during a live webinar presentation. Indices corresponding to different portions of the webinar being recorded are generated based on activities by the user. In this regard, indices are generated during live streaming of the live webinar presentation. For some embodiments, such indices may comprise time stamps when mode transitions occur while the webinar is streaming. These indices or time stamps are later utilized to access the archived version of the webinar. In accordance with some embodiments, a user of a client device  122  attending a live webinar presentation may utilize various settings relating to viewing of the webinar presentation. 
     The settings utilized by the user while attending a live webinar may be associated with different modes of operations. For example, a first mode of operation may include a setting that allows the user to view slides of the webinar in a “slide only” mode, a setting that displays the webinar in a picture-in-picture (PIP) mode with respect to a webcam video of the presenter, or a setting that presents the webinar in an aligned mode where multiple slides are shown and aligned in a horizontal orientation or in a vertical orientation. A second mode of operation may include a setting that allows the user to only view live video of the webinar presenter captured by a webcam. 
     A third mode of operation may include a setting that allows the user to minimize a window displaying the webinar such that the present desktop is shown. A fourth mode of operation may include a setting that allows the user to initiate a whiteboard application, whereby the user can make annotations while participating in the webinar. A fifth mode of operation may include a setting that allows the user to display a status of the user. For example, the user may wish to post a notification to the webinar presenter and to the other attendees that the user has momentarily stepped away and will shortly rejoin the webinar. The mode monitor  107  in the tracker  106  monitors for transitions between the various modes discussed above. Based on these mode transitions, various indices of the webinar are generated where each index corresponds to a portion of the webinar. 
     A past attendee of a webinar presentation may later wish to view the same webinar presentation again. Alternatively, an individual may wish to view a different webinar presentation that the individual did not attend. The attendee generates a request via one of the client devices  122   a ,  122   b ,  122   c  and transmits the request to the server computing device  102 . The search engine  108  in the server computing device  102  receives the request from a client device  122  to view an archived webinar presentation video in the data store  116 . As one of ordinary skill will appreciate, the archived webinar presentation video may be encoded in any of a number of formats including, but not limited to, Motion Picture Experts Group (MPEG)-1, MPEG-2, MPEG-4, H.264, Third Generation Partnership Project (3GPP), 3GPP-2, Standard-Definition Video (SD-Video), High-Definition Video (HD-Video), Digital Versatile Disc (DVD) multimedia, Video Compact Disc (VCD) multimedia, High-Definition Digital Versatile Disc (HD-DVD) multimedia, Digital Television Video/High-definition Digital Television (DTV/HDTV) multimedia, Audio Video Interleave (AVI), Digital Video (DV), QuickTime (QT) file, Windows Media Video (WMV), Advanced System Format (ASF), Real Media (RM), Flash Media (FLV), an MPEG Audio Layer III (MP3), an MPEG Audio Layer II (MP2), Waveform Audio Format (WAV), Windows Media Audio (WMA), or any number of other digital formats. 
     The slide generator  110  is configured to partition the webinar presentation video into slides based on time stamp data captured earlier by the tracker  106  during live presentation of the webinar presentation. In some embodiments, the slide generator  110  may partition the webinar presentation video into segments corresponding to the various slides. For example, a first video segment that spans the first 3 minutes of the webinar presentation video may correspond to the first slide in the webinar presentation, while a second video segment that spans the next 5 minutes of the webinar presentation video may correspond to the second slide in the webinar presentation. 
     Referring back to the mode monitor  107 , for some embodiments, the mode monitor  107  outputs a trigger signal in response to detecting a mode transition. In response to receiving the trigger signal, the slide generator  110  takes images and/or video of the current portion of the live webinar being streamed. That is, for some embodiments, the tracker  106  may be utilized during a live webinar to cause the slide generator  110  to capture and index portions of the webinar for later access. For some embodiments, the slide generator  110  may record a segment of the webinar based on the trigger signal as a video, where the video corresponds to a portion within the webinar. 
     The UI generator  112  is configured to cause a user interface to be displayed at the client device  122 , where the user interface displays, for each slide, thumbnail graphical representations of each slide. In some embodiments, thumbnail graphical representations for multimedia content contained in each slide. The UI generator  112  is further configured to obtain one or more keywords from the client device  122 . 
     The search engine  108  generates a grouping comprising one or more candidate slides in the webinar presentation based on the at least one keyword, the time stamp data, and the attendee participation data. The grouping of candidate slides represents slides that are most likely of interest of the viewer. Thumbnail graphical representations of these candidate slides are presented to the user to select from. The UI generator  112  obtains a selection of one or more slides in the grouping comprising at least one candidate slides and provides access to the selected slide(s). 
       FIG. 2  illustrates a schematic block diagram of the server computing device  102  in  FIG. 1 . The server computing device  102  may be embodied in any one of a wide variety of wired and/or wireless computing devices, such as a server computer or any other system providing computing capability. As discussed above, the server computing device  102  may employ a plurality of computing devices that can be arranged, for example, in one or more server banks, computer banks or other arrangements. Such computing devices can be located in a single installation or can be distributed among different geographical locations. 
     As shown in  FIG. 2 , the server computing device  102  comprises memory  214 , a processing device  202 , a number of input/output interfaces  204 , a network interface  206 , a display  208 , a peripheral interface  211 , and mass storage  226 , wherein each of these components are connected across a local data bus  210 . The processing device  202  may include any custom made or commercially available processor, a central processing unit (CPU) or an auxiliary processor among several processors associated with the server computing device  102 , a semiconductor based microprocessor (in the form of a microchip), a macroprocessor, one or more application specific integrated circuits (ASICs), a plurality of suitably configured digital logic gates, and other well known electrical configurations comprising discrete elements both individually and in various combinations to coordinate the overall operation of the computing system. 
     The memory  214  may include any one of a combination of volatile memory elements (e.g., random-access memory (RAM, such as DRAM, and SRAM, etc.)) and nonvolatile memory elements (e.g., ROM, hard drive, tape, CDROM, etc.). The memory  214  typically comprises a native operating system  216 , one or more native applications, emulation systems, or emulated applications for any of a variety of operating systems and/or emulated hardware platforms, emulated operating systems, etc. For example, the applications may include application specific software which may comprise some or all the components of the server computing device  102  depicted in  FIG. 1 . In accordance with such embodiments, the components are stored in memory  214  and executed by the processing device  202 , thereby causing the processing device  202  to perform the operations/functions disclosed herein. One of ordinary skill in the art will appreciate that the memory  214  can, and typically will, comprise other components which have been omitted for purposes of brevity. For some embodiments, the components in the server computing device  102  may be implemented by hardware and/or software. 
     Input/output interfaces  204  provide any number of interfaces for the input and output of data. For example, where the server computing device  102  comprises a personal computer, these components may interface with one or more user input/output interfaces  204 , which may comprise a keyboard or a mouse, as shown in  FIG. 2 . The display  208  may comprise a computer monitor, a plasma screen for a PC, a liquid crystal display (LCD) on a hand held device, a touchscreen, or other display device. 
     In the context of this disclosure, a non-transitory computer-readable medium stores programs for use by or in connection with an instruction execution system, apparatus, or device. More specific examples of a computer-readable medium may include by way of example and without limitation: a portable computer diskette, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM, EEPROM, or Flash memory), and a portable compact disc read-only memory (CDROM) (optical). 
     Reference is made to  FIG. 3 , which is a flowchart  300  in accordance with various embodiments for providing random access of multimedia content in recorded webinar presentations performed by the server computing device  102  of  FIG. 1 . It is understood that the flowchart  300  of  FIG. 3  provides merely an example of the different types of functional arrangements that may be employed to implement the operation of the various components of the server computing device  102 . As an alternative, the flowchart  300  of  FIG. 3  may be viewed as depicting an example of steps of a method implemented in the server computing device  102  according to one or more embodiments. 
     Although the flowchart  300  of  FIG. 3  shows a specific order of execution, it is understood that the order of execution may differ from that which is depicted. For example, the order of execution of two or more blocks may be scrambled relative to the order shown. Also, two or more blocks shown in succession in  FIG. 3  may be executed concurrently or with partial concurrence. It is understood that all such variations are within the scope of the present disclosure. 
     At block  310 , the server computing device  102  receives user input from a presenter to initiate a live webinar presentation comprising a plurality of slides. For some embodiments, the user input comprises a voice command directing the server computing device  102  to locate a slide in the live webinar presentation. In block  320 , the server computing device  102  monitors slide transitions triggered by the presenter and logging time stamp data for each slide transition. 
     In block  330 , the server computing device  102  generates attendee participation data. For some embodiments, generating the attendee participation data may comprise tracking a number of attendees viewing each slide in the webinar presentation, tracking chat content generated by attendees for each slide in the webinar presentation, and/or tracking a list of attendees. For some embodiments, tracking the chat content generated by the attendees for each slide in the webinar presentation may comprise identifying words with a threshold occurrence rate in the chat content and storing the identified words. 
     In block  340 , the server computing device  102  stores the live webinar presentation as a webinar presentation video, the time stamp data, and the attendee participation data. For some embodiments, a slide title, slide numbering, annotation, and/or animation is also stored with the webinar presentation video. In block  350 , the server computing device  102 , obtains a request from a client device  122  ( FIG. 1 ) to view the stored webinar presentation video. In block  360 , the server computing device  102  partitions the webinar presentation video into slides based on the time stamp data. 
     In block  370 , the server computing device  102  causes a user interface to be displayed at the client device  122 , where the user interface displays, for each slide, thumbnail graphical representations of each slide for playback of the stored webinar presentation based on a thumbnail graphical representation selected by the user. For some embodiments, playback of the stored webinar presentation is further based on attendee participation data selected by the user. For some embodiments, the server computing device  102  may be further configured to obtain at least one keyword from the client device. The server computing device  102  generates and displays a grouping comprising at least one candidate slide in the webinar presentation based on the at least one keyword, the time stamp data, and the attendee participation data. 
     The server computing device  102  may be further configured to obtain a selection of a slide in the grouping comprising at least one candidate slide and perform playback of a portion of the webinar presentation video corresponding to the selected slide. The grouping comprising at least one candidate slide in the webinar presentation may be generated based on the attendee participation data by including slides with a highest occurrence of words in the grouping comprising the at least one candidate slide. The grouping comprising at least one candidate slide in the webinar presentation may be generated based on the time stamp by analyzing the time stamp data for each slide and including slides viewed for at least a threshold time interval in the grouping comprising the at least one candidate slide. For example, slides viewed for at least 20 seconds may be included in the grouping. 
     For some embodiments, the server computing device  102  is further configured to obtain user input indicating viewer approval of slides and track slides corresponding to the user input as viewer approved slides. For such embodiments, the grouping comprising at least one candidate slide in the webinar presentation is generated based on viewer approved slides having a threshold level of viewer approval. 
     For some embodiments, the server computing device  102  may be further configured to obtain a voice command from the client device and perform speech-to-text conversion on the voice command to obtain at least one keyword. For such embodiments, the server computing device  102  is further configured to generate a grouping comprising at least one candidate slide in the webinar presentation based on the at least one keyword, the time stamp data, and the attendee participation data. The server computing device  102  is further configured to obtain a selection of a slide in the grouping comprising at least one candidate slide and perform playback of a portion of the webinar presentation video corresponding to the selected slide. Thereafter, the process in  FIG. 3  ends. 
     Having described the basic framework of a system for providing random access of multimedia content in recorded webinar presentations, reference is made to the following figures, which illustrate various features according to various embodiments.  FIG. 4  illustrates partitioning of a webinar presentation video into slides based on the time stamp data according to various embodiments of the present disclosure. For some embodiments, the search engine  108  in the server computing device  102  ( FIG. 1 ) obtains a request from a user at a client device  122  ( FIG. 1 ) to access an archived webinar presentation video  118 . In response, the slide generator  110  in the server computing device  102  retrieves the requested webinar presentation video  118  from the data store  116 . Based on the time stamp data logged by the tracker  106  during live presentation of the requested webinar presentation video  118 , the slide generator  110  partitions the webinar presentation video  118  into the slides that make up the webinar presentation. 
       FIG. 5  illustrates an example user interface  500  provided on a display of a client device  122  in  FIG. 1  for accessing slides in a webinar presentation video according to various embodiments of the present disclosure. Once the slide generator  110  partitions the webinar presentation video  118  into the slides, the UI generator  112  in the server computing device  102  causes a user interface  500  to be displayed at the client device  122 . For some embodiments, the user interface displays, for each slide, thumbnail graphical representations of each slide and multimedia content contained in each slide. Furthermore, to facilitate access to each slide, the UI generator  112  may be further configured to superimpose text  502  on each slide thumbnail graphical representation to indicate the slide number. In the example user interface  500  shown, the UI generator  112  superimposes the text “Slide #” on each thumbnail graphical representation. 
       FIG. 6  illustrates an example user interface  600  provided on a display of a client device  122  in  FIG. 1  for accessing multimedia content in a slide in a webinar presentation video according to various embodiments of the present disclosure. For some embodiments, the user interface  600  includes thumbnail graphical representations for multimedia content contained in each slide. In the example shown, slide #3 includes both an audio file and a video file presented during live presentation of the webinar. The user at the client device  122  can utilize the user interface  600  to select one of the thumbnail graphical representations for playback. The webinar service  104  then performs playback of the selected multimedia content based on the time stamp data logged earlier by the tracker  106  during live presentation of the webinar. 
       FIG. 7  illustrates an example user interface provided on a display of a client device  122  in  FIG. 1  for performing a keyword search for purposes of accessing slides in a webinar presentation video according to various embodiments of the present disclosure. For some embodiments, the user can conduct a key word search of the slides in the webinar presentation video  118 . The search engine  108  obtains a word or phrase and conducts a search based on metadata generated by the tracker  106  during live presentation of the webinar presentation. For some embodiments, the search engine  108  may be configured to perform a search and generate a grouping of candidate slides, as described earlier. In general, the grouping of candidate slides likely represents slides that contain more significant content that may be of interest to the viewer. In the example shown, various slides with the phrase “financial results” are found by the search engine  108  and presented on the user interface  700 . 
       FIG. 8  illustrates an example user interface  800  provided on a display of a client device  122  in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. As discussed above, a user of a client device  122  ( FIG. 1 ) attending a live webinar presentation may utilize various settings relating to viewing of the webinar presentation. Such settings may be associated with different modes of operations. As shown in  FIG. 8 , a first mode of operation may include a setting that allows the user to view slides of the webinar in a “slide only” mode, a setting that displays the webinar in a picture-in-picture (PIP) mode with respect to a webcam video of the presenter, or a setting that presents the webinar in an aligned mode where multiple slides are shown and aligned in a horizontal orientation or in a vertical orientation. 
     As further shown in the example user interface  800  of  FIG. 8 , a second mode of operation may include a setting that allows the user to only view live video of the webinar presenter captured by a webcam. A third mode of operation may include a setting that allows the user to minimize a window displaying the webinar such that the present desktop is shown. A fourth mode of operation may include a setting that allows the user to initiate a whiteboard application, whereby annotations are made by the presenter during the webinar. A fifth mode of operation may include a setting that allows the user to display a status of the user. For example, the user may wish to post a notification to the webinar presenter and to the other attendees that the user has momentarily stepped away and will shortly rejoin the webinar. As discussed above, the mode monitor  107  in the tracker  106  monitors for transitions between the various modes discussed above. Based on these mode transitions, various indices of the webinar are generated where each index corresponds to a portion of the webinar. 
       FIG. 9  illustrates transition between a first mode of operation to a second mode of operation by a user of a client device  122  in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. When the user transitions between the first mode of operation (i.e., slide only setting) to the second mode of operation (i.e., webcam only setting), the mode monitor  107  generates a trigger signal that causes the slide generator  110  to generate an index for that particular instance in the live webinar. The slide generator  110  also captures video of that particular instance in the live webinar for later access. 
       FIG. 10  illustrates transition between a second mode of operation to a first mode of operation by a user of a client device  122  in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. When the user transitions between the second mode of operation (i.e., webcam only setting) to the first mode of operation (i.e., PiP setting), the mode monitor  107  generates a trigger signal that causes the slide generator  110  to generate an index for that particular instance in the live webinar. The slide generator  110  also captures video of that particular instance in the live webinar for later access. 
       FIG. 11  illustrates transition between a first mode of operation to a fourth mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. When the user transitions between the first mode of operation (i.e., slide only setting) to the fourth mode of operation (i.e., whiteboard setting), the mode monitor  107  generates a trigger signal that causes the slide generator  110  to generate an index for that particular instance in the live webinar. The slide generator  110  also captures video of that particular instance in the live webinar for later access. 
       FIG. 12  illustrates transition between a fourth mode of operation to a fifth mode of operation by a user of a client device in  FIG. 1  during live presentation of a webinar according to various embodiments of the present disclosure. When the user transitions between the fourth mode of operation (i.e., whiteboard setting) to the fifth mode of operation (i.e., away notifier setting), the mode monitor  107  generates a trigger signal that causes the slide generator  110  to generate an index for that particular instance in the live webinar. The slide generator  110  also captures video of that particular instance in the live webinar for later access. For some embodiments, the host can select one or more slides to remain hidden before the host begins presenting the live webinar such that the hidden slides are not part of the live webinar. In this regard, when the user performs playback of the archived webinar, none of the hidden slides are part of the archived webinar. Note that although certain slides may be selected to be hidden prior to the live webinar, the host can later elect to cause the previously-hidden slides to be part of the live webinar. 
     Reference is now made to  FIGS. 13-18 , which illustrate the content of a chat room session ordered according to sorting criteria selected by the user according to various embodiments.  FIG. 13  illustrates an example user interface  1300  provided on a display of a client device  122  in  FIG. 1  for sorting content of a chat room session according to various embodiments. The user interface  1300  includes a slide section  1312 , a presentation section  1310 , and a chat session section  1314 . The user interface  1300  includes a user interface control  1302  for displaying or hiding a current chat session. The user interface  1300  also includes a user interface control  1304  for specifying sorting criteria for rearranging content of the chat session. By default, the content of the chat session is sorted according to time starting with the entry with the earliest time stamp at the top. 
       FIG. 14  illustrates selectable sorting criteria in the example user interface  1300  of  FIG. 13  according to various embodiments, where selection is made via the user interface control  1304 .  FIG. 15  illustrates selection of sorting criteria by the user in the example user interface  1300  of  FIG. 13  according to various embodiments. In the example shown, the user elects to sort the content of the chat session according to the number of likes associated with each entry. 
       FIG. 16  illustrates application of the selected sorting criteria in the example user interface of  FIG. 13  according to various embodiments. As shown, the entries of the chat session are rearranged and sorted starting with the entry with the most number of likes at the top.  FIG. 17  illustrates selection of other sorting criteria by the user in the example user interface  1300  of  FIG. 13  according to various embodiments. In the example shown, the user elects to sort the content of the chat session according to both the number of likes and according to the most recent entries.  FIG. 18  illustrates application of the new selected sorting criteria in the example user interface  1300  of  FIG. 13  according to various embodiments. As shown, the chat session section  1314  is partitioned into two sections. The first section sorts entries of the chat session according to number of likes starting with the entry with the most number of likes at the top. The second section sorts entries of the chat session starting with the entry with the earliest time stamp at the top. 
     It should be emphasized that the above-described embodiments of the present disclosure are merely possible examples of implementations set forth for a clear understanding of the principles of the disclosure. Many variations and modifications may be made to the above-described embodiment(s) without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.