Abstract:
A method and implementing network computer system is provided in which completion point file positions of multimedia file presentations may be saved in persistent memory devices when a user desires to terminate a multimedia file being presented on a display device. In subsequent network and multimedia file accesses, a user is selectively able to begin play at the previously saved completion point in the multimedia file presentation, i.e. the file position at which the user had previously terminated play. The saved position in one example may include a refresh rewind of a predetermined length from the saved position to refresh a user with the content of the multimedia file being continued. In an exemplary embodiment, a user is also presented with a selection device by which the user may create a title for one or more saved files and corresponding completion points within each saved file. A default file designation may be automatically entered by the program. A plurality of partially presented multimedia files may be saved and listed for subsequent continuation from the point of previous termination.

Description:
FIELD OF THE INVENTION 
     The present invention relates generally to information processing systems and more particularly to a methodology and implementation for network multimedia file processing. 
     BACKGROUND OF THE INVENTION 
     In network computer systems, a plurality of computers are connected together and one or more of the computers generally performs the function of a network server. A network may be established through the hard-wired interconnection of a plurality of computer terminals in a local network or on a wider scale such as the Internet or world wide web which may include telecommunication links. In any case, the network server acts as the central control unit for providing access to files, programs and program execution to the individual computers connected within the network. In general, a networked computer terminal will &#34;logon&#34; to the network and obtain access to a network server. The network server will download a homepage presentation on the user&#39;s terminal which may include and audio and video effects. From the initial screen display, a user may designate any other &#34;address&#34; to get to another &#34;location&#34; or screen display. The user may also select from a plurality of functions which may be presented for user selection on the initial display. 
     Generally, almost all screen displays include designated selection areas on the screen where the user may point a selection device such as a mouse-controlled pointer, and &#34;click&#34; on the designated screen area to invoke a displayed function, or menu for other function selection options. When the homepage or selection screen is downloaded from the server, many small programs or &#34;applets&#34; are also downloaded at the same time to the user&#39;s terminal memory. Those applets are associated with different ones of the designated screen selection areas and are executed when a user makes a selection or clicks on one of the selection areas on the display. The applets, in turn, may call for the presentation of a new user interface screen, or a new or different section of a portion of the screen, such as a pop-up menu or other graphical user interface (GUI) which may be within a framed or windowed sub-section of the main homepage. 
     The GUI presentation is typically designed and customized to present an attractive display and facilitate use of the computer interface by a user in making subsequent selections or executing selected functional aspects associated with the GUI presentation. The GUI display is typically displayed as the end result of the execution of a program downloaded from the server in response to the user selection of a designated screen area. The design and display of the GUI screen is typically determined in advance and &#34;hard-coded&#34; by a programmer. 
     In modern networks, the availability and use of multimedia files is increasing. Multimedia files include, inter alia, audio files and video files. Typically, a user may select or &#34;click-on&#34; a graphic or hypertext area on a selection screen to have the selected audio or video file presented at the user terminal by a player device. The present example will demonstrate the disclosed methodology relative to a video file although it is understood that corresponding methodology also applies to audio and other multimedia file presentations. Multimedia files are of varying length and may require from seconds to hours or longer to play through to the end of the file. When a user initiates the playing of a video file for example, and then at a later point in time, while the video is still playing, wishes to pause the presentation, the user may select and invoke a &#34;pause&#34; function. Later, when the video is to resume, the user may select and invoke a resume function. However, if the user needed to logoff the network before the video had completed playing, or if the system needed to be shut-down for any reason, the video file would have to be re-played from the beginning of the file after the next log-on by the user. In view of the availability of longer video files from servers in networks, that process is often inefficient and cumbersome. 
     Thus, there is a need for an improved multimedia file presentation methodology which is effective to facilitate and accommodate frequent multimedia file accesses directly to previous points of departure from multimedia file presentations without requiring a serial playback from the beginning of the particular multimedia file. There is a further need to provide a means by which a specific file position may be subsequently accessed directly, even after a network disconnect or a user terminal shut-down. 
     SUMMARY OF THE INVENTION 
     A method and implementing computer system is provided in which completion point file positions of multimedia file presentations may be saved in persistent memory devices when a user desires to terminate a multimedia file being presented on a display device. In subsequent network and multimedia file accesses, a user is selectively able to begin play at the previously saved completion point in the multimedia file presentation, i.e. the file position at which the user had previously terminated play. The saved position in one example may include a refresh rewind of a predetermined length from the saved position to refresh a user with the content of the multimedia file being continued. In an exemplary embodiment, a user is also presented with a selection device by which the user may create a title for one or more saved files and corresponding completion points within each saved file. A plurality of partially presented multimedia files may be saved and listed for subsequent continuation from the point of previous termination. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     A better understanding of the present invention can be obtained when the following detailed description of a preferred embodiment is considered in conjunction with the following drawings, in which: 
     FIG. 1 is a diagram of a computer system in which the present invention may be implemented; 
     FIG. 2 is a simplified schematic diagram showing selected components and subsystems of the computer system illustrated in FIG. 1; 
     FIG. 3 is an illustration of an exemplary display screen of a typical network or web page for reference in explaining the present invention; and 
     FIG. 4 is a flow chart illustrating an exemplary embodiment of one methodology effective to implement the disclosed processing system. 
    
    
     DETAILED DESCRIPTION 
     With reference to FIG. 1, the various methods discussed herein may be implemented within a computer network including a computer terminal 101, which may comprise either a workstation or a PC (personal computer) for example. In general, an implementing computer system may include computers configured with a plurality of processors in a multi-bus system in a network of similar systems. However, since the workstation or computer terminal 101 implementing the present invention in the example, is generally known in the art and composed of electronic components and circuits which are also generally known to those skilled in the art, circuit details beyond those shown in FIG. 1, are not specified to any greater extent than that considered necessary as illustrated, for the understanding and appreciation of the underlying concepts of the present invention and in order not to obfuscate or distract from the teachings of the present invention. 
     In FIG. 1, the computer system includes a processor unit 103 which is typically arranged for housing a processor circuit along with other component devices and subsystems of the computer terminal 101. The computer terminal 101 also includes a monitor unit 105, a keyboard 107 and a mouse or pointing device 109, which are all interconnected with the computer terminal illustrated. Also shown is a connector 111 which is arranged for connecting a modem within the computer terminal to a communication line such as a telephone line in the present example. The present invention may also be implemented in a cellular system. 
     Several of the major components of the terminal 101 are illustrated in FIG. 2. A processor circuit 201 is connected to a system bus 203 which may be any host system bus. It is noted that the processing methodology disclosed herein will apply to many different bus and/or network configurations. A cache memory device 205, and a system memory unit are also connected to the bus 203. A modem 209 is arranged for connection 210 to a communication line, such as a telephone line, through a connector 111 (FIG. 1). The modem 209, in the present example, selectively enables the computer terminal 101 to establish a communication link and initiate communication with network server, such as the Internet. 
     The system bus 203 is also connected through an input interface circuit 211 to a keyboard 213 and a mouse or pointing device 215. The bus 203 may also be coupled through a hard-wired network interface subsystem 217. A diskette drive unit 219 is also shown as being coupled to the bus 203. A video subsystem 220, which may include a graphics subsystem, is connected to a display device 221. A storage device 218, which may comprise a hard drive unit, is also coupled to the bus 203. The diskette drive unit provides a means by which individual diskette programs may be loaded on to the hard drive, or accessed directly, for selective execution by the computer terminal 101. As is well known, program diskettes containing application programs represented by magnetic indicia on the diskette, may be read from the diskette drive, and the computer system is selectively operable to read such magnetic indicia and create program signals. Such program signals are selectively effective to cause the computer system to present displays on the screen of a display device and respond to user inputs in accordance with the functional flow of the application program on the diskette. 
     In running an Internet access program or browser program on the computer terminal 101, the access program is typically stored in the storage device 218 and either selectively or automatically, partially or totally, loaded into the system memory 207 when the system is initially powered-on, or at a later time if so desired by a user. The browser is selectively operable to access and execute a site selection program, as herein described, either directly from a diskette in the diskette drive unit 219 or directly from a copy of the site selection program stored on the hard drive unit 218. As a program is running, either a portion of the program or the entire program may be loaded into the system memory 207 and/or the system cache memory 205. Depending on specific program design, the system may store any information accessed from a database in the storage unit 218, the cache memory 205, the system memory 207 or directly from a diskette loaded into the diskette drive 219. Assuming a user has started-up the system, and is actively running a browser program for example, from memory, a series of screens will be displayed to the user on the display device 221. Each screen typically has one or more selections for the user to make in navigating through the program. In general, a user will make selections from a home page display screen using the keyboard 213 or the mouse or pointer device 215. In an Internet operating program, the selections made by the user will determine &#34;where&#34; the user &#34;goes&#34;, i.e. to what &#34;site&#34; or &#34;webpage&#34;, and also, in some cases, the communications link or the path taken to get to the site selected. 
     FIG. 3 illustrates a typical program screen display 301 in an Internet operating session. The browser screen generally includes a &#34;mode&#34; row 303 which displays several different operational modes or menus which the user may select such as the &#34;File&#34; selection 308 and the &#34;Bookmarks&#34; selection 304. Another row 305 may be displayed to help a user quickly move through documents, sites, or pages in a network application. An address or &#34;location&#34; section 307 enables a user to key-in, and also displays the name of, an internet address of a site to be, or being, visited. The location or URL (Uniform Resource Locator) designation may be keyed into the location field 307 or clicked on by means of an icon from a previous page. Other quick access buttons may be implemented on the screen for quick access to other selected network services and/or network functions such as &#34;What&#39;s New&#34; or &#34;Net Search&#34;. In general, any of the illustrated items may be selected through a &#34;point and click&#34; methodology associated with the mouse device 215, and a cursor or pointer 315 visible on the display screen. For example, a download of data from a remote site may be immediately terminated during the transmission by pointing to the &#34;Stop&#34; button and clicking on a designated mouse button. Similarly, the &#34;Back&#34; and &#34;Forward&#34; buttons may be used to return to the last screen display or go forward to the next screen display, respectively. 
     In the FIG. 3, there is also shown a video play area 311 on the display screen. The video play area 311 represents a screen area in which video files may be played or presented. The screen area could be smaller or larger than the area illustrated. There is also illustrated a text area 313 which may be included to present text associated with the video or other text not necessarily associated with a video file being presented. There may also be an audio file being presented over an audio system (not shown) and related to the video presentation. As illustrated, a multimedia function button 310 is also included in the exemplary display screen. When the multimedia button 310 is pointed to by a cursor 315 for example, and selected by a user, the multimedia menu 317 is presented. The multimedia menu 317 in the present example, includes a &#34;Multimedia Options&#34; section and a &#34;Multimedia Files&#34; section. By pointing and clicking with an associated mouse device 109, a user is able to chose a &#34;Stop &amp; Save Position&#34; hypertext selection or a &#34;Stop Without Saving&#34; hypertext selection from the menu in the present example. 
     If a user clicks on the &#34;Stop Without Saving&#34; selection, any video or multimedia file being played will be stopped and the program will not save the position at which the file was stopped. However, if a user click on the &#34;Stop &amp; Save Position&#34; button, the file being played will be stopped and the position at which the file was stopped will be saved to persistent memory such the user&#39;s disk drive or in a data file associated with the user&#39;s browser program and stored on the user&#39;s hard drive. The position at which the multimedia presentation was terminated may also be transferred to the server or other persistent memory location for storage in persistent memory associated with the multimedia file or with other user data. A user may also selectively designate a custom name for the saved file by inputting in the &#34;Title To Save&#34; input area on the display screen. In any case, the position in the multimedia file at which the presentation was stopped represents the position at which a subsequent request to play the particular multimedia file will be initiated. The subsequent start position may also include a rewind of a predetermined or selectable length from the previously terminated position in order to refresh the user with the latter portion of the previously viewed video or other multimedia file. The saved &#34;Title&#34;, along with other and previously saved files and file segments, may be listed in the &#34;Multimedia Files&#34; section of the screen display as in a typical &#34;bookmark&#34; function. A user may select one of the multimedia files from the &#34;Multimedia Files&#34; screen area to initiate the playing of the selected multimedia file from the previously saved position at which the file was last terminated. 
     In FIG. 4, an exemplary flow for the disclosed methodology is illustrated. In the multimedia function 401, when the multimedia menu 317 is displayed 403, a user is presented with a choice of selections as hereinbefore noted. A user may select a file 405 from those listed in the multimedia files section of the display, in which case the program would go 407 to a play routine to play the selected multimedia file. A user may also select to &#34;Stop Without Saving&#34; 409 in which case a multimedia file being played will be terminated 411 and the position within the file at which the play was terminated will not be saved. If a user clicks on the &#34;Stop And Save Position&#34; selection 413, the program will stop 415 the multimedia file being played and prompt a user to enter a title 419 for the saved file and file position at which the file play was terminated. If no title input is made 419, the program may enter a default designation 423 which may be made in accordance with a predetermined routine and include such information as an identifier for the particular multimedia file being terminated and a date for example. 
     Next, the position of the multimedia file at which the presentation was terminated is determined 421 and that position is saved in persistent memory or storage 425. The position may be determined in terms of byte position or time position or other criterion, but in any case, the position indicia stored will be sufficient to efficiently return to the position within the multimedia file at which the play was terminated. Since the position is saved in persistent memory of some type, the saved position will be available for later access even if the network connection is terminated or the user system is shut down. After the position is saved 425, the user may select a different function 427 at which time the program will go to the selected function 429. Until a different function is selected, the multimedia menu will continue to be displayed 403. The steps illustrated in the example are for illustration only and the scope and the sequence of the steps may vary and still provide the benefit of the various functions and combination of functions described herein. 
     The method and apparatus of the present invention has been described in connection with a preferred embodiment as disclosed herein. The disclosed methodology may be implemented in a wide range of sequences, menus and screen designs to accomplish the desired results as herein illustrated. Although an embodiment of the present invention has been shown and described in detail herein, along with certain variants thereof, many other varied embodiments that incorporate the teachings of the invention may be easily constructed by those skilled in the art, and even included or integrated into a processor or CPU or other larger system integrated circuit or chip. The disclosed methodology may also be implemented solely in program code stored on a disk or diskette (portable or fixed), or other memory device, from which it may be executed to achieve the beneficial results as described herein. Accordingly, the present invention is not intended to be limited to the specific form set forth herein, but on the contrary, it is intended to cover such alternatives, modifications, and equivalents, as can be reasonably included within the spirit and scope of the invention.