sequential-playback objects (SPOs) such as audio messages, voicemail messages, video segments and the like are controlled in a centralized fashion in a computer-based system. The user is able to select SPOs, preferably using a pointer device such as a mouse. A single tool bar is displayed and used for controlling each of the selected SPOs so that there is no need to display two tool bars on the screen for controlling two different SPOs. Information relating to the status and characteristics of the SPOs are passed to the tool bar software so that the tool bar automatically provides the appropriate command execution for the particular SPO. Thus, the same tool bar will playback a video message or an audio message. By providing a single tool bar, screen clutter is reduced and, command execution is performed rapidly and computer resources are conserved.
|
1. A method for using a computer for centralized control of a plurality of sequential-playback objects, the computer including a memory having a plurality of memory storage locations, a display device and a user-controllable selection device, comprising:
displaying, on said display device, a plurality of object identifiers which identify stored digital objects, including at least first and second object identifiers which identify first and second sequential-playback objects; selecting said first object identifier, using said user-controllable selection device; displaying a plurality of control identifiers, including at least a playback control identifier; selecting said playback control identifier; initiating sequential playback of said first sequential-playback object in response to said selecting of said playback control identifier; deselecting said first object identifier and automatically storing, at a first memory storage location in said memory, an indication of a position based on a current position within said first sequential playback object; selecting said playback control identifier; initiating sequential playback of said second sequential-playback object in response to said selecting of said playback control identifier; and terminating said sequential playback of said second sequential-playback object and automatically storing, at a second memory storage location in said memory, an indication of a position based on a current position within said second sequential-playback object.
23. Apparatus for using a computer for centralized control of a plurality of sequential-playback objects, the computer including a memory having a plurality of memory locations, a display device and a user-controllable selection device, comprising:
means for displaying, on said display device, a plurality of object identifiers which identify stored digital objects, including at least first and second object identifiers which identify first and second sequential-playback objects; means for selecting said first object identifier, using said user-controllable selection device; means for displaying a plurality of control identifiers, including at least a playback control identifier; means for selecting said playback control identifier; means for initiating sequential playback of said first sequential-playback object in response to said selecting of said playback control identifier; means for automatically storing, at a first memory storage location in said memory an indication of a position based on a current position within said first sequential-playback object in response to deselection of said first object identifier; means for selecting said playback control identifier; means for initiating sequential playback of said second sequential-playback object in response to said selecting of said playback control identifier; and means for automatically storing, at a second memory location in said memory, an indication of a position based on a current position within said second sequential-playback object in response to termination of said sequential playback of said second sequential-playback object.
21. A method for using a computer for centralized control of a plurality of stored voice-mail messages, the computer including a memory having a plurality of memory storage locations, a video display and a pointer device for selecting indicators which are displayed on the display, the method comprising:
displaying, on said video display, a list of identifiers of stored voice-mail messages; selecting a first voice-mail message using said pointer device; displaying, on said video display, a first toolbar image, having a plurality of tool indicators, including a playback indicator, a stop indicator, a record indicator, a rewind indicator and a fast-forward indicator; selecting one of said tool indicators of said toolbar image, using said pointer device, to perform a playback, stop, record, rewind or fast-forward on said first voice-mail message; deselecting said first voice-mail message and automatically storing, at a first memory location in said memory, an indication of a position, based on a current position within said first voice-mail message; selecting a second voice-mail message using said pointer device, without displaying, in response, a second toolbar image; selecting one of said tool indicators of said first toolbar image, using said pointer device, to perform an operation selected from the group consisting of a playback, record, rewind and fast-forward on said second voice-mail message; and terminating said operation on said second voice-mail message and automatically storing, at a second memory location in said memory, an indication of a position, based on a current position, within said second voice-mail message.
22. Apparatus for centralized control of a plurality of sequential-playback objects, comprising:
a computer, having a memory with a plurality of memory storage locations, a video display device and a pointing device; said computer controlling said video display to display a plurality of object identifiers which identify stored digital objects, including at least first and second object identifiers which identify first and second sequential-playback objects; said computer controlling said video display to highlight said first object identifier, following selecting said first object identifier, using said user-controllable selection device; said computer controlling said video display to display a plurality of control identifiers, including at least a playback control identifier; a playback device, coupled to said computer for performing sequential playback of said first sequential-playback object in response to selecting of said playback control identifier, using said pointer device; said computer automatically storing, at a first memory location in said memory, an indication of a position, based on a current position within said first sequential-playback object in response to deselection of said first object identifier; said computer controlling said video display to highlight said second object identifier in response to selecting said second object identifier using said pointing device; said playback device performing sequential playback of said second sequential-playback object in response to selecting of said playback control identifier, using said pointing device; and said computer automatically storing, at a second memory location in said memory, an indication of a position, based on a current position within said second sequential-playback object, in response to termination of said sequential playback of said second sequential-playback object.
2. A method, as claimed in
3. A method, as claimed in
4. A method, as claimed in
5. A method, as claimed in
6. A method, as claimed in
7. A method, as claimed in
8. A method, as claimed in
9. A method, as claimed in
10. A method, as claimed in
11. A method, as claimed in
12. A method, as claimed in
13. A method, as claimed in
14. A method, as claimed in
15. A method, as claimed in
16. A method, as claimed in
17. A method, as claimed in
18. A method, as claimed in
19. A method, as claimed in
20. A method, as claimed in
|
The present invention is directed to a computer-based method and apparatus for centralized control of sequential-playback objects and in particular to methods and apparatus permitting a computer to control the playback, recording, rewinding and other positioning of sequential playback objects such as voicemail messages and video sequences.
As computers, and particularly personal, desktop, laptop or handheld computers, are used in connection with various types of communication and/or data storage, it has become increasingly important to provide for control of the communication and stored information in a manner which is efficient, easy to learn and easy to use. Among the various information objects which can be manipulated or controlled using a computer, are sequential-playback objects (SPO), i.e., objects which, in normal use, are reproduced, played or displayed in a predetermined preferred time sequence, having a beginning, a middle and an end. Examples include audio objects such as recorded or stored voicemail messages, document audio annotation, and soundtracks of audio-visual objects such as audio-visual presentations (similar to "slide shows" or "videos"). Examples also include sequential playback video objects such as recorded or stored television or motion picture programs, and video portions of audio-visual objects such as presentations. Because of the nature of these objects which have beginning, middle and ending portions, these objects can be controlled using control commands such as "play" (to initiate reproduction or playback of the recorded or stored object, in sequence, either from the beginning of the sequence or from some point in the middle), a stop command (to cease or suspend playback), a record command (to initiate recording or storing of new sequential-playback information) and positioning commands such as rewind, fast-forward, return-to-beginning, or move-to-end. When a computer is used to execute such controls, it is convenient to perform such control in conjunction with a video display. This is often performed in conjunction with a so-called "pointing" device. One common pointing device is a mouse which, when moved by the user, causes a corresponding movement of a cursor on the display to permit selection of a displayed indicator. Selection can occur by, for example, moving the cursor over the indicator and depressing a button. Other types of pointing devices include stylus-type pointers (e.g., those found in pen-based computers) and touch-sensitive screens to permit pointing using, for example, the user's finger. Items can also be selected using the keyboard to, for example, select items from a menu of displayed items. Other means of selecting include voice-command recognition, eye-tracking, virtual-reality gloves and the like. Any of these selection means can be used to select one or more of the controls described above.
Commonly, a computer system configured for use in connection with sequential playback objects has the capability of controlling more than one sequential playback object. For example, a computer which is configured for controlling voicemail objects can typically control any of a plurality of recorded or stored voicemail messages. Previous methods for controlling multiple sequential-playback objects suffer from certain deficiencies. As shown in FIG. 1, some previous devices permitted a user to control a particular sequential object by first displaying, on the screen, certain control indicators. In one common system, the indicators are displayed in a rectangular region or window 12 of the screen 14. In the depiction of FIG. 1, the window 12 includes a display of the name 16 of the sequential object to be controlled by the control devices in the window 12, a display 18 of the current-playback-starting location within the file and a plurality of control indicators such as a playback control indicator 22a, a stop control indicator 22b, a record control indicator 22c, a fast-forward control indicator 22d and a rewind control indicator 22e.
In the depiction of FIG. 1, when the user wishes to control a second object, the user has two choices. The user could reconfigure the window 12 so that it is configured for controlling a different object (e.g., by selecting "file" 24, and entering a new file name). However, this procedure can be inconvenient if the user does not wish to give-up the option of easily returning to control of the first playback object. Thus, according to another option, a user can open a second window 12'. When the second window 12' is opened, it will contain a display similar to the display of window 12, although the display of the name 16' of the object to be controlled will be different. In particular, the second window 12' has its own set of controls 22a' through 22e'. Typically, only one of the windows 12, or 12', will be "active" (i.e., able to perform one of the control functions) at any given time. Often there will be a visual indication of which window is active, such as by a highlighting 26.
As can be seen from FIG. 1, each window 12, 12' contains its own set of command or tool indicators (sometimes referred to as a "tool bar"). This leads to a number of undesirable results. It contributes to screen clutter since the windows are larger than they otherwise would be. It is also believed that providing a separate tool bar in each window contributes to undesirable delay and use of computer resources, i.e., results in a configuration in which execution of commands is not as rapid as desired and which uses more computer memory, buffers, interrupt locations and the like than desired.
Accordingly, it would be useful to provide a method and apparatus for controlling multiple sequential-playback objects which provides for ease of use, reduction of screen clutter, rapidity of command execution and conservation of computer resources.
The present invention includes a recognition of the deficiencies and problems with previous approaches, including those noted above. According to the present invention, these problems are addressed by providing a single tool bar which can be used to control playback of any of a plurality of sequential-playback objects. Unlike the approach depicted in FIG. 1, the present invention does not provide a plurality of tool bars 23, 23', one for each object which is to be controlled. Instead, the user selects one of a plurality of sequential-playback objects and uses a tool bar to control that object (such as by initiating playback). When the user wishes to control another sequential-playback object, the user selects that object (e.g., from a list). However, such selection does not cause the display of a second tool bar. Instead, the user can use the same tool bar which was used for controlling the first object, in order to control the second object.
In order to use the single tool bar to control multiple sequential-playback objects, the present invention includes tracking information related to the various objects and coupling that information to the tool bar in such a manner that, when a tool from the tool bar is selected, the corresponding function or command will be applied to the correct sequential-playback object (SPO) and, moreover, will be executed in the proper fashion, e.g., beginning at the proper playback time. For example, if the user, after listening to the first ten seconds of a voicemail message, selects a second voicemail message, the present invention will store information relating to the 10-second elapsed-time on the first message. In one embodiment, the present invention also stores the command status (e.g., playback, record) that was in effect at the time the first message was de-selected. In this manner, if the user later returns to the first message, the user can automatically begin playing back where he left off, i.e., beginning at the 10-second elapsed-time location. It is for reasons such as this that using a single tool bar to control multiple SPOs require the solution of problems which would not be encountered if one attempted to, for example, use a single tool bar to control a object which is not a sequential-playback object, or to use multiple tool bars.
Preferably, the method and apparatus are configured so that there is coordination between control of different SPOs. For example, in one embodiment, if the user selects a second SPO during the time when playback of a first SPO is occurring, such selection will automatically suspend the playback of the first SPO.
Preferably, the same tool bar can be used for controlling different types of SPOs, i.e., for controlling SPO's which have different characteristics. For example, in one embodiment, the same tool bar can be used for playing back a voicemail message, for playing back the user's voicemail "personal greeting", for playing back audio e-mail messages, for playing back video messages ("v-mail"), for playing back audio-visual presentations, and the like. In one embodiment, the object (i.e., the recorded or stored digital information making up the sequential playback object) includes information regarding its characteristics (e.g., whether it is audio or video, storage format, normal or preferred playback speed and the like).
FIG. 1 depicts the appearance of a computer video display according to previous devices and methods;
FIG. 2 is a block diagram of a telephone/computer system useable in connection with the present invention;
FIG. 3 depicts a telephone/computer network system useable in connection with the present invention;
FIG. 4 depicts the appearance of a computer video screen for selection of sequential-playback objects, according to one embodiment of the present invention;
FIG. 5 depicts the appearance of a computer video screen for selection of a second sequential-playback object, according to one embodiment of the present invention; and
FIGS. 6A-6V are flow charts showing a method for control of a sequential-playback objects, according to one embodiment of the present invention.
The present invention can be used in connection with a number of system configurations, ranging from simple, single-station configurations to complicated networked configurations. FIG. 2 depicts one configuration useable in connection with the present invention. In FIG. 2, a computer such as a personal computer (PC) 202 is connected to a video display 204 and a user input device, preferably including a pointer device such as a mouse 206. The computer 202 includes memory 208, for general computer use as well as for storing objects such as digitized voicemail messages, and circuitry for receiving, storing and playing back SPO's, such as a voicemail board 210, connected to a single telephone 212 and an ordinary telephone line 214. A number of types of hardware can be used in this regard. In one embodiment the PC is a IBM-compatible 486 computer, configured to run Microsoft® Windows™ software. The voicemail board is a model D/41D available from Dialogic Corporation, the display is a SVGA display, and the mouse is a Microsoft® mouse.
FIG. 3 depicts a more complex system which can also be used in connection with the present invention. In FIG. 3, the phone line 214's PBX 215 and server 316 may be multiple line devices. Rather than connecting directly to a telephone, the phone line 214' is connected via a private branch exchange (PBX) 215 to a phone server, i.e., a computer configured for receiving telephone calls, routing the calls to the correct location and, in some cases, recording and storing voice and other audio messages. In one embodiment, the phone server includes a fax board so that the phone server can receive fax calls which can be stored and delivered to PCs 202a, 202b, 202c, e.g., via a communication line 324. Each PC 202a, 202b is connected to a display 204a, 204b, and mouse 206a, 206b as in FIG. 2. Each PC may also be in communication with a telephone 212a, 212b via network cabling 324, 320. The telephone 212a, 212b may be an ordinary user set or may be a telephone set configured particularly for use in connection with the phone server 316. Other embodiments could include a direct connection between the telephone and the PC. In the depicted embodiment, each phone 212a, 212b is connected to the server 316 via a line 320. Although the PC's 202a, 202b can be entirely independent, they can also be connected on a network, using a network server 322 coupled over a network communication link 324 (which can be either physical media or, for example, a radio link, IR link, or modem link 325). In addition, the computers 202a, 202b, 202c can be connected with other information links such as a wide area network server, an internet server 326 and/or a video source such as a video camera or video conferencing equipment 328.
In the embodiment of FIG. 2, the PC 202 may handle only a limited number of types of SPO's, e.g., voicemail messages and personal greetings. In the embodiment of FIG. 3, the PC's 202a, 202b may deal with a wider variety of SPO's, including e-mail audio or video messages, e.g., delivered over the network 324, audio, video or audio-visual files downloaded from the internet server 326, and/or video or audio-video information from the video or video conferencing source 328; in addition to voice mail objects.
FIG. 4 depicts the appearance of a screen that can be used, according to an embodiment of the present invention, in connection with handling SPO's. In the embodiment of FIG. 4, the screen displays a plurality of identifiers of various objects. In this embodiment, the identifiers are displayed as a list 401. In the embodiment of FIG. 4, each identifier in the list includes an icon 402, e.g., to indicate the opened or unopened status of the object, a sender field 404, to indicate the identity of the sender of the message, a time 406 to indicate the receipt time, a length 408 to indicate the length of the message, a second icon 410 to indicate the type of object (voicemail, fax, e-mail, etc.) and a field 412 for indicating the subject of the object. Preferably, the sender identity 404 is obtained automatically, e.g., using information regarding the internal origin of the message or, e.g., caller identification apparatus. The subject 412 may be obtained automatically but, in most cases, will be entered either by the sender or by the receiver. In the embodiment of FIG. 4, the objects which are displayed include both SPO's (such as voicemail messages and audio e-mail messages) and non-SPO's (such as fax messages).
In the embodiment depicted in FIG. 4, a tool bar 416 is also displayed. In the embodiment depicted in FIG. 4, the tool bar 416 includes control indicators for indicating a playback command 422a, stop command 422b, record command 422c, advance-to-end 422d, return-to-beginning 422e, rewind 422f, and fast forward 422g. Additional controls can also be provided including, for example, volume control, speed control, graphic wave form display, volume display, status display (stop, recording, pause) video color adjustment, (hue, saturation), image contrast, and brightness. In the situation depicted in FIG. 4, however, the tool bar is displayed in such a fashion as to indicate to the user that it is not currently useable. In the situation of FIG. 4, this is because the item which is currently selected is a non-SPO, namely a fax message 420. In the embodiment of FIG. 4, the currently-selected object is indicated by highlighting 421. The non-useable state of the tool bar 416 is indicated by displaying the tool indicators 422a through 422g in a dulled or grayed display mode and by displaying empty information fields 424, 426, 428, 430. FIG. 5 depicts the appearance of the screen after the user has selected an SPO object 502. As seen in FIG. 5, the tool bar 416 is shown in a darkened or highlighted state and the information fields contain information showing the status of the playback 424 (in this case "stopped"), the current location, in the sequential object of the playback 426, a visual indication 428 of the location (e.g., by depicting a slider bar, as shown) and an indication 430 of the total length of the selected object. At this point, the user has the option of selecting one of the controls from the control bar 416 to act upon the selected message 502. If the user selects the playback control 422a, the computer will begin playback of the SPO indicated by indicator 502, beginning from the current position, i.e., the position indicated by indicators 426 and 428.
The user may, if desired, then select another one of the SPO's. Preferably, if the user selects a second SPO during the time that a command is executing on a first SPO, such selection of the second SPO will automatically suspend the execution of the command on the first SPO. For example, if the first SPO 502 is in the process of playing back at the time the user selects a second SPO 504, the playback of the first SPO 502 will automatically stop and the location within the sequential object (i.e., the location indicated by 426 and 428) and, preferably, the status ("playback") will be stored. If the user is recording a first SPO 502 at the time the user selects a second SPO 504, the recording will similarly stop and the location (and, preferably, status) will be stored. The user can also select a second SPO during the time when no command is being executed with respect to the first SPO 502.
After selecting the second SPO 504, the user can use the same tool bar 416 to execute commands with respect to the second SPO 504. In order to accomplish this result, it is necessary for the software which responds to selection of a tool from the tool bar 416 to have access to information regarding the object which is currently selected. Moreover, this information must be available regardless of what type of object is selected (e.g., regardless of whether it is an audio object, a video object, an audio-visual object, etc.). In the preferred embodiment, each of the selectable SPO's is associated with a software application. For example, a voicemail message will be associated with voicemail software, an e-mail message will be associated with e-mail software, etc. Each software application stores (or has access to) information regarding each selectable SPO that is associated with that application. Preferably, the application stores information regarding the location or identity of the SPO (such as a file name, a voicemail message number, or the like), the length of the SPO, the most recent status (playback, record, stopped, etc.), and the current position of the SPO. Whenever a particular SPO is selected, the application will pass this information to the tool bar software, i.e., the software which responds to the selection of a tool from the tool bar 416. Although it is conceivable that, rather than passing information, the information could be stored in a common location which could be accessed by both the application software and the tool bar software, the passing of information is believed to provide the most efficient use of resources.
After the information has passed to the tool bar software, this information is used by the tool bar software to respond to a selection of a tool and to control playback, e.g., by sending a command to, for example, initiate playback beginning with the current position.
When the user deselects a SPO (which can be done manually, and preferably happens automatically upon the user selecting a new SPO), the application associated with the deselected SPO will retrieve the relevant information from the tool bar software, such as the current position and status and will store this information. The application will also stop or suspend the execution of any playback or recording of the deselected SPO which may be in progress.
In one embodiment, the information regarding each SPO (such as the name, length and current position) is stored in memory 208. It would also be possible to store the information in non-volatile media such as a hard disk. In one embodiment, the relevant information for all SPO's is stored in a server volatile memory or in non-volatile memory, e.g., in a database system, whenever the user logs off. In the embodiment depicted in FIG. 3, the information may be stored in a network server 322 hard disk. In one embodiment, the information which is stored in the database includes the identity, length and status (opened/unopened) of the message but does not include storage of the current position, so that, upon logging on a second time, all SPO's are positioned in the initial position.
If desired, the system can be configured such that when the user selects an SPO, a window is opened (i.e., displayed) relating to that SPO. However, according to the present invention, it is not necessary to provide a separate tool bar 416 for each selected SPO or for each opened SPO window. When two or more windows are open, the user can select between SPOs by selecting windows in a manner well known for a windows-compatible program.
In one embodiment, it is permissible for a user to select several objects so that two or more objects can be simultaneously in a selected state. For example, in one embodiment if a user uses a mouse to point to and "click" on an object 502, that object will be selected and any previous objects will be deselected. However, if the user holds down the "shift" key on the computer keyboard, uses the mouse to point and click on a first object 502 and then, while still holding down the shift key, uses the mouse to point to and click on a second object 504, both objects will be simultaneously in the selected state. In previous devices when each selected objected had its own tool bar, as shown in FIG. 1, simultaneous selection of objects was handled by having each tool bar operate on its corresponding object. However, if there is only a single tool bar, simultaneous selection of objects must be handled in a different manner. Several options are available. In one option, simultaneous selection of two or more objects causes the tool bar 416 to be disabled (indicated, for example, by the tool bar display as depicted in FIG. 4). In another embodiment, simultaneous selection causes the tool bar to operate on a concatenated object, i.e. results in the effective creation of a new object which is a concatenation of the selected objects (preferably in the order in which they were selected). The control or tool indicator of the tool bar may change in accordance with the characteristics of the selected SPO. For example, selection of a video object, following a selected audio object may result in the display (or highlighting) of command indicators which apply only to video objects (e.g., hue) and the deletion (or greying) of command indicators which relate only to audio objects (such as tone). In this situation, selection of the playback tool 422a can result in playing of each of the concatenated messages sequentially (i.e. requiring another activation of the playback tool 422a between playback of each of the concatenated messages) or continuously (such that all messages are played one after the other, in response to a single selection of the playback tool 422a). This option, for example, could be used to, e.g., forward a plurality of messages as if it were a single message, or could be used to play back all messages (or, for example, all not yet opened messages) in a hands-free manner. The system can also be configured to simultaneously select a plurality of objects (e.g., all unopened objects) automatically (without requiring the user to click on each selected object). An example will serve to illustrate one of the useful features of the invention. In this example it is assumed that the first SPO 504 is a voicemail message, sent to a user, which contains five questions to which the sender wishes a response. The user will select the first voicemail message 502 and then select the playback tool 422a which will initiate playback of the message. Once the user has listened to the first of the five questions, the user will select the "reply" tool 505 which opens, and simultaneously, selects a new SPO 506. The act of selecting SPO 506 automatically suspends the playback of the first SPO 502. Thus, with a single tool selection 506, the user is able to suspend playback, after having heard the first question, and open a new SPO which is ready to record the user's answer to the first question. The user then selects the record tool 422c and begins recording a voicemail message responding to the first question. When the user has finished recording the response to the first question, the user then selects the first message 502 (e.g., by using the mouse or other pointer to move the cursor over the message indicator 502 and clicking a button). The first message 502 automatically begins playback beginning where the previous playback of the message and thus plays back the second question. The user, after hearing the second question, selects the SPO 506 and the SPO 506 automatically commences recording (beginning where it left-off, i.e., after the end of the recorded response to the first questions) so that the user can then record a response to the second question. The user thus continues toggling between selections of the first SPO 502 and the second SPO 506 in order to, listen to each question in order and record a response, with a minimum of commands. After the user has listened to the last of the message 502 and has recorded the last of his response 506, the user can select the stop tool 422b to stop the recording process and then can, at his leisure, select the send tool 508, e.g., to automatically send a response to the sender of message 502.
In one embodiment, the same tool bar can be used regardless of the hardware which is employed for playing back messages. For example, in some embodiments, the user can select to play back a message either using the speaker of the telephone, or using a speaker connected to, for example, a "sound board" of the PC. Typically, the output which drives the phone playback will be in a format different from the output which would be sent to the sound board. In the preferred embodiment, the tool bar software will automatically attend to configuring the output in format appropriate for the playback hardware that has been selected. A similar conversion is preferably automatically performed by the tool bar software regardless of recording hardware, e.g., regardless of whether a recording is being made using the telephone as the input instrument or a PC sound card and microphone as input. Similarly, the same tool bar 416 can be used regardless of whether the playback is a playback of audio material, video material or audio-visual material with the appropriate change of format being automatically achieved by the tool bar software.
Preferably, the tool bar software receives information regarding the capabilities of the hardware and software which is associated with the particular message. In one embodiment, if the SPO is one which cannot be recorded or recorded-over, the record button 422c will be automatically rendered inoperable (and, preferably indicated as such by, for example, greying or dulling of the record indicator 422c). If, for example, the tool bar 416 includes a volume control, such volume control would be automatically rendered inoperable if the SPO is a purely video object with no "volume" associated with it.
A process for controlling SPOs, according to one object of the invention, is shown in the flow charts of FIGS. 6A-6B. As shown in FIG. 6A, after obtaining user ID and password 6012, the user configuration is retrieved 6014, and object information is retrieved from the object store memory 6016. This can involve, for example, retrieving voice mail messages, e-mail messages, fax messages and the like for the user. The main user interface window 6018 is displayed, such as that depicted in FIGS. 4 and 5. The software then determines whether the recorder bar 416 has been configured 6020. If so, the recorder bar is displayed 6022. The object information 401 is displayed 6024 and one of the objects is automatically selected or activated, such as by activating the initial object in the list 6026. The process then waits for. an event to which the process can further respond 6030. Events to which the process can respond can include selection of an object or selection of a command indicator such as a play button, record button, stop button or the like. If the process detects an object select event 6032 (such as the user clicking on a new object) the object selection procedure 6034 (detailed in FIG. 6D) is processed. If an object de-select event is detected (which, as noted above, preferably can occur automatically upon the selection of a new object) the object deselection procedure (detailed in FIG. 6E) is processed 6038. If one of the command selections such as the play button, record button, return-to-beginning button, move-to-end button, rewind or "backup" button, fast forward or "skip ahead" button is clicked or "pressed" 6040, 6042, 6044, 6046, 6048, 6050, 6052, the corresponding procedures (detailed respectively, in FIGS. 6F-6L) are processed 6054, 6056, 6058, 6060, 6062, 6064, 6066. If the manipulation of a scroll bar 428 is detected 6068, the scroll bar manipulation procedure (detailed in FIG. 6M) is processed 6070. If a timer event is detected 6072, the timer event procedure 6074 (detailed in FIG. 6N) is processed. If none of the events are detected, any events which are unrelated to the recorder bar are processed 6076. The procedures 6032-6076 can be performed in an order other than that depicted. Following any processing of procedures, the procedure returns to the top to await the next event 6030.
As shown in FIG. 6D, in the object selection procedure, it is determined first whether the object is a recording or is otherwise an SPO versus a non-SPO 6080. If the selected object is not an SPO, the recorder bar will not be appropriate and the procedure returns 6082 to the main procedure FIG. 6D. If the object is an SPO, the recorder bar is configured 6082. Otherwise, the procedure returns to the main routine 6086. In the recorder bar configuration, the information appropriate to the selected object is received (e.g., by being passed from the application software, as described above). This can include information regarding the total length of the SPO and the current position which are then set 6088 in the appropriate indicators 426, 428, 430. The playback and positioning buttons are enabled, i.e., the software is configured so that selection of the playback button or the positioning buttons will result in initiation of a playback routine or a positioning routine and, preferably, this enablement is reflected in the display, e.g., by highlighting the appropriate buttons or indicators 6090. It is next determined whether the SPO is an object which can be recorded 6092. An example of an object which can be recorded is, for example, a new voice message to be sent as a reply to a received voice mail message. An example of an object which cannot be recorded is, for example, an object which has been designated as "read only" or "playback only." In this case, the routine returns to the main program 6094. However, if the object can be recorded then the record indicator or button 422c is enabled 6096 (i.e., the software is configured so that user-selection of the record indicator 422c results in initiation of a recording procedure) and the status of the record button is preferably displayed, such as by highlighting. The object selection procedure then returns to the main grouping 6098.
As shown in FIG. 6E, when an object is deselected, it is determined whether the recorder bar is configured 6102. If not, the procedure returns to the main routine 6104. Otherwise, deselection of an object results in the blanking 6106 of the position and length indicators 426, 428, 430 and the disabling of the playback, record and the positioning buttons 6108 before returning to the main routine 6110. In situations where object deselection was the result of selecting a new object, the procedures may be followed, in rapid selection by the procedures selected in FIG. 6D so that the user may not perceive the blanking of the fields and disabling of the buttons before the new indicators and button enablement is displayed for the newly-selected object.
As shown in FIG. 6F, if the play button is processed, it is determined whether the object is currently in the playback mode 6114. In this case, the playback stop procedure is processed 6058 as depicted in FIG. 6V, and the procedure returns to the main routine 6116. If it is determined that the object is currently in a record mode 6118, the recording stop procedure is performed (FIG. 6U). If the current position for the SPO is equal to the total length of the SPO 6124, the current position value is set to zero 6126, effectively returning to the beginning of the SPO. It is next determined whether a telephone connection is established 6128. If not, the connection is established 6130 and the connection verified 6132. Failure to establish the telephone connection results in return to the main procedure 6134. After establishing the telephone connection, the start playback routine is begun as depicted in FIG. 6S. Thereafter, the procedure returns to the main routine 6138.
As depicted in FIG. 6G, following the selection of a record indicator, it is determined whether the SPO is currently in the record mode 6140. If so, the record stop routine is processed (FIG. 6V) and control is returned to the main routine. If the SPO is currently playing 6148, the play stop procedure is processed 6058 (FIG. 6V). The telephone connection is established and verified 6127 and the start record procedure is begun 6150 (FIG. 6D) whereupon the procedure returns to the main routine 6152.
As depicted in FIG. 6H, in those cases where it is required to stop playing or recording 6154, it is first determined if the SPO is currently recording 6156 and if so, the record stop procedures 6142 is processed and the program returns to the main routine 6158. If not currently recording, it is determined if the SPO is currently playing 6160 and if so, the play stop procedure 6052 is processed before returning to the main routine 6162. If neither playing nor recording, control returns to the main routine 6164.
As shown in FIG. 6I, if the return-to-beginning command is selected, the routine first saves the "playing" state 6168. Next, the routine performs the "stop playing or recording" routine 6154 (FIG. 6H) and sets the position or location of the SPO to zero 6170. It is then determined whether the SPO was playing when the "return-to-beginning" indicator was selected 6172. This can be determined from the state which was saved in step 6168. If not, the procedure returns to the main routine 6174. Otherwise, the start playback procedure 6136 (FIG. 6S) is begun. Afterwards, the procedure returns to the main routine 6176.
As depicted in FIG. 6J, if the move-to-end command was selected, the "stop playing or recording" procedure is executed 6154 and the position indicator is set to a number equal to the total length of the message 6178 effectively setting the SPO at the end of the message or object. The position display 428, 426 is reset accordingly 6180 and the position scroll bar 428 is reset accordingly 6182 whereupon the procedure returns to the main routine 6184.
As depicted in FIG. 6K, if a rewind or backup command is selected, the routine first saves an indication of whether the SPO was in the "play" state 6186. The "stop playing or recording" procedure is performed 6154 and the position is decremented a predetermined amount. In the depicted embodiment, it is decremented by an amount equal to a playback five seconds 6188. If this decrementing results in the position being a negative number 6190, the position indicator is set to zero 6192. Next, the position display 426 is updated 6194 and the position scroll bar 428 is updated 6196. The routine then determines whether the backup button is being "held down" 6198. In one embodiment, the button is "held-down" if the user has used the mouse to position the cursor over the backup or rewind indicator or button 422f and pushed the mouse button down but not released the mouse button. If the backup button is not being held down, it is determined whether the SPO is playing when the backup button was pressed 6200 (e.g., by reference to the state which was saved in step 6186). If not, the procedure returns to the main routine 6202. If the SPO was playing then playback is started 6136 (FIG. 6S) so that, in this situation, the effect of selecting the rewind button is to begin playback from a position five seconds earlier then the previous "current" location. Thereupon, the procedure returns to the main routine 6204. If it was determined that the backup button was being held down, a timer mode indicating backup scrolling is set and an interval for backup scrolling is set, e.g., to a default value 6206, whereupon the procedure returns to the main routine 6208.
The procedure in response to a selection of a skip ahead button 6066 (depicted in FIG. 6L) is similar to that described in connection with FIG. 6K, except that the new position is incremented 6188', rather than decremented, the position is checked against the length 6190' and is given a maximum value equal to the length 6192' and the timer mode and interval are set for forward scrolling 6206' rather than reverse scrolling.
As depicted in FIG. 6M, in response to a manipulation of the position scroll bar 428, the playing state is saved 6186 and the stop playing or recording procedure 6154 is performed. The procedure obtains information about the new scroll bar position 6212. For example, if the user has used the mouse to "drag" the position indicator to a new position in the scroll bar, this new position is determined. The new scroll bar position is then translated into a recording position 6214. For example, the recording/playback position can be calculated as the length of a message times a factor equal to the distance of the position marker 429 from the left-hand edge of the scroll bar 428 divided by the horizontal extent of the scroll bar 428. The position display 426 is then reset accordingly 6216 and the scroll bar position 428 is updated 6218. If the SPO was playing when the scroll manipulation occurred 6222, playback is started 6136 and the procedure returns to the main routine 6224, 6226.
If a timer event is detected 6074, the procedure depicted in FIG. 6N is followed. The timer event can be used for a plurality of purposes. The procedure of FIG. 6N depicts using the timer event to assure that the screen indicators which show the location 426, 428 accurately reflect the location in the event of a record, playback, fast forward or rewind event. If it is determined that the SPO is currently playing 6228, the playback timer event 6230 (FIG. 60) is performed and the procedures returns to the main routine 6232. If it is determined that the SPO is recording 6234, the recording timer event is processed 6236 (FIG. 6P) and thereafter, control returns to the main routine 6238. If the SPO is rewinding or scrolling backwards 6240, it is determined whether the backup button is still being pressed or indicated or "held down" 6242 in which case, the backup timer event is processed 6244 (FIG. 6Q) whereupon control returns to the calling program 6246. If the SPO is fast forwarding or scrolling forward 6248, it is determined whether the fast forward button is still pressed or "held down" 6250. If so, the forward timer event procedure 6252 is processed (FIG. 6R) and control returns to the calling program 6254. If the backup button or fast forward button is not being pressed, it is determined whether the SPO was playing when the rewind or fast forward button was pressed or selected 6256. If not, control returns to the calling program 6258. If so, the playback routine is started 6136 and thereafter control returns to the calling program 6260. If the SPO was not playing, recording, scrolling back or scrolling forward, the timer is disabled 6262 and control returns to the calling program 6264.
As depicted in FIG. 60, during a playback timer event process, a predetermined amount (such as one second) is added to the current "position" stored for the SPO 6266. If this causes the position to exceed the length of the message 6268, the stop procedure is performed 6052 (FIG. 6V) and control returns to the calling program 6270. Otherwise, the position and scroll bar displays are updated 6272, 6274 and control returns to the calling program 6276.
As depicted in FIG. 6P, in the event of a record timer event, a predetermined amount (such as one second) is added to both the position indicator 6280, 6282 and the procedure updates the length display 6286 as well as the position and scroll bar displays 6272, 6274 before returning to the calling program 6288.
As depicted in FIG. 6Q, for a backup timer event, a predetermined amount (such as one second) is subtracted from the position 6290. If this causes the position to be negative 6292, the position is set equal to zero 6294. The display and scroll bar are updated 6272, 6274 before returning to the calling program 6296.
As depicted in FIG. 6R, for a forward timer event, a predetermined amount (such as one second) is added to the position indicated by the SPO 6298. If this causes the position to exceed the length since the position is set equal to the length 6304. The display and scroll bar indications are updated 6272, 6274 before returning control to the calling program 6306.
As depicted in FIG. 6S, a start playback routine begins by saving a starting position 6310. Playback is then initiated by sending a play command, an identifier of the object to be played and the starting position to the device responsible for playing back the item which can be, for example, a voice mail program in the phone server, e-mail software and the like. In some situations other information may be sent in connection with initiating playback, such as information about the speed of playback, type of playback (audio only, video only) and the like. The timer mode and interval for the playback is set 6314 before returning to the calling program 6318.
As depicted in FIG. 6T, when a recording is started, the starting position is first saved 6320 and recording is initiated by sending the record command along with other information such as the identification of the object and the position in the object to start recording, to the device responsible for performing the recording, such as a voice mail server and other object software 6322. The timer mode and interval for the recording are set 6324 before returning control to the calling program 6326.
As depicted in FIG. 6U, in response to a record stop command, the stop command is sent to the voice mail server or other device or software responsible for the recording process 6328. The length of the segment which was recorded is obtained (such as by a message sent from the server 6330) and a new length is set equal to the start position for recording plus the length recorded 6332. The position of the SPO is set equal to the length 6334 (so that the SPO is currently positioned at the end of the recording). The procedure then updates the length display, position display and scroll bar indicator 6286, 6274, 6272 before control returns to the calling program 6336.
As depicted in FIG. 6V, in response to a playback stop command, the procedure outputs a stop command to the server or other device which is responsible for the playback 6338. The length which was played is determined (e.g., by being sent from the application software responsible for the playback 6340). The position is set equal to the start position plus the playback length 6342 and the position display and scroll bar displays are updated 6272, 6274 before returning to the calling routine 6344.
In light of the above description, a number of advantages to the present invention can be seen. The present invention provides the ability to control the playback, recording, positioning and adjustment of a plurality of SPOs in a fashion that reduces screen clutter, and is believed to provide rapid execution of commands and reduction in the requirements for computer resources. A single tool bar can be used for controlling any of a plurality of SPOs. The tool bar software will automatically adjust to the characteristic of each particular SPO such as capabilities of associated hardware and software, characteristics of the object such as data storage format, audio/video/audio-visual nature of the SPO and the like. Selection of a new SPO will automatically stop or suspend commands currently being executed on a previously-selected SPO. The user can efficiently and rapidly switch between SPOs, merely by selecting an SPO, with the capability of picking up where previously left-off, both in terms of location in the SPO and, preferably status of the commands.
A number of variations and modifications of the present invention can be used. Although the present invention was described in connection with a PC running under window software, the present invention can be used in many other computing contexts such as mainframe computers, laptop computers, notebook computers, personal communication devices, palm top computers, Apple/Macintosh computers, Unix-based computers, and the like. Although the examples above primarily are related to audio messages such as voicemail messages, other types of SPOs can be handled by the present invention, including video objects, virtual reality objects, multimedia objects, process control, simulations and other sequential objects. Although the present invention as been described by way of a preferred embodiment and certain variations and modifications, other variations and modifications can also be used, the invention being defined by the following claims.
Patent | Priority | Assignee | Title |
10178346, | Mar 17 2014 | Microsoft Technology Licensing, LLC | Highlighting unread messages |
10284813, | Mar 17 2014 | Microsoft Technology Licensing, LLC | Automatic camera selection |
10356147, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Customized perishable media content based on user-specified preference for static or variable location |
10587660, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Selection of preferred content |
10678504, | Sep 21 2016 | Amazon Technologies, Inc. | Maintaining context for voice processes |
10902179, | Dec 10 2012 | Microsoft Technology Licensing, LLC | Modification of file graphic appearance within a collection canvas |
10909577, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Mapping user notifications to specific media streams |
11004452, | Apr 14 2017 | LINE CORPORATION | Method and system for multimodal interaction with sound device connected to network |
11061644, | Sep 21 2016 | Amazon Technologies, Inc. | Maintaining context for voice processes |
11265355, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Customized perishable media content based on user-specified preference for static or variable location |
11563787, | Aug 24 2007 | iHeartMedia Management Services, Inc. | Mobile device selection of preferred content |
11587124, | Aug 24 2007 | iHeartMedia Management Services, Inc. | Passing control of inserting third-party content into a media stream |
5987498, | Feb 16 1996 | LogicLink Corporation | Credit card operated computer on-line service communication system |
6212551, | Sep 15 1997 | Advanced Micro Devices, Inc. | Digitized audio data attachment to text message for electronic mail |
6317784, | Sep 29 1998 | RADIOWAVE COM, INC | Presenting supplemental information for material currently and previously broadcast by a radio station |
6335927, | Nov 18 1996 | Verizon Patent and Licensing Inc | System and method for providing requested quality of service in a hybrid network |
6349329, | Sep 29 1998 | RADIOWAVE COM, INC | Coordinating delivery of supplemental materials with radio broadcast material |
6396513, | May 14 1996 | AT&T Corp | Electronic message sorting and notification system |
6415256, | Dec 21 1998 | NETAIRUS TECHNOLOGIES LLC | Integrated handwriting and speed recognition systems |
6456594, | Oct 31 1996 | PATENTMARKS COMMUNICATIONS, LLC | Multi-protocol communications routing optimization |
6473404, | Nov 24 1998 | PATENTMARKS COMMUNICATIONS, LLC | Multi-protocol telecommunications routing optimization |
6484156, | Sep 15 1998 | Microsoft Technology Licensing, LLC | Accessing annotations across multiple target media streams |
6510438, | Oct 31 1997 | Yamaha Corporation | Electronic mail system, method of sending and receiving electronic mail, and storage medium |
6518978, | May 29 1998 | Hitachi, Ltd. | Image-display edit processing method, image editing apparatus and storage medium |
6526128, | Mar 08 1999 | AVAGO TECHNOLOGIES GENERAL IP SINGAPORE PTE LTD | Partial voice message deletion |
6587127, | Nov 25 1997 | Google Technology Holdings LLC | Content player method and server with user profile |
6690654, | Nov 18 1996 | Verizon Patent and Licensing Inc | Method and system for multi-media collaboration between remote parties |
6701355, | Sep 29 1999 | SUSQUEHANNA MEDIA CO | System and method for dynamically substituting broadcast material and targeting to specific audiences |
6731625, | Feb 10 1997 | Verizon Patent and Licensing Inc | System, method and article of manufacture for a call back architecture in a hybrid network with support for internet telephony |
6748427, | Oct 13 1998 | SUSQUEHANNA MEDIA CO | System and method for providing measurement of tracking events with radio broadcast materials via the internet |
6754181, | Nov 18 1996 | Verizon Patent and Licensing Inc | System and method for a directory service supporting a hybrid communication system architecture |
6917965, | Sep 15 1998 | Microsoft Technology Licensing, LLC | Facilitating annotation creation and notification via electronic mail |
6956593, | Sep 15 1998 | Microsoft Technology Licensing, LLC | User interface for creating, viewing and temporally positioning annotations for media content |
6964024, | Feb 07 2001 | Xerox Corporation | Operator-defined visitation sequence of client user interface controls |
7023968, | Nov 10 1998 | Intel Corporation | Message handling system |
7047503, | Mar 28 2001 | ACCESS CO , LTD | Method and apparatus for the selection of records |
7051275, | Sep 15 1998 | Microsoft Technology Licensing, LLC | Annotations for multiple versions of media content |
7111009, | Mar 14 1997 | Microsoft Technology Licensing, LLC | Interactive playlist generation using annotations |
7145898, | Nov 18 1996 | Verizon Patent and Licensing Inc | System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture |
7162690, | Sep 15 1998 | Microsoft Technology Licensing, LLC | Annotations for multiple versions of media content |
7228188, | Dec 28 1999 | Kabushiki Kaisha Toshiba | Recording and reproducing apparatus and a method thereof |
7243301, | Apr 10 2002 | Microsoft Technology Licensing, LLC | Common annotation framework |
7269247, | Oct 11 1994 | AIP Acquisition LLC | Efficient communication through networks |
7305343, | Mar 01 2000 | Microsoft Technology Licensing, LLC | Method and system for embedding voice notes |
7307956, | Oct 31 1996 | PATENTMARKS COMMUNICATIONS, LLC | Multi-protocol telecommunications routing optimization |
7337390, | Mar 01 2000 | Microsoft Technology Licensing, LLC | Method and system for embedding voice notes |
7417680, | Jan 16 2002 | MAXELL HOLDINGS, LTD ; MAXELL, LTD | Digital video reproduction apparatus and method |
7506262, | Sep 15 1998 | Microsoft Technology Licensing, LLC | User interface for creating viewing and temporally positioning annotations for media content |
7568151, | Jun 27 2002 | Microsoft Technology Licensing, LLC | Notification of activity around documents |
7631015, | Mar 14 1997 | Microsoft Technology Licensing, LLC | Interactive playlist generation using annotations |
7643012, | Mar 30 2006 | LG Electronics Inc. | Terminal and method for selecting displayed items |
7664097, | Jun 26 1996 | Verizon Patent and Licensing Inc | Telephone service via networking |
7685102, | Nov 13 1998 | AVAYA Inc | Methods and apparatus for operating on non-text messages |
7715371, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method and apparatus for accessing communication data relevant to a target entity identified by a number string |
7724879, | Oct 11 1994 | AIP Acquisition LLC | Efficient communication through networks |
7747943, | Sep 07 2001 | Microsoft Technology Licensing, LLC | Robust anchoring of annotations to content |
7804816, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method and apparatus for accessing communication data relevant to a target entity identified by a number string |
7813332, | Mar 19 1997 | Verizon Patent and Licensing Inc | Voice call alternative routing through PSTN and internet networks |
7817619, | Dec 18 1996 | Verizon Patent and Licensing Inc | Internet long distance telephone service |
7830860, | Mar 11 1997 | Verizon Patent and Licensing Inc | Packet data network voice call quality monitoring |
7831480, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized transaction bargaining system |
7831523, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized dispute resolution system and method |
7835344, | Mar 19 1997 | Verizon Patent and Licensing Inc | Transport of caller identification information through diverse communication networks |
7903641, | Feb 25 2005 | Comcast IP Holdings, I, LLC | Method and apparatus for accessing communication data relevant to a target entity identified by a number string |
7937443, | Mar 10 2002 | CEDATECH HOLDINGS, LLC | Email messaging program with built-in video and/or audio media recording and/or playback capabilities |
7941766, | Mar 28 2001 | Access Co., Ltd. | Method and apparatus for the selection of records |
7948968, | Sep 16 1997 | Verizon Patent and Licensing Inc | Network session management |
7954049, | May 15 2006 | Microsoft Technology Licensing, LLC | Annotating multimedia files along a timeline |
8094647, | Nov 18 1996 | Verizon Patent and Licensing Inc | System and method for providing requested quality of service in a hybrid network |
8150773, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized dispute resolution system and method |
8150774, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | System and method for providing automated dispute resolution between or among multiple parties |
8150775, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized transaction bargaining system and method |
8170008, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method and apparatus for accessing communication data relevant to a target entity identified by a number string |
8189565, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method and apparatus for accessing communication data relevant to a target entity identified by a number string |
8204046, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method and apparatus for accessing service resource items that are for use in a telecommunications system |
8223752, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method for accessing service resource items that are for use in a telecommunications system |
8335746, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized transaction bargaining system and method |
8379531, | Jul 17 2000 | Verizon Patent and Licensing Inc | Telephony communication via varied redundant networks |
8418199, | Apr 30 1996 | Sony Corporation | Internet downloaded programmable recording device |
8494970, | Aug 06 1998 | CYBERSETTLE HOLDING, INC | Computerized dispute resolution system and method |
8553681, | Jun 26 1996 | Verizon Patent and Licensing Inc | Telephone service via packet-switched networking |
8671214, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Customizing perishable content of a media channel |
8677286, | May 01 2003 | Qualcomm Incorporated | Dynamic sizing user interface method and system for data display |
8719349, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | System and method for providing a radio-like experience |
8938062, | Dec 11 1995 | Comcast IP Holdings I, LLC | Method for accessing service resource items that are for use in a telecommunications system |
8976782, | Sep 16 1997 | Verizon Patent and Licensing Inc | Network session management for telephony over hybrid networks |
9036499, | Oct 31 1996 | PATENTMARKS COMMUNICATIONS, LLC | Multi-protocol telecommunications routing optimization |
9082135, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Third party delivery of preferred perishable content |
9154616, | Oct 18 2005 | OIA INTELLECTUALS, INC. | Wearable capture and communication |
9167073, | Aug 12 1999 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | Method and apparatus for accessing a contacts database and telephone services |
9191505, | May 28 2009 | Comcast Cable Communications, LLC | Stateful home phone service |
9215254, | Sep 16 1997 | Verizon Patent and Licensing Inc | Network session management for telephony over hybrid networks |
9265458, | Dec 04 2012 | SYNC-THINK, INC | Application of smooth pursuit cognitive testing paradigms to clinical drug development |
9300618, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Customizing perishable content of a media channel |
9338190, | Oct 11 1995 | AIP Acquisition LLC | System and method for managing multimedia communications across convergent networks |
9374558, | Feb 07 2008 | OMNIVEX CORPORATION | Digital signage display |
9380976, | Mar 11 2013 | SYNC-THINK, INC | Optical neuroinformatics |
9619808, | Feb 07 2008 | OMNIVEX CORPORATION | Digital signage network |
9699232, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Adding perishable content to media stream based on user location preference |
9749585, | Mar 17 2014 | Microsoft Technology Licensing, LLC | Highlighting unread messages |
9806988, | Oct 31 1996 | PATENTMARKS COMMUNICATIONS, LLC | Multi-protocol telecommunications routing optimization |
9860288, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Synchronization of preferred perishable content |
9860363, | Aug 12 1999 | Hewlett-Packard Development Company, L.P. | Method and apparatus for accessing a contacts database and telephone services |
9888207, | Mar 17 2014 | Microsoft Technology Licensing, LLC | Automatic camera selection |
9990655, | Aug 24 2007 | BANK OF AMERICA, N A , AS SUCCESSOR COLLATERAL AGENT | Live media stream including personalized notifications |
Patent | Priority | Assignee | Title |
4868687, | Dec 21 1987 | International Business Machines Corporation | Audio editor display interface |
4998272, | Jun 15 1989 | Digital Voice Technologies, Inc. | Personal voice mail system |
5029200, | May 02 1989 | AVAYA Inc | Voice message system using synthetic speech |
5065345, | Nov 04 1988 | DynEd International, Inc. | Interactive audiovisual control mechanism |
5109482, | Jan 11 1989 | Alcoa Fujikura Limited | Interactive video control system for displaying user-selectable clips |
5119474, | Jun 16 1989 | LENOVO SINGAPORE PTE LTD | Computer-based, audio/visual creation and presentation system and method |
5127003, | Feb 11 1991 | Wilmington Trust FSB | Digital/audio interactive communication network |
5128982, | Jul 31 1989 | DUGDALE, WILLIAM P | Electronic apparatus for "Hands off" control of a voice mail system |
5172404, | Sep 26 1989 | Hashimoto Corporation | System for coupling telephone answering device and voice mail apparatus together |
5177780, | Oct 18 1990 | AMERICAN TELEPHONE AND TELEGRAPH COMPANY, A CORP OF NY | Method of voice mail notification for cellular telephone systems |
5187735, | May 01 1990 | TELE GUIA TALKING YELLOW PAGES, INC , A CORP OF PUERTO RICO | Integrated voice-mail based voice and information processing system |
5208421, | Nov 01 1990 | International Business Machines Corporation | Method and apparatus for audio editing of MIDI files |
5243643, | Nov 01 1990 | InterVoice Limited Partnership | Voice processing system with configurable caller interfaces |
5247568, | Jun 26 1990 | Intertel Entertainment, Inc. | Method for creating and composing audio text message |
5249289, | Sep 28 1989 | International Business Machines Corporation | System and method for rebuilding edited digital audio files |
5274738, | Dec 31 1991 | NICE SYSTEMS, INC | Modular digital voice processing system |
5278897, | Mar 09 1992 | SIEMENS ENTERPRISE COMMUNICATIONS, INC | Smart internodal transfer for subscriber access in multinode voice messaging systems |
5333299, | Dec 31 1991 | International Business Machines Corporation | Synchronization techniques for multimedia data streams |
5365502, | Feb 05 1991 | Sony Corporation | Optical disc player having a resume function |
5390138, | Sep 13 1993 | Apple Inc | Object-oriented audio system |
5428730, | Dec 15 1992 | LENOVO SINGAPORE PTE LTD | Multimedia system having software mechanism providing standardized interfaces and controls for the operation of multimedia devices |
5459581, | May 29 1989 | Canon Kabushiki Kaisha | Image communication method and apparatus for recording and displaying voice message history information |
5467288, | Apr 10 1992 | AVID TECHNOLOGY, INC | Digital audio workstations providing digital storage and display of video information |
5500859, | Jan 08 1993 | Multi-Tech Systems, Inc. | Voice and data transmission system |
5553220, | Sep 07 1993 | Nvidia Corporation | Managing audio data using a graphics display controller |
5557724, | Oct 12 1993 | Intel Corporation | User interface, method, and apparatus selecting and playing channels having video, audio, and/or text streams |
5586216, | Sep 25 1992 | Apple Inc | Recording method and apparatus and audio data user interface |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 02 1994 | MURRAY, DOUGLAS G | APPLIED VOICE TECHNOLOGY A WASHINGTON CORPORATION | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 006892 | /0818 | |
Mar 03 1994 | Applied Voice Technology | (assignment on the face of the patent) | / | |||
Jul 23 1998 | APPLIED VOICE TECHNOLOGY, INC | AVT CORPORATION | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 011911 | /0285 | |
Mar 30 2001 | AVT CORPORATION | CAPTARIS, INC | CHANGE OF NAME SEE DOCUMENT FOR DETAILS | 011911 | /0534 | |
Jan 02 2008 | CAPTARIS, INC | WELLS FARGO FOOTHILL, LLC, AS AGENT | SECURITY AGREEMENT | 020362 | /0679 | |
Nov 17 2008 | WELLS FARGO FOOTHILL, LLC, AS AGENT | CAPTARIS, INC | RELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS | 021849 | /0895 | |
Jun 25 2009 | CAPTARIS, INC | OPEN TEXT INC | MERGER SEE DOCUMENT FOR DETAILS | 023942 | /0697 | |
Jul 25 2011 | OPEN TEXT INC | OPEN TEXT S A | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027292 | /0666 | |
Jul 01 2016 | OPEN TEXT S A | OT IP SUB, LLC | IP BUSINESS SALE AGREEMENT | 039872 | /0605 | |
Jul 02 2016 | OT IP SUB, LLC | IP OT SUB ULC | CERTIFICATE OF CONTINUANCE | 039986 | /0689 | |
Jul 08 2016 | IP OT SUB ULC | Open Text SA ULC | CERTIFICATE OF AMALGAMATION | 039872 | /0662 |
Date | Maintenance Fee Events |
Jun 14 2001 | M283: Payment of Maintenance Fee, 4th Yr, Small Entity. |
Jun 21 2001 | SM02: Pat Holder Claims Small Entity Status - Small Business. |
Jun 16 2005 | M2552: Payment of Maintenance Fee, 8th Yr, Small Entity. |
Jun 15 2009 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Jun 22 2009 | REM: Maintenance Fee Reminder Mailed. |
Jun 24 2009 | R2553: Refund - Payment of Maintenance Fee, 12th Yr, Small Entity. |
Jun 24 2009 | STOL: Pat Hldr no Longer Claims Small Ent Stat |
Date | Maintenance Schedule |
Dec 16 2000 | 4 years fee payment window open |
Jun 16 2001 | 6 months grace period start (w surcharge) |
Dec 16 2001 | patent expiry (for year 4) |
Dec 16 2003 | 2 years to revive unintentionally abandoned end. (for year 4) |
Dec 16 2004 | 8 years fee payment window open |
Jun 16 2005 | 6 months grace period start (w surcharge) |
Dec 16 2005 | patent expiry (for year 8) |
Dec 16 2007 | 2 years to revive unintentionally abandoned end. (for year 8) |
Dec 16 2008 | 12 years fee payment window open |
Jun 16 2009 | 6 months grace period start (w surcharge) |
Dec 16 2009 | patent expiry (for year 12) |
Dec 16 2011 | 2 years to revive unintentionally abandoned end. (for year 12) |