# Patent

## Title
System and method for linking page content with a video media file and displaying the links

## Abstract

A method and system link page content with a media file and display these links during playback of the media file. In other words, the present invention can link notes stored in an electronic document with media such as video stored in a video file. As media is played back from the media file, the present invention can display visual indicators adjacent to or over page content so that a user can see how page content relates to the media file. Page content can be highlighted when the page content has a relationship with the media that is being played. That is, page content can be highlighted at different times as the recorded information from a media file such video from a video file is being played back in a video display window.

## Background
RELATED APPLICATIONS
This application is a continuation-in-part of U.S. patent application, Ser. No. 10/397,103, filed with the United States Patent and Trademark Office on Mar. 26, 2003, entitled “System and Method for Linking Page Content with a Media File and Displaying the Links,” which is incorporated herein by reference.


FIELD OF THE INVENTION
A present invention relates to creating page content in electronic documents through typewritten text or handwritten text, and more specifically, it relates to creating page content and linking this page content with a media file such as an audio file or video file.
BACKGROUND OF THE INVENTION
One of the simplest methods of recording and communicating information is the traditional method of writing the information down on a piece of paper with a writing instrument such as a pen. Writing information by hand on a piece of paper is inexpensive and can be done quickly and easily with little preparation. The traditional method is also flexible in that a writer can generally write in any format anywhere on the page. One of the limitations with handwritten work is that it is not easily manipulated or transferred to other contexts. In other words, changing or transferring a piece of handwritten text typically requires rewriting the text on another medium.
Handwritten notes are often rewritten with personal computers. Specifically, with the widespread use of personal computers, textual information often is recorded using word processing software running on a personal computer. The advantage of such electronic methods for recording information is that the information can be easily stored and transferred to other remote computing devices and electronic media. Such electronically recorded text can also be easily corrected, modified, and manipulated in a variety of different ways.
Typical computer systems, especially computer systems using graphical user interface (GUI) systems such as Microsoft WINDOWS, are optimized for accepting user input from one or more discrete input devices. Common input devices include a keyboard for entering text and a pointing device, such as a mouse with one or more buttons, for controlling the user interface. The keyboard and mouse interface facilitates creation and modification of electronic documents including text, spreadsheets, database fields, drawings, and photos.
One of the limitations with conventional GUI systems of computers is that a user must generally type the text they are entering into the personal computer using the keyboard. Entering text using a keyboard is generally slower and more cumbersome than handwriting. Although recent advances have been made in reducing the size of personal computers, they are still not as portable and easily accessible as traditional paper and pen. Furthermore, traditional pen and paper provide the user with considerable flexibility for editing a document, writing notes in the margin, and drawing figures and shapes. In some instances, a user may prefer to use a pen to mark-up a document rather than review the document on-screen because of the ability to freely make notes outside of the confines of the keyboard and mouse interface.
To address the shortcomings of traditional keyboard and mouse interfaces, there have been various attempts to create an electronic tablet that can record handwriting. Such electronic tablets typically comprise a screen and a handheld device that is similar to a pen (also referred to as a stylus). A user can manipulate the pen to write on the electronic tablet in a manner similar to the use of traditional pen and paper. The electronic tablet can “read” the strokes of the user's handwriting with the handheld device and render the handwriting in electronic form on the tablet's screen and/or the computer's display as “electronic ink”. This electronic tablet approach can be employed in a variety of ways including, on a personal computer and on a handheld computing device.
While the electronic tablet approach has overcome many of the shortcomings of traditional keyboard and mouse interfaces, the electronic tablet approach has not overcome some of the problems often associated with conventional handwritten techniques that employ pen and paper. For example, when handwritten notes are taken during a meeting by a user, the information being presented during the meeting may be conveyed beyond the speed of the user in order to take accurate and reliable notes. When information during a meeting is being presented beyond the speed of the user, valuable or important information may not be captured in the notes taken by the user.
Another problem with the electronic tablet approach that is common with conventional handwriting techniques is a user may not comprehend the information being presented during a meeting, a lecture, or other type of presentation because the user may be too focused on taking notes instead of listening and comprehending the information or material being presented. Another problem that the electronic tablet approach shares with conventional handwriting techniques is that notes are often personalized to the user and sometimes may not make sense to another user who did not make the notes. In other words, notes can be of such a personal nature that people other than a user taking the notes may not understand the notes when reading them.
An additional problem that the electronic tablet approach shares with the conventional handwritten techniques is both technologies are not very helpful when a user taking notes does not understand the information or material being presented. In such circumstances, a user may not be able to capture any information by note taking since the user does not understand any of the material being presented.
A further problem shared by the electronic tablet approach and conventional handwriting techniques is in some circumstances a user may not be permitted to read his or her notes while creating them. For example, during a job interview, an employer conducting an interview with a potential employee may miss important body language of the potential employee if the employer did not maintain eye contact with the potential employee. In such circumstances, the user or employer may not be able to capture the substance of the interview with handwriting techniques because eye contact must be maintained. Another problem occurs when reviewing notes. The context of a meeting or class is often forgotten when reviewing handwritten or typed notes.
In order to address some of the problems mentioned above, a user can capture information being presented by combining handwritten note taking techniques and using a media recorder such as an audio recorder or video recorder recorder. While recording information with a media device does preserve the entire contents of the information being presented to a user, conventional technology does not provide a way to connect handwritten notes with the medium used to record the information.
In other words, conventional technology does not provide any links between handwritten materials and the media recorder such that a user can easily navigate between information captured with handwriting and information captured with the media recorder. Often, when using a media recorder, a user must listen or view the captured information with a media player and stop, start, rewind, and fast forward through portions of a media file in order to synchronize the written word with the recorded word.
Accordingly, there is a need in the art for a method and system for linking page content with a media file such that a user can easily navigate between the page content and the media file as necessary. There is also a need in the art for a method and system for linking page content with a media file where visual indicators are provided to allow a user to see the connection between the written word and the recorded spoken word in a media file, or between the written word and a recorded video media file. A further need exists in the art for a method and system that can link page content with a media file such that a user can point to page content and the corresponding recorded medium would be synchronized with the selected written material. In other words, there is a need in the art for visually displaying a link that informs when the notes were taken during the course of a meeting or lecture.
SUMMARY OF THE INVENTION
The present invention can comprise a method and system for linking and displaying page content with a media file. In other words, the present invention can link notes stored in an electronic document with media such as audio stored in an audio file or video stored in a video file. As media is played back from the media file (audio or video), the present invention can display visual indicators adjacent to or over page content so that a user can see how page content relates to the media file.
According to one exemplary aspect of the present invention, page content can be highlighted when the page content has a relationship with the media that is being played. That is, page content can be highlighted at different times as the recorded live information from a media file such as audio from an audio file or video from a video file is being played back. For example, if video information is recorded while a user is taking notes, then during play back of the video file, the notes derived from parts of the video content can be highlighted and then un-highlighted as the playback from the video file progresses.
The present invention can link page content of an electronic document with a media file by using a media link. A media link can comprise a time stamp and a global universal identifier (GUID) that tracks a media file that can be generated simultaneously with page content. The page content can be created by a user in response to video, audio, or audio/visual information being presented that is stored in the media file. The time stamp can be produced by a media recorder/player as information is being stored on or played back from a media file. According to one exemplary aspect of the present invention, the media recorder/player can comprise a video recorder/player that uses video files. However, other media recorders/players such as audio and audio/visual player/recorders are not beyond the scope and spirit of the present invention.
To display the connection or link between page content and a media file, the present invention can build an index that comprises media links that were stored adjacent to page content in document files. A document editor supporting the visual link between the page content and media can produce the index prior to displaying the visual links. The index can be used to determine which portions of the page content stored in the document files should be highlighted at specific times during playback of the media from the media file.
The present invention can also employ a set of rules to follow when displaying visual links corresponding to play back of a media file. This set of rules can prevent random navigation through an electronic document for notes that may be recorded out of sequence relative to other notes and where such random notes may not be essential for display to the user during play back of a media file. Generally, the present invention can be designed to display a majority of media links in a logical and sequential fashion so that a user is not confused if random notes were taken out of sequence such as on different or earlier pages that may have been displayed during a visual presentation of the links to the media file by a document-editing program.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram illustrating an exemplary operating environment for implementing various embodiments of the present invention.
FIG. 2 is a block diagram depicting primary functional components of an exemplary free-form document editor and related input devices used to create notes.
FIG. 3 is a functional block diagram illustrating some additional details of some key components according to one exemplary embodiment of the present invention.
FIG. 4 is a functional block diagram illustrating a relationship between page content files and media files according to one exemplary embodiment of the present invention.
FIG. 5 illustrates an exemplary file architecture where page groups correspond with groups of media files according to one exemplary embodiment of the present invention.
FIG. 6 illustrates an alternate exemplary embodiment of a file architecture where page group files correspond with a single media file according to an alternate exemplary embodiment of the present invention.
FIGS. 7A-7C are exemplary displays illustrating visual links between a media tool bar and page content according to one exemplary embodiment of the present invention.
FIGS. 8, 9, 10, 11 are exemplary computer screen displays illustrating visual links between a media tool bar, page content, and the visual display of video media in a video media screen, according to one exemplary embodiment of the present invention.
FIG. 12 is a logic flow diagram illustrating an overview of an exemplary process for linking page content with a media file according to one exemplary embodiment of the present invention.
FIG. 13 is a logic flow diagram illustrating a sub-method of FIG. 8 for saving or storing a time stamp and media file identifier to a page file according to one exemplary embodiment of the present invention.
FIG. 14 is a logic flow diagram illustrating an overview of an exemplary process for displaying links between page content and a media file according to one exemplary embodiment of the present invention.
FIG. 15 is a logic flow diagram illustrating a sub-method of FIG. 14 for building an index of time stamps for a page grouping according to one exemplary embodiment of the present invention.
FIG. 16 is a logic flow diagram illustrating a sub-method of FIG. 14 for displaying visual indicators adjacent to outline elements linked to a media file according to one exemplary embodiment of the present invention.
FIG. 17 is a logic flow diagram illustrating a sub-method of FIG. 16 for identifying outline elements in a time stamp indexed that are nearest to a current time stamp according to one exemplary embodiment of the present invention.



DETAILED DESCRIPTION
The present invention can link page content with a media file and display these links during playback. In other words, the present invention can link notes stored in an electronic document with media such as audio information stored in an audio file and video information stored in a video file. As media is played back from the media file, the present invention can display visual indicators adjacent to or over page content so that a user can see how page content relates to the media file.
Exemplary Operating Environment
Exemplary embodiments of the present invention will hereinafter be described with reference to the drawings, in which like numerals represent like elements throughout the several figures. FIG. 1 illustrates an exemplary operating environment for implementation of the present invention.
The exemplary operating environment includes a general-purpose computing device in the form of a conventional personal computer 120. Generally, the personal computer 120 includes a processing unit 121, a system memory 122, and a system bus 123 that couples various system components including the system memory 122 to the processing unit 121. The system bus 123 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. The system memory includes a read-only memory (ROM) 124 and a random access memory (RAM) 125. A basic input/output system (BIOS) 126, containing the basic routines that help to transfer information between elements within personal computer 120, such as during start-up, is stored in ROM 124.
Personal computer 120 further includes a hard disk drive 127 for reading from and writing to a hard disk, not shown, a magnetic disk drive 128 for reading from or writing to a removable magnetic disk 129, and an optical disk drive 130 for reading from or writing to a removable optical disk 131 such as a CD-ROM or other optical media. Hard disk drive 127, magnetic disk drive 128, and optical disk drive 130 are connected to system bus 123 by a hard disk drive interface 132, a magnetic disk drive interface 133, and an optical disk drive interface 134, respectively.
Although the exemplary environment described herein employs hard disk 127, removable magnetic disk 129, and removable optical disk 131, it should be appreciated by those skilled in the art that other types of computer readable media which can store data that is accessible by a computer, such as magnetic cassettes, flash memory cards, digital video disks, Bernoulli cartridges, RAMs, ROMs, and the like, may also be used in the exemplary operating environment. The drives and their associated computer readable media provide nonvolatile storage of computer-executable instructions, data structures, program modules, and other data for personal computer 120.
A number of program modules may be stored on hard disk 127, magnetic disk 129, optical disk 131, ROM 124, or RAM 125, including an operating system 135, an ink processing module 225, a stylus and ink module 228, and an electronic document 220. Program modules include routines, sub-routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. Aspects of the present invention may be implemented in the form of an ink processing module 225 that can operate in concert with a stylus and ink module 228 to edit an electronic document 220.
A user may enter commands and information into personal computer 120 through input devices, such as a keyboard 140 and a pointing device 142. Pointing devices may include a mouse, a trackball, and an electronic pen that can be used in conjunction with an electronic tablet. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to processing unit 122 through a serial port interface 146 that is coupled to the system bus 123, but may be connected by other interfaces, such as a parallel port, game port, a universal serial bus (USB), or the like. A display device 147 may also be connected to system bus 123 via an interface, such as a video adapter 148. In addition to the monitor, personal computers typically include other peripheral output devices (not shown), such as speakers and printers.
The personal computer 120 may operate in a networked environment using logical connections to one or more remote computers 149. Remote computer 149 may be another personal computer, a server, a client, a router, a network PC, a peer device, or other common network node. While a remote computer 149 typically includes many or all of the elements described above relative to the personal computer 120, only a memory storage device 150 has been illustrated in the Figure. The logical connections depicted in the Figure include a local area network (LAN) 151 and a wide area network (WAN) 152. Such networking environments are commonplace in offices, enterprise-wide computer networks, intranets, and the Internet.
When used in a LAN networking environment, the personal computer 120 is often connected to the local area network 151 through a network interface or adapter 153. When used in a WAN networking environment, the personal computer 120 typically includes a modem 154 or other means for establishing communications over WAN 152, such as the Internet. Modem 154, which may be internal or external, is connected to system bus 123 via serial port interface 146. In a networked environment, program modules depicted relative to personal computer 120, or portions thereof, may be stored in the remote memory storage device 150. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
Moreover, those skilled in the art will appreciate that the present invention may be implemented in other computer system configurations, including hand-held devices, multiprocessor systems, microprocessor based or programmable consumer electronics, network person computers, minicomputers, mainframe computers, and the like. The invention may also be practiced in distributed computing environments, where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
Referring to FIG. 2, an exemplary architecture 200 is illustrated for editing electronic ink in accordance with an embodiment of the present invention. FIG. 2 shows typical hardware and software components used in operating the invention from a functional perspective. Conventional input devices are represented by the keyboard 260 and the pointing device (mouse) 265. A user can enter commands and information into the computer 120 using the input devices. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, and scanner.
A conventional output device, such as monitor 270, is used to display information from the computer 120. Other output devices (not shown) can include a printer or speaker. Other hardware components shown in FIG. 2 include an electronic tablet 250 and an accompanying stylus 255. The tablet 250 and stylus 255 are used to input handwriting strokes that are converted to collections of data that can be represented as electronic ink. The electronic ink may be incorporated into an electronic document 220 and may be displayed on the electronic tablet 250, the monitor 270, or both.
Although the electronic tablet 250 and the monitor 270 are illustrated as being distinct, in the preferred embodiment they are either coupled or form a single component. The joint tablet/monitor component has the ability to display information and receive input from the stylus 255. Also shown among the hardware components is a conventional electronic storage device such as a hard drive 127 or RAM 125.
In the representative architecture 200, all of the hardware components are coupled to an ink-processing software module 225. It should be understood by those skilled in the art that FIG. 2 is merely representative and that in practice the hardware components typically are coupled to the elements shown in FIG. 1. The ink-processing module 225 is operable for receiving data from the electronic tablet 250 and/or the stylus 255 and rendering that data as electronic ink. In the preferred and exemplary embodiment, the ink-processing module 225 is a collection of software modules that perform different tasks for rendering handwriting strokes as electronic ink.
For example, the stylus and ink module 228 can receive data describing the positions and angles of the stylus for a series of handwriting strokes. The stylus and ink module 228 can interpret the data for rendering electronic ink. Other software modules, such as a gesture recognizer 230 and word recognizer 235 can be designed to identify certain handwriting strokes and assign them a particular significance. For example, certain gestures such as a cross-out may be recognized and associated with other editing processes. The ink-processing module 225 can also include an erasing functions module 240 for removing electronic ink that has been previously rendered.
Although ink processing modules are known in the art and necessary for an electronic tablet to function, what is needed is a document-editing module 205, such as the one shown in FIG. 2, that enhances the performance of an electronic tablet. Specifically, document-editing module 205 facilitates the manipulation of electronic ink so that a user can create and manipulate an electronic document 220 with greater ease and sophistication.
The document-editing module 205 communicates with the windows media services of the windows operating system 135. The document-editing module 205 can control the operation of the media player/recorder 211 through issuing commands to the windows media services. In turn, the windows media services of the windows operating system 135 as well as the direct show module 207 communicate with the media player/recorder 211 in order to control the operation thereof.
The media player/recorder 211 can communicate to the document-editing module 205. The media/player recorder 211 can comprise an audio player/recorder, a video player/recorder, or an audio/visual player/recorder, or other like media capturing devices. According to an exemplary embodiment, the media player/recorder 211 includes a video camera device for recording video images for playback in association with data (e.g., typed text, handwritten text, drawings, and the like) entered into an associated computing device 120, such as the tablet device 250. The media player/recorder 211 typically communicates time stamps to the document-editing module 205 as needed by the document-editing module. The windows media services of the windows operating system 135 can format and store the live event information received from the media player/recorder 211. Similarly, the document-editing module 205 can format and store the page group files of the electronic document 220 on the storage medium 127.
The page group files 290 and the video files 295 can be both stored on the same storage medium 127. And in one exemplary embodiment, the page group files 290 and the video files 295 are stored within close proximity to one another in an exemplary file architecture as will be discussed below in further detail with respect to FIGS. 5 and 6.
The document-editing module 205 may further comprise a collection of software modules for controlling and manipulating electronic ink rendered on the monitor 270. For example, a parsing module 210 can be used to identify handwriting strokes that are selected by the user for editing. Selected strokes may by highlighted or shaded to assist the user in identifying which strokes are to be edited. A classifier module 215 can identify certain handwriting strokes as being part of a word or drawing. Software modules such as the layout module 216 and the insert space module 217 can be designed to control how electronic ink is rendered and moved. Other modules can include a selection manager 280, a context menu manager 285, a text input manager 292, and a user interface language input processor 297.
The selection manager 280 can monitor how converted text or electronic ink is. selected for editing by the user. The context menu manager 285 can monitor the selection of a list of alternate words that can be displayed when a user edits a word in converted text. The text input manager 292 can operate as an interface for a user interface language input processor 297 that uses language rules to assist in the recognition of words through context.
The modules shown in FIG. 2 are representative and those skilled in the art should understand that other modules may also be part of or coupled to the document-editing module 205. For example, the document-editing module 205 may also work with a rich edit module 275 that provides added functionality such as monitoring and controlling the selection of text and word wrapping.
The present invention includes multiple computer programs that embody the functions described herein and illustrated in the exemplary display screens and the appended flow charts. However, it should be apparent that there could be many different ways of implementing the invention in computer programming, and the invention should not be construed as limited to any one set of computer program instructions. Further, a skilled programmer would be able to write such a computer program to implement the disclosed invention without difficulty based on the exemplary display screens and flow charts and associated description in the application text, for example.
Therefore, disclosure of a particular set of program code instructions is not considered necessary for an adequate understanding how to make and use the invention. The inventive functionality of the claimed computer program will be explained in more detail in the following description in conjunction with the remaining Figures illustrating the functions and program flow.
Exemplary Components of the Page Content Media Linking System
Referring now to FIG. 3, this figure is a functional block diagram illustrating some key components of the media linking system and further details of the files maintained by the document-editing module 205 and the media services of the window operating system 135. As noted above, the document-editing module 205 can store files 290 comprising page groups 300 while the media services of the windows operating system 135 stores media files 295 on the storage medium 127. The storage medium 127 can comprise a hard disk drive as illustrated in FIG. 1. However those skilled in the art will recognize that page groups 300 and media files 295 could be stored in memory such as random access memory 125. Alternatively, in a web based environment, the client document-editing modules 205 and media services of the windows operating system 135 of the client computer could store the page groups 300 and the media files 295 on a server remote from the client document-editing module 205. Those skilled in the art will appreciate that other types of storage devices 127 are not beyond the scope and spirit of the present invention.
The page groups 300 can comprise a collection of related electronic pages. For the page group 300 illustrated in FIG. 3, the page group 300 only comprises a single page. Each page of a page group 300 can comprise outline elements 305. Outline elements can comprise, but are not limited to, typed text, electronic ink, drawings, and pasted material from an electronic clipboard. Adjacent to each outline element can be a link 307 that can comprise a time stamp 310 and a global unique identifier (GUID) 315 that corresponds to a media file.
The media link 307 is used by the document-editing module 205 to identify a specific media file 295 associated with a particular outline element 305 as well as a specific portion of a media file 295 associated with a particular outline element 305. Further details of the media link 307 relative to the outline elements 305 and the video files 295 will be discussed in further detail below.
Exemplary File System for Page Groups and Media Files
Referring now to FIG. 4, this figure illustrates some exemplary relationships between page groups 300 and media files 295. As noted above, the page group 300 is maintained by the document-editing module 205, while the media files 295 are maintained by media services of the Windows operating system 135. According to the example page group illustrated in FIG. 4, a first page group 300A can comprise six pages of page content. Page content of a sixth page of the first page group 300A can comprise a first outline element 305A and a second outline element 305B. The first outline element 305A can comprise electronic ink. Meanwhile the second outline element can comprise typewritten text. As should be understood, description of the invention in terms of outline elements 305, 802, 805a-805d is for purposes of example of the a variety of hand-written notes, typed text, drawings, pictures, and the like that may linked to media content according to embodiments of the present invention.
Each page group 300 can comprise any number of pages. And similarly, each media file 295 can comprise any number of media subfiles 405. However, according to a preferred exemplary embodiment of the present invention, each media file 295 only comprises a single file structure without any distinct sub files as known to those of ordinary skill in the art.
The first page group 300A can be assigned to a first media file group 295A. Similarly, a second page group 300B can be assigned to a second media file group 295B. The first outline element 305A can be assigned to a first media link 307A. A first media link 307A can comprise a first time stamp 310A and a first GUID 315A. The first time stamp 310A and first GUID 315A can refer to a first media file 295A and more specifically to a first media subfile 405A.
Similarly, the second outline element 305B can be assigned a second media link 307B. The second media link 307B can comprise a second time stamp 310B and a second GUID 315B. However, the second time stamp 310B and the second GUID 315B can correspond or refer to a second media file group 295B.
This figure demonstrates that each page group 300 is assigned to a single media file 295. However, the page content comprising outline elements 305 can refer to more than one media file 295. This relationship will be more fully explained below with respect to the flow charts discussed in FIGS. 12 through 17.
Exemplary File Architectures
Referring now to FIG. 5, this figure illustrates an exemplary file architecture 500 that can be navigated by a user. The exemplary file architecture 500 can comprise a tree structure where the page group 300 is typically positioned in the tree structure in a manner similar to the media files 295. Also, each media file 295 in one preferred and exemplary embodiment has a file name that corresponds with a corresponding page group name. Such a file naming system allows for easy navigation between page groups 300 and corresponding media files 295.
Referring now to FIG. 6, this figure illustrates another exemplary file architecture 600 according to an alternative and preferred exemplary embodiment of the present invention. In this particular file architecture 600, each page group 300 corresponds with a single media file 295. In this way, any changes to the pages within a page group 300 would only be reflected in a single audio file 295.
Referring now to FIG. 7A, this figure illustrates a visual link between a media tool bar 700 and page content 705 of a page in a page group 300. The page content 705 comprises first, second, and third outline elements 305A, 305B, and 305C. As noted above, the outline elements 305 can comprise any one of typewritten text, handwritten text in the form of electronic ink, a drawing made with electronic ink or material pasted with an electronic clipboard. Other forms of content for the outline elements are not limited to those illustrated and are not beyond the scope and spirit of the present invention. The media tool bar 700 illustrated in FIGS. 7A-7C show a tool bar that may be utilized for operating a variety of media forms including audio media files and video media files 295, described further below with reference to FIGS. 8-11.
Each outline element can have a corresponding visual indicator 707 that can alert a user that a media file is linked to a particular outline element 305 positioned adjacent to the visual indicator. The visual indicator 707 can comprise an icon that has a shape corresponding to the media file type (i.e., audio, video, etc.). According to one exemplary embodiment, audio files may make up the media files and therefore a visual indicator 707 can be shaped in the form of a speaker to alert a user that audio content is associated with a particular outline element 305. According to another embodiment, video files may make up the media files and therefore a visual indicator 707 can be shaped in the form of a camera or similar object to alert the user that video content is associated with a particular outline element 305 (and/or 805 as described in FIGS. 8-11).
Each outline element 305 may or may not have a corresponding visual indicator 707. For those outline elements 305 which may not have a visual indicator 707, such as the first outline element 305A, it is possible that a media file was not associated with the first outline element 305A for any one of numerous reasons. For example, a user could have paused or stopped the recording of a media file when creating the first outline element 305A. The user could have then activated recording of live event information to the media file when the second outline element 305B was created.
The second outline element 305B can be enclosed or circumscribed by a second visual indicator such as a highlight bar 709 to indicate the current position of an insertion point. Those skilled in the art will appreciate an insertion point corresponds to a position within an electronic document where additional data can be added or “inserted”.
Since the insertion point for the current exemplary embodiment display illustrated in FIG. 7A is on the second outline element 305B and because the second outline element 305B comprises a media link 307B (not shown) as evidenced by the visual indicator 707, the media tool bar 700 comprises a time line 715A that includes a position indicator 720A that corresponds with the relative position of the data presented by the second outline element 305B. In other words, a position indicator 720A maps or displays the relative position of the insertion point (that corresponds with the highlight bar 709) within the media file 295 associated with a current page group 300. The media tool bar 700 can further comprise additional features for manipulating a media file 295 corresponding with the current page group 300.
For example, the media tool bar can comprise a play button 725, a stop button 730, a pause button 735, a record button 740, a rewind button 745, a fast forward button 750, and a “See Playback” button 755. The corresponding functionality of the aforementioned buttons will not be discussed for buttons where the names imply the functionality of the buttons to one of ordinary skill in the art. For the “See Playback” button 755, this button can be used to “toggle on” and “toggle off” the second visual indicator 709 that comprises the highlight bar.
The time line or slider bar 715 can be manipulated by a user where the position indicator 720 can be moved backwards or forwards depending upon where a user may want to start retrieving information from a media file corresponding to the page group 300. By moving the position indicator 720A and when the “See Playback” feature is activated by the “See Playback” button 755, the corresponding insertion point will also move in a manner such that outline elements 305 corresponding with the position indicator 720 will be displayed to the user.
Play back of a media file 295 can be activated by the playback button 725, or by activating the first visual indicator 707. Activating the first visual indicators 707 can be achieved by “double clicking” with an appropriate mouse pointer or stylus. As described below with reference to FIGS. 8-11, playback can also be activated by selecting a given outline element or by providing a video file time stamp.
Referring now to FIG. 7B, this figure illustrates another exemplary display of the media tool bar 700 and an exemplary page group 300A. This figure illustrates that the first page of page group 300A is still displayed however a position of the insertion point corresponding to the second visual indicator 709 comprising the highlight bar has changed. As illustrated in this exemplary embodiment, the third outline element 305C was created after the second outline element 305B while the media player/recorder 211 was recording to the media file 295.
Therefore, the media link 307C corresponding to the third outline element 305C has a time stamp that occurs later or after the time stamp corresponding to the second outline element 305B. Accordingly, the position indicator 720 has been moved further in time along the time line or slider bar 715B relative to the position indicator 720A illustrated in FIG. 7A. However, those skilled in the art recognize that outline elements can be created out of sequence during the recording made by the media player/recorder 211.
Therefore, it is possible that the media links 307 (not visible to the user) can be in various sequences or positions on a particular page of a page group 300A. However, in the examples illustrated in FIG. 7A and 7B, the outline elements 305 were created in sequence meaning that that one outline element 305 was created after the next in a sequential fashion down the page, and, therefore, the corresponding media link comprising the time stamp also correspond to this logical sequencing.
Referring now to FIG. 7C, this figure illustrates a media tool bar 700 and a first page of a second page group instead of a first page of the first page group 300A. The position indicator 720C has been displaced relative to the position indicator 720A, 720B to inform the user that page 2 of the page group 300A has outline elements 305 that occur after and time during play back of the media file 295 relative to the outline elements 305 on the first page of the page group 300A.
FIG. 7C also illustrates that the present invention automatically navigates through pages of content within a page group 300A and across different page groups (not illustrated) when the “See Playback” button 755 has been activated. At any time during play back of the media file 295 corresponding to the current page group 300A, a user can toggle out of the “See Playback” mode by inserting content onto the current page during playback of the media file 295. Other ways to stop or to toggle out of the “See Playback” mode will be discussed in further detail below. FIGS. 7A-7C demonstrate how a second visual indicator 709 can be used to help a user navigate through a media file 295 by displaying the relative position of an outline element 305 within the media file 295.
FIGS. 8 through 11 are exemplary computer screen displays illustrating visual links between a media tool bar, page content, and the visual display of video media files or portions of video media files in a video display window, according to one exemplary embodiment of the present invention. For purposes of describing the example screen displays illustrated in FIGS. 8 through 11, assume that a user of a tablet device 250, along with an associated video media recording device 211, has recorded video media files in association with hand-written or typed notes (outline elements 802, 805a, 805b, 805c, 805d). Further, assume that video media files associated with video recordings made by the video recording device 211, in association with individual outline elements, are related and linked via media links 307, as described above with reference to FIG. 3.
Referring now to FIG. 8, this Figure illustrates a computer screen display from an electronic tablet 250, or similar computing device, with which a user may enter hand-written notes, typed notes, drawings, pictures and the like. As should be understood, illustration of embodiments of the present invention in terms of a tablet device 250 are for purposes of example as a variety of other computing devices 120 may be acceptable. According to the example screen display illustrated in FIG. 8, a number of outline elements 802, 805a, 805b, 805c, 805d, for example, notes written about an example house hunting event, are entered into a data entry area of the tablet device 250. As described above with reference to FIGS. 7A-7C, an icon 808, for example, a film reel icon, camera icon, landscape icon, or the like, may be displayed next to any of the outline elements 802, 805a, 805b, 805c, 805d for indicating that a video media file is associated with one or more of the outline elements. According to one embodiment, hovering a mouse device over a given outline element/note causes the icon 808 to appear if a video recording is associated with the hovered over element. Selection of the icon 808 causes playback of the associated video recording from a point associated the selected icon and associated outline element.
As further illustrated in FIG. 8, the presence of an audio and video recording toolbar 800 indicates that an audio and/or video recording and associated media files 295, for example, video media files are associated with one or more of the outline elements 802, 805a-805d. The media toolbar 800 is similar to the media toolbar 700 illustrated in FIGS. 7A-7C. A start button 810, a stop button 815, a pause button 820, a record button 825, a position indicator 830, a “See Playback” button 835, and an audio playback toggle 840 are provided. As illustrated in FIG. 8, the record button 825 includes a visual icon in the form of a camera for illustrating that recording is presently set for video recording. According to an embodiment of the present invention, selection of the down arrow in the button 825 deploys a dropdown menu that allows the user to select between audio only recording or video recording (which includes audio recording). If video recording is selected from the dropdown, then the button 825 will be populated with a camera icon, as illustrated in FIG. 8. If audio recording is selected from the dropdown menu, then the button 825 may be populated with an audio recording icon. Selecting (for example, clicking) the button 825 will begin recording according to the selected recording type (audio versus video/audio). The button 840 allows for selectively removing all audio or video recordings from the current page.
The position indicator 830 is similar to the position indicator 720 illustrated in FIGS. 7A-7C. The position indicator 830 illustrates a particular time stamp position of video recordings associated with one or more outline elements 802, 805a-805d. When a given video media file is presented to the user, in association with a given outline element, the time stamp position for the given video media file is presented in the position indicator 830. Additionally, the “See Playback” button 835 operates in association with video media files, as described above with reference to FIGS. 7A-7C. For example, the timestamp displayed in the position indicator 830 may be manually set to a particular timestamp, and if the “See Playback” button 835 is selected, the corresponding insertion point will move in a manner such that a given outline element 805a-805d corresponding with the manually selected position indicator will be displayed to the user, and the corresponding video media file likewise will be displayed, as described below.
Referring now to FIG. 9, according to embodiments of the present invention, upon the selection of a given insertion point in the hand-written, typed, or otherwise entered notes, text, picture, etc., a video display window 842 is displayed on top of the data entry window of the tablet device 250. According to embodiments of the present invention, the video display window 842 floats on top of the display area of the tablet device 250 and may be moved by the user about the display area of the tablet device 250 as desired. In addition, the video display window 842 may be re-sized or expanded to a full screen as desired. According to one embodiment, the video display window 842 is automatically launched by default when outline elements 802, 805a-805d are displayed where one or more of those elements is associated with corresponding video media files. However, if a user desires to hide the video display window 842, the user may select a display window hide/unhide button, illustrated immediately to the left of the “See Playback” button 835. The user may select the “X” button in the upper right hand corner of the video media toolbar 800 to hide the toolbar 800.
Referring still to FIG. 9, a video image 845 is displayed in the video display window 842 that is linked to one or more content items (e.g., outline items 802, 805a-805d) as described above with reference to FIGS. 3-7D. As should be understood by those skilled in the art, images illustrated in FIGS. 8 through 11 are for purposes for example only. As illustrated in FIG. 9, no particular outline element 802, 805a, 805b, 805c, 805d has been selected as an insertion point. According to one embodiment, the video media files displayed in the display window 842 are displayed beginning at a starting point of the associated video media file corresponding to the outline elements entered by the user. That is, according to the example illustrated in FIG. 9, the video media file is displayed to the user at the beginning of the video media file corresponding to the beginning of a first video recording as opposed to corresponding to a particular insertion point until a particular insertion point is selected.
Referring now to FIGS. 10 and 11, according to embodiments of the present invention, when a given insertion point, for example, a given outline element 805a-805d is selected, the visual indicator 809, for example, a highlighter, is displayed over the selected element and the video image associated with the corresponding video media file is automatically played in the display window 842 beginning at a date/time position of the associated video media file that is linked to the selected outline element. Additionally, the date/time position of the displayed video image is indicated in the position indicator 830. For example, as illustrated in FIG. 10, the note “Very nice kitchen” 805a is selected by the user as an insertion point. Consequently, the video image 850 corresponding to a video media file linked to the note 805a is displayed and played in the display window 842, and the corresponding time position is displayed in the position indicator 830. As illustrated in FIG. 11, when the note “Master bedroom has a good view” 805d is selected by the user, the corresponding video image 855 associated with a video media file linked to the note 805d is displayed and played in the display window 842, and the corresponding date/time stamp is illustrated in the position indicator 830.
According to an embodiment of the present invention, the user may selectively start a display of the video media files associated with the elements 802, 805a-805d from the beginning of the first media file. For example, the user may start the playing of a selected video recording from the beginning, for example, a video recording taken of a house during a house hunting visit where the user video records various rooms of the example house, and whereby the user makes notes at various positions during the video recording, as described above with reference to FIGS. 2 through 7D. During playback of the video recording, as positions in the played back video recording are displayed in the display window 842 corresponding to particular outline elements or notes 802, 805a-805d, the associated outline elements are highlighted with the visual indicator 809, as illustrated in FIGS. 10 and 11. According to one embodiment, if a period of video recording time elapses between corresponding outline elements, the visual indicator (highlighter) 809 will remain on the last associated outline element until a next corresponding outline element is reached.
Alternatively, as described above, the user may select video playback from a point associated with a selected note or outline element by selecting an icon 808 displayed next to any note/element associated with a video recording. Upon selection of a given icon 808, the video media file associated with the selected icon 808 is automatically displayed and played in the display window 842. Additionally, as illustrated in FIG. 11, the user may manually set the time stamp position in the position indicator 830. Upon selection of the “See Playback” button 835, the video image associated with the selected time stamp position is automatically displayed and played, and if the played position is associated with a given note/outline item 805a-805d, that item will receive the visual indicator 809.
Exemplary Method for Linking Page Content With A Media File
Certain steps in the processes described below must naturally precede others for the present invention to function as described. However, the present invention is not limited to the order of the steps described if such order or sequence does not alter the functionality of the present invention. That is, it is recognized that some steps may be performed before or after other steps or in parallel with other steps without departing from the scope and spirit of the present invention.
Referring now to FIG. 12, this figure illustrates an exemplary method 1200 for linking page content with a media file 295. Method 1200 starts with decision step 1205 in which it is determined whether a media record command is received by the document-editing module 205. As noted above, a media record command can be activated with the record button 725A. However, other ways of activating the media record command such as from a drop down menu and other techniques are not beyond the scope and spirit of the present invention.
If the inquiry to decision step 1205 is negative, then the “no” branch is followed back to step 1205 for a continuous loop. If the inquiry to decision step 1205 is positive, then the “yes” branch is followed to step 1210 in which a location of the current insertion point is identified relative to an outlined element 305. In this step, the document-editing module determines what particular outline element 305 and its corresponding page in a page group 300 have been selected by a user.
Next, in decision step 1215, the document-editing module 205 determines if the insertion point is linked to an existing media file. If the inquiry to decision step 1215 is positive, the “yes” branch is followed to step 1220 in which a document-editing module 205 instructs the media services of the windows operating system 135 to append information to the media file linked to the current insertion point.
If the inquiry to decision 1215 is negative, then the “no” branch is followed to decision step 1225. In decision step 1225, the document-editing module 205 determines if the current page selected by a user is linked to a media file. If the inquiry to decision step 1225 is positive, then the “yes” branch is followed to step 1230 in which a document-editing module 205 instructs media services of the window operating system 135 to append media input to the media file linked to the current selected page.
If the inquiry to decision step 1225 is negative, then the “no” branch is followed to step 1235. In step 1235, a document-editing module 205 instructs media services of the windows operating system 135 to create a media file with a current page group title as the title for the media file and having a specific global universal identifier (GUID).
In step 1240, a document-editing module 205 displays the first visual indicator 707 such as the “camera” icon (not shown) adjacent to the outlined element 305, 805a-805d corresponding to the insertion point to indicate a media file corresponds with the current outline element. In routine 1250, the document-editing module 205 creates and saves a media link 307 comprising the time- stamp 310 and GUID 315 to the current page file and corresponding to the current selected outline element 305. Further details of routine 1250 will be discussed below with respect to FIG. 13.
Next, in decision step 1255, the document-editing module 205 determines whether a creation content event has been detected. A creation content event can comprise any one of or a combination of typewritten text, handwritten text in the form of electronic ink, a drawing in the form of electronic ink, and the pasting of material with an electronic clip board. Other creation content events are not beyond the scope and spirit of the present invention.
According to one exemplary embodiment, a creation event generally occurs when a user creates a new outline element with electronic ink or typewritten text. This means that the user starts a new line of electronic ink or a new line of typewritten text by hitting a hard return. Alternatively, a user could select a different page to start generating handwritten notes in the form of electronic ink or typewritten notes. Such navigation to a different page could also constitute a creation content event.
If the inquiry to decision step 1255 is positive, then the “yes” branch is followed back to step 1210 in which the document-editing module 205 identifies a location of the insertion point relative to a current selected outline element. If the inquiry to decision step 1255 is negative, then the “no” branch is followed to decision step 1260.
In decision step 1260, the document-editing module 205 determines if a stop or pause command has been received. For example, the document-editing module monitors the media tool bar 700, 800 to determine if the stop button 730, 815, or pause button 735, 820 has been activated. If the inquiry to decision step 1260 is positive, then the “yes” branch is followed to step 1270 in which the document-editing module issues a command to the media services of the widows operating system 135 to further instruct the media player/recorder 211 to stop recording or creating the current media file 295. Next, in step 1275, the process returns to decision step 1205.
If the inquiry to decision step 1260 is negative, then the “no” branch is followed to decision step 1280 in which the document-editing module 205 determines if a close document editor command has been received. If the inquiry to decision step 1280 is positive then the “yes” branch is followed in which the process ends. If the inquiry to decision step 1280 is negative, then the “no” branch is followed back to decision step 1255 in which a document-editing module 205 determines if a creation content event has been detected.
Referring now to FIG. 13, this figure illustrates an exemplary sub-method for routine 1250 of FIG. 12 in which the document-editing module 205 creates and saves a media link 307 to the currently active page of a page group 300. Step 1305 is the first step of the sub-method 1250 in which the document-editing module receives a time stamp from the media player/recorder 211 for the current media being recorded by the media player/recorder 211. Next, in step 1310, the document-editing module 205 obtains the global universal identifier (GUID) for the current media file from the media player/recorder 211.
In step 1315, the document-editing module 205 saves the media link 307 comprising the time stamp 310 and GUID 215 to the page file for the current outline element that is active. Next, in step 1320, the process returns to decision step 1255 of FIG. 12.
Referring now to FIG. 14, this figure illustrates an exemplary method 1400 for displaying page content associated with a media file 295. Step 1405 is the first step in the process in which a document-editing module 205 determines the position of current insertion point relative to an entire length of a media file 295. In this step, the document-editing module 205 can look for the closest outline element 305, 805a-805d that has a media link 307.
With this media link 307, the document-editing module 205 can calculate a position of a current insertion point if the current insertion point and corresponding outline element has a media link 307 to the media file 295. If the current outline element and current insertion point do not have a media link 307, then the document-editing module 205 usually cannot determine the position of the current insertion point relative to the entire length of the media file 295.
In step 1410 the document-editing module 205 can display the media tool bar 700, 800 indicating the position of the current insertion point relative to the length of the media file 295. According to this step, the document-editing module can display the position indicator 720 at an appropriate position on the time line 115 that comprises a slider bar. However, alternative ways of graphically displaying the relative position or the current insertion point with respect to a corresponding media file are not beyond the scope and spirit of the present invention. For example, the position of the current insertion point could be indicated with a bar graph indicating a percentage complete of a corresponding media file.
In decision step 1415, the document-editing module 205 can determine whether a play command has been received. In this step, the document-editing module 205 can monitor input that can be received with the media tool bar 700, 800. Further, the document-editing module can determine if a play command has been received through other ways such as a drop down menu present within the document-editing module 205 (not illustrated).
In routine 1420, the document-editing module 205 can build an index of media links for the current page group 300 that is active. Further details of routine 1420 will be discussed below with respect to FIG. 15.
Next, in decision step 1425, the document-editing module 205 can determine whether visual indicators such as the highlight bar 709, 809 are desired. In other words, a document-editing module step 205 can determine whether a user has activated the “See Playback” button 755, 835. If the inquiry to decision step 1425 is negative, then the “no” branch is followed to decision step 1435. If the inquiry to decision step 1425 is positive, then the “yes” branch is followed to routine 1430 in which the document-editing module 205 can display visual indicators such as the highlight bar 709, 809 adjacent to or circumscribing the outline elements linked to the current media file 295. Further details of routine 1430 will be discussed below with respect to FIG. 12.
Next, in decision step 1435, it is determined whether this is a first play of a media file 295. If the inquiry to decision step 1435 is positive, then the “yes” branch is followed to decision step 1440 in which play of the media file 295 is started at a position corresponding to the media link associated with the current insertion point. The process then continues back to decision step 1425. If the inquiry to decision step 1435 is negative, then the “no” branch is followed to step 1445.
In step 1445, play back of the current media file in the video display window 842 is continued. Next, in decision step 1450, the document-editing module 205 determines whether an event has occurred in which the visual indicators such as the highlight bar 709, 809 should be stopped. Exemplary events which are monitored by the document-editing module 205 in this step can include, but are not limited to, creation of a new outline element, navigating to a different page or different page grouping, cutting or pasting of material to or from a current page. Other events that can stop the presentation of the link between the page content and media file are not beyond the scope and spirit of the present invention.
If the inquiry to decision step 1450 is positive, then the “yes” branch is followed to step 1455 in which the presentation of visual indicators by the document-editing module 205 is stopped. If the inquiry to decision step 1450 is negative, then the “no” branch is followed to decision step 1460 in which the document-editing module 205 determines if a start visual indicators command has been issued. In other words, the document-editing module determines if the “See Playback” command button 755 has been activated. If the inquiry to decision step 1460 is positive, then the “yes” branch is followed back to routine 1430. If the inquiry to decision step 1460 is negative, then the “no” branch is followed to decision step 1465.
In decision step 1465, the document-editing module 205 determines if a close document editor, stop media playback, or pause media playback command has been issued. If the inquiry to decision step 1465 is negative, then the “no” branch is followed back to step 1445 in which playback of the media is continued. If the inquiry to decision step 1465 is positive, then the “yes” branch is followed to step 1470 in which the document-editing module 205 stops displaying the second visual indicators comprising the highlight bars 709, 809 and the document-editing module 205 issues a command to the media services of the window operating system 135 to stop playback of the media file 295. The process then ends.
Referring now to FIG. 15, this figure illustrates an exemplary routine or sub-method 1420 for building an index of media links 307 for a current page group 300. The first step of routine 1420 is step 1505 in which the document-editing module 205 accesses the current page group file 290. In this step 1505, the document-editing module 205 can access each page of the page group 300. Next, in step 1510, the document-editing module 205 can identify each outline element in each of the page files that has a media link comprising a time stamp 310 and a GUID 315.
In step 1515, the media link 307 for a current outline element 305 can be added to the index in a relative position based upon the time stamp 310 of the media link 307. The process then returns to step 1425 of FIG. 14.
Referring now to FIG. 16, this figure illustrates an exemplary routine or sub-method 1430 of FIG. 14 for displaying visual indicators such as highlight bars 709, 809 adjacent to the outline element identified in the index. Decision step 1605 is the first step of routine 1430 in which it is determined whether this is a first iteration of accessing the index. If the inquiry at decision step 1605 is negative, then the “no” branch is followed to routine 1620. If the inquiry to decision step 1605 is positive, then the “yes” branch is followed to step 1610.
In step 1610, the document-editing module 205 displays the second visual indicator such as the highlight bar 709, 809 adjacent to or overlaying the outline element 305, 805a-805d corresponding to the current insertion point. Next, in step 1615, the document-editing module 205 issues a command to the media services of the widows operating system 135 to start play back of the media file corresponding to the media link of the current insertion point. The process then returns to step 1435 of FIG. 14.
In routine 1620, the document-editing module 205 identifies the outline element in the index that is nearest to the current time stamp being received from the media player/recorder 211. Further details of routine 1620 will be discussed below with respect to FIG. 13.
In step 1625, the document-editing module 205 displays the second visual indicator comprising the highlight bar 709, 809 adjacent to or surrounding the outline element identified in the index. The process then returns to step 1435 of FIG. 14.
Referring now to FIG. 17, this figure illustrates an exemplary sub-method or routine 1620 for identifying an outline element 305 in the index that is nearest to the current time stamp 310 being evaluated by the document-editing module 205. A first step of routine 1620 and step 1705 in which the document-editing module 205 receives the current time stamp 310 of the media file 295 being played.
In step 1710, the document-editing module 205 compares the time stamp 310 of the current media link 307 of a current insertion point with a media link 307 of the next media link 307 in the index.
In decision step 1715, a document-editing module determines 205 if the comparison between the current media link 307 and a subsequent media link 307 in the index meets a predetermined threshold. In other words, in decision step 1715, the document-editing module 205 can determine if the current media link 307 being evaluated meets a predetermined period of time.
In other words, it is recognized that when notes are created from presented information, notes typically lag the presented live event information by a certain amount of time such as fifteen seconds. However, the present invention is not limited to this predetermined threshold of fifteen seconds and other values smaller or larger than fifteen seconds are not beyond the scope and spirit of the present invention. If the inquiry to decision step 1715 is negative, then the “no” branch is followed to step 1720 in which playback of the current media file is continued. The process then returns to step 1705.
If the inquiry to decision step 1715 is positive, then the “yes” branch is followed to decision step 1725 in which the document-editing module 205 determines if the current media link 307 in the index has more than one corresponding outline element 305. In other words, the document-editing module 205 determines if a current media link 307 may be associated with more than one line of electronic ink or typewritten text. If the inquiry to decision step 1725 is negative, then the “no” branch is followed to decision step 1740. If the inquiry to step 1725 is positive, then the “yes” branch is followed to decision step 1730.
In decision step 1730, the document-editing module 205 determines if the multiple outline elements 305 associated with the current media link 307 are on different pages. If the inquiry to decision step 1730 is negative, then the “no” branch is followed to step 1732 in which the display of multiple outline elements 305 on a same page is continued. Next, in step 1734, the process returns to step 1625 of FIG. 16.
If the inquiry to decision step 1730 is positive, then the “yes” branch is followed to step 1735 in which a document-editing module 205 only identifies for display the closest outline element 305 relative to the current page. In other words, the document-editing module 205 drops other outline elements 305 that are on different pages relative to an outline element that 305 is present on a current page that is active.
In decision step 1740, the document-editing module 205 determines if a subsequent media link 307 after the current media link 307 being evaluated is on a new page. In other words, the document-editing module 205 is determined if the current media link 307 is a random note on a random page that is out of sequence with the current presentation of visual indicators. The present invention is designed to minimize page flipping and to minimize random navigation between pages for isolated notes that may have been added during the recording of information by a user.
If the inquiry to decision step 1740 is negative (meaning that more than one media link exists on the next page corresponding to the current media link 307), the “no” branch is followed to step 1770. If the inquiry to decision step 1740 is positive, then the “yes” branch is followed to decision step 1445.
In decision step 1745, it is determined if the current media link 307 is on a new page is the only media link 307 on the new page. In other words, the document-editing module 205 is trying to determine the relative importance of a random note as will be evidenced from the decision steps that follow this decision step. If the inquiry to decision step 1745 is negative (meaning that there is more than one media link on the new page containing the current media link) the “no” branch is followed to step 1760.
If the inquiry to decision step 1745 is positive, then the “yes” branch is followed to decision step 1750 in which the document-editing module 205 determines if the current media link 307 on the new page refers to a page that was previously viewed or displayed to a user. If the inquiry to decision step 1750 is negative, then the “no” branch is followed to step 1760. If the inquiry to decision step 1750 is positive, then the “yes” branch is followed to step 1755 in which the document-editing module 205 skips the current media link 307 and proceeds back to step 1720 in which play back of the media file 295 is continued.
In step 1760 the time stamp 315 of the current media link 307 is compared with the time stamp 315 of a subsequent media link 307. Next, in decision step 1765, the document-editing module 205 determines if the comparison between the time stamps 315 of media links 307 meets a predetermined threshold. In other words, the document-editing module is determining if there could be additional notes on the page containing the media link that may not have media links associated with the media file 295.
If the time stamp 315 indicates that the current media link is referring to an outline element 305 that is very short, then the document-editing module 205 will skip the current media link 307. That is, if the inquiry to decision step 1765 is negative, then the “no” branch will be followed to step 1755 in which the current media link is skipped. If the inquiry to decision step 1765 is positive, then the “yes” branch is followed to step 1770 in which a document-editing module 205 continues with identifying the current media link 307 for display. In step 1775, the process returns to step 1625 of FIG. 16.
Alternate Embodiments (Not Illustrated)
When a user is playing back a media file and viewing the corresponding links between the media file and the page content, the user can disengage or stop the display of links while the media file is played if the user attempts to insert new page content during this play back. According to an alternate exemplary embodiment, the document-editing module 205 can create a media link for this added material made during playback. In this way, during a second playback, the additional material added by the user could be displayed with an appropriate visual indicator 709, 809 to demonstrate the newly formed media link with the media file.
Conclusion
Accordingly, the present invention provides a method and system for linking page content with a media file such that a user can easily navigate between the page content and the media file as necessary. The present invention also links page content with a media file where visual indicators are provided to allow a user to see the connection between the written word and the recorded spoken word in a media file. The invention also links page content with a media file such that a user can point to page content and the corresponding recorded medium will be synchronized with the selected page content.
It should be understood that the foregoing relates only to illustrative embodiments of the present invention, and that numerous changes may be made therein without departing from the spirit and scope of the invention as defined by the following claims.

## Claims

1. A computer-readable medium on which is stored computer-executable instructions which when executed by a computer perform a method for linking page content with a video media file comprising:
recording video media in the video media file;
receiving the page content in an electronic document;
receiving a time stamp during recording of the video media file;
generating a video media link comprising the time stamp;
storing the video media link adjacent to the page content in a document file;
identifying a position of an insertion point within the page content in the electronic document;
determining whether the insertion point is linked to one of the following: the video media file and another media file;
appending media input at the insertion point to any media file linked to the insertion point in response to determining that the insertion point is linked to one of the following: the video media file and the another media file;
in response to determining that the insertion point is not linked to any media file, determining whether a current page selected is linked to one of the following: the video media file and the another media file; and
in response to determining that the current page selected is linked to one of the following: the video media file and the another media file, appending media input at the insertion point to any media file linked to the current page.

2. The computer-readable medium of claim 1, further comprising receiving a global unique identifier corresponding to the video media file, and wherein generating the video media link further comprises generating the video media link comprising the time stamp and the global unique identifier.

3. The computer-readable medium of claim 1, wherein receiving the page content in an electronic document further comprises receiving at least one of electronic ink, typed text, a drawing, and information pasted from an electronic clipboard.

4. The computer-readable medium of claim 1, further comprising displaying a visual indicator in association with the page content to signify that the video media link has been generated for the page content.

5. The computer-readable medium of claim 1, wherein receiving the time stamp during recording of the media file comprises receiving the time stamp associated with a time of receipt of an associated page content in the electronic document.

6. The computer-readable medium of claim 1, wherein appending the media input at the insertion point to any media file linked to the current page comprises appending the media input wherein the insertion point corresponds to a position within the electronic document where additional data can be added.

7. A method for linking page content with a video media file and for displaying links visually, comprising:
linking the page content in an electronic document to a portion of the video media file;
playing the video media file beginning at a portion of the video media file that is linked to the page content;
identifying a position of an insertion point within the page content in the electronic document;
determining whether the insertion point is linked to one of the following: the video media file and another media file;
appending media input at the insertion point to any media file linked to the insertion point in response to determining that the insertion point is linked to one of the following: the video media file and the another media file;
in response to determining that the insertion point is not linked to any media file, determining whether a current page selected is linked to one of the following: the video media file and the another media file;
in response to determining that the current page selected is linked to one of the following: the video media file and the another media file, appending media input at the insertion point to any media file linked to the current page, wherein the insertion point corresponds to a position within the electronic document where additional data can be added; and
displaying a visual indicator in association with the page content.

8. The method of claim 7, further comprising continuing displaying the visual indicator in association with the page content until a next linked portion of the video media file is reached during playing the video media file, and when a next linked portion of the video media file is reached, displaying a next visual indicator in association with a next page content linked to the next linked portion of the video media file.

9. The method of claim 8, wherein the video media link comprises at least one of a time stamp and a global unique identifier corresponding to a linked portion of the video media file.

10. The method of claim 9, wherein displaying the visual indicator further comprises highlighting the page content that is linked to a displayed portion of the video media file.

11. The method of claim 7, further comprising receiving an indication of navigating through one or more pages of the electronic document as the video media file is being played.

12. The method of claim 11, wherein receiving a selection of a given page content from the one or more pages of the electronic document causes a display of a portion of the video media file that is linked to a selected given page content.

13. The method of claim 7, further comprising
receiving an indication of a time stamp associated with a portion of the video media file; and
automatically playing the video media file beginning at the portion of the video media file associated with the time stamp.

14. The method of claim 13, further comprising displaying the visual indicator in association with the page content in the electronic document that is linked to the portion of the video media file associated with the time stamp.

15. A method for linking at least one page content item with a video media file and for displaying links visually, comprising:
linking the at least one content item of an electronic document to corresponding portions of the video media file;
playing the video media file;
identifying a position of an insertion point within the at least one page content item in the electronic document;
determining whether the insertion point is linked to one of the following: the video media file and another media file;
appending media input at the insertion point to any media file linked to the insertion point in response to determining that the insertion point is linked to one of the following: the video media file and the another media file;
in response to determining that the insertion point is not linked to any media file, determining whether a current page selected is linked to one of the following: the video media file and the another media file;
in response to determining that the current page selected is linked to one of the following: the video media file and the another media file, appending media input at the insertion point to any media file linked to the current page, wherein the insertion point corresponds to a position within the electronic document where additional data can be added; and
highlighting a given content item in the electronic document as a corresponding portion of the video media file plays.

16. The method of claim 15, further comprising continuing highlighting the given content item in the electronic document after the corresponding portion of the video media file plays until a next portion of the video media file plays that is linked to a next given content item, and then highlighting the next given content item in the electronic document.

17. The method of claim 16, further comprising
displaying the electronic document in a computer-generated display area; and
playing the video media file in a video display window displayed in the computer-generated display area in proximity to the one or more content items of the electronic document to corresponding portions of the video media file.

18. The method of claim 17, further comprising displaying a video media tool bar in the computer-generated display area for controlling operation of the video display window and for controlling playing of the video media file.

19. The method of claim 18, further comprising allowing the video display window to be moved on the computer-generated display window relative to the electronic document.

20. The method of claim 18, further comprising allowing the video display window to be selectively hidden from view during play of the video media file.