Abstract:
A Skqueak™ is an interactively created electronic memo/message that combines a voiceover with user-interaction elements on a selected background. The background could be images, sequence of images from a video, entire video, files such as documents or pre-canned templates. The user inter-action elements are sketch animations, text animations, symbols, shapes, emoticons, image transformation events (pan, zoom, rotation etc.). Skqueak™ also denotes the application that allows the creation of a Skqueak™. Skqueak™ also represents a web service available at www.skqueak.com that allows the creation, viewing, storing, sharing, searching, annotating, and manipulation of Skqueaks.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims the benefit of U.S. provisional application Ser. No. 61/511,393, which was filed on 25 Jul. 2011. 
     
    
     STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH 
       [0002]    Not Applicable. 
       BACKGROUND OF THE INVENTION 
       [0003]    Currently there are many different methods by which people communicate electronically in non real-time or quasi real-time. The targeted recipient could be another individual (peer to peer), a group of individuals (peer to many) or the public at large (broadcast). The various methods are listed below from references listed in the Appendix [1]. 
         [0000]    Voicemail: Voicemail (also known as voice-mail, voice message, or voice bank) is a computer based system that allows users and subscribers to exchange personal voice messages; to select and deliver voice information; and to process transactions relating to individuals, organizations, products and services, using an ordinary telephone. The term is also used more broadly to denote any system of conveying stored telecommunications voice messages, including using an answering machine. Most cell phones services offer voicemail as a basic feature, and many land line phones and corporate PBXs include voicemail services.
 
Email: Electronic mail, commonly called email or e-mail, is a method of exchanging digital messages from an author to one or more recipients. Modern email operates across the Internet or other computer networks. Today&#39;s email systems are based on a store-and-forward model. Email servers accept, forward, deliver and store messages. Neither the users nor their computers are required to be online simultaneously; they need to connect only briefly, typically to an email server, for as long as it takes to send or receive messages. The messages are conveyed using text with attachments which can be other documents, pictures or video.
 
SMS (Short Message Service): It is the text messaging service component of phone, web or mobile communication systems that, using standardized communication protocols, allows the exchange of short text messages between fixed line or mobile phone devices. SMS text messaging is one of the most widely used applications in the world. Most SMS messages are mobile-to-mobile text messages though the standard supports other types of broadcast messaging as well.
 
MMS (Multimedia Messaging Service): It is a standard way to send messages that include multimedia content to and from mobile phones. It extends the core SMS (Short Message Service) capability that allowed exchange of text messages only up to 160 characters in length.
 
Text Messaging, or Textinq: This refers to the exchange of brief written text messages between a fixed-line phone or mobile phone and fixed or portable devices over a network. While the original term (see below) was derived from referring to messages sent using the Short Message Service (SMS) originated from radio telegraphy, it has since been extended to include messages containing image, video, and sound content (known as MMS messages). Text messages can be used to interact with automated systems such as ordering products and services from mobile phones or participating in contests. Advertisers and service providers use texts to notify mobile phone users about promotions, payment due dates and other notifications that can usually be sent by post, e-mail or voicemail.
 
Webcast: A webcast is a media presentation distributed over the Internet using streaming media technology to distribute a single content source to many simultaneous listeners/viewers. A webcast may either be distributed live or on demand. Essentially, webcasting is “broadcasting” over the Internet.
 
Screencast: A screencast is a digital recording of a computer screen output, also known as a video screen capture, often containing audio narration. The term screencast compares with the related term screenshot; whereas screenshot is a picture of a computer screen, a screencast is essentially a movie of the changes over time that a user sees on a computer screen, enhanced with audio narration.
 
Podcast: A podcast (or non-streamed webcast) is a series of digital media files (either audio or video) that are released episodically and often is downloaded through web syndication. The word replaced “webcast” in common use with the success of the iPod and its role in the rising popularity and innovation of web feeds. The mode of delivery differentiates podcasting from other means of accessing media files over the Internet, such as direct download, or streamed webcasting. A list of all the audio or video files currently associated with a given series is maintained centrally on the distributor&#39;s server as a web feed, and the listener or viewer employs special client application software known as a podcatcher that can access this web feed, check it for updates, and down-load any new files in the series. This process can be automated so that new files are downloaded automatically. Files are stored locally on the user&#39;s computer or other device ready for offline use, giving simple and convenient access to episodic content.
 
RSS Feeds: RSS often dubbed Really Simple Syndication is a family of web feed formats used to publish frequently updated works—such as blog entries, news headlines, audio, and video—in a standardized format. An RSS document (which is called a “feed”, “web feed”, or “channel”) includes full or summarized text, plus metadata such as publishing dates and authorship. RSS feeds benefit publishers by letting them syndicate content automatically. A standardized XML file format allows the information to be published once and viewed by many different programs. They benefit readers who want to subscribe to timely updates from favored websites or to aggregate feeds from many sites into one place. RSS feeds can be read using software called an “RSS reader”, “feed reader”, or “aggregator”, which can be web-based, desktop-based, or mobile-device-based. The user subscribes to a feed by entering into the reader the feed&#39;s URI or by clicking a feed icon in a web browser that initiates the subscription process. The RSS reader checks the user&#39;s subscribed feeds regularly for new work, downloads any updates that it finds, and provides a user interface to monitor and read the feeds. RSS allows users to avoid manually inspecting all of the websites they are interested in, and instead subscribe to websites such that all new content is pushed onto their browsers when it becomes available.
 
Social Media: A popular form of communicating is the use of social media by posting text, pictures and video on social networking sites such as Facebook, Twitter, Youtube, Flickr etc. The term social media refers to the use of web-based and mobile technologies to turn communication into interactive dialogue. Andreas Kaplan and Michael Haenlein define social media as “a group of Internet-based applications that build on the ideological and technological foundations of Web 2.0, and that allow the creation and exchange of user-generated content.” Social media are media for social interaction, as a superset beyond social communication, but mainly still communicating interactively using ubiquitously accessible and scalable communication techniques. Social media can take on many different forms, including Internet forums, weblogs, social blogs, microblogging, wikis, podcasts, photographs or pictures, video, rating and social book-marking. By Technologies include: blogs, picture-sharing, vlogs, wall-postings, email, instant messaging, music-sharing, crowdsourcing, and voice over IP, to name a few. Many of these social media services can be integrated via social network aggregation platforms.
 
         [0004]    Even though there are a variety of methods to communicate, in each of them the various media elements and user-interaction events are very loosely coupled, and in some cases there is lack of any form of correlation. While it is possible to generate a video with user interaction and send it by email or upload it to Youtube, the equipment required to compose it is fairly elaborate and expensive. For example, Khan Academy [8] uses Camtasia Recorder ($200), SmoothDraw3 (Free) and a Wacom Bamboo Tablet ($80) on a PC. The other issues is that while this might be reasonable to broadcast, it might not be a suitable peer-to-peer mode of communication due to issues involved with encoding and decoding of video. Videos take a large amount of space so to minimize use of the communication channel bandwidth, they are compressed (encoded). However, the recipient must have the right decoder to ensure that they can consume it. This does not make it very attractive for communicating between people with different devices that may not be compatible with each other. In addition, resources are required to encode the video which must be done either on the client or the server when uploaded. One other disadvantage of video is that the various elements in it: audio, backgrounds, and user interaction events are flattened into a single object (the video itself); and, to decrease costs and increase speed of upload, the resolution is minimized as much as possible. In doing this the various other elements are not available at full resolution to the recipient for them to either collaborate or re-edit. 
         [0005]    Applicants have developed an invention called Skqueak™ that does not have many of the restrictions listed above. A Skqueak™ is an interactively created electronic compact memo/message that combines a voiceover with user-interaction elements on a selected background. The background could be images, videos or pre-canned templates. The user inter-action elements are sketch animations, text animations, symbols, shapes, emoticons, image transformation events (pan, zoom, rotation etc.). A Skqueak™ differs from various communication methods listed above in that it is an integrated message where the user interaction (sketching, texting, image transformation) and the media (audio, video) share a common timeline (correlated) as opposed to including various elements as attachments (uncorrelated). In this disclosure, the term Skqueak™ has multiple meanings. Skqueak™ refers to an integrated message which is stored in a very compact format relative to a video and maintains all its elements at the original resolution in which the message was created. Skqueak™ also denotes the native application that allows the creation of a Skqueak™. Skqueak™ also represents a web service available at www.skqueak.com that allows the creation, viewing, storing, sharing, searching, annotating, and manipulation of Skqueaks. Since the Skqueaks are served from a centralized location using code downloaded to a browser, they are visible from a number of devices, even if they do not have a native application installed. 
         [0006]    Various other prior art systems are known and used for communication using an integrated message. One such system is described in [2] and [3]. However, they have the following issues: They are intended primarily for real-time communication. Each document is created only on one user unit so the permanent log is the script log itself. There is no merging of script logs from various sources. Further, media need not be captured simultaneously with the sketching activity. In fact, with Skqueak it is possible to setup an elaborate sketch by keeping the time element stationary and then starting the recording. Further, with Skqueak, it is also possible to re-record the Voiceover. 
         [0007]    Various commercial systems exist [4][5][6][7][8] and are listed in the Appendix that allow creation of an integrated sketch: Following are the features that exist in Skqueak that are not available in any of those systems: 
         [0008]    The timeline can be stopped and started any number of times. 
         [0009]    Capture of image transformation events such as pan and zoom. 
         [0010]    Ability to re-record voiceover. 
         [0011]    Filtering of sketching activity. 
         [0012]    Ability to take in video, in addition to images and pre-canned backgrounds. 
         [0013]    Ability to use one or more backgrounds to tell a story. 
         [0014]    Sketching can be performed when the timeline is stationary. 
       BRIEF SUMMARY OF THE INVENTION 
       [0015]    A Skqueak is an interactively created electronic memo/message that combines a voiceover with user-interaction elements on a selected background. The background could be images, sequence of images from a video, entire video, files such as documents or pre-canned templates. The user inter-action elements are sketch animations, text animations, symbols, shapes, emoticons, image transformation events (pan, zoom, rotation etc.). A Skqueak is created from a native application that is downloaded onto a user computer, mobile or handheld device. Alternatively, it could be temporary software that is downloaded to a user computer, or mobile device. For example, Javascript or Flash code can be downloaded to a browser. The user first selects a background (or blank page) to interact with. This is recorded as an event at time zero. A record button is available, which when activated, starts the timeline and records audio in conjunction with various user interaction events. All events are timestamped with the audio&#39;s current timestamp. When the record button is deactivated, audio is frozen (no longer captured) but all other the events continue to be captured with the current, frozen timestamp. The user can start and stop recording as many times as he/she wants during the creation process. During the creation process, all of the captured event objects are serialized to flash memory. The Skqueak can then be uploaded to a server. This can be viewed on another user&#39;s computer, mobile or handheld devices either using the viewer of the same native application that was used to create the Skqueak, or by down-loading temporary software such as Javascript or Flash to a browser. A Skqueak&#39;s timeline consists of a set of key-value data which can be represented using the JSON format. In this way, external viewers can degrade gracefully and maintain a degree of forward and backward compatibility using the viewing software. Missing keys can be defaulted based on the known version number, and extra keys can be ignored. In addition, any given key that is unknown can provide an alternate set of key-value instructions to the viewing software to approximate the unknown key, or to warn the user that a particular feature is missing. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS 
         [0016]    The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of the preferred embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily drawn to scale, emphasis being placed upon illustrating the principles of the invention. 
           [0017]      FIG. 1 . Elements of a Skqueak 
           [0018]      FIG. 2 . Background Selection 
           [0019]      FIG. 3 . Image Background 
           [0020]      FIG. 4 . Adding Sketch and Text 
           [0021]      FIG. 5 . Before and After a Zoom Event 
           [0022]      FIG. 6 . Creating a Skqueak 
           [0023]      FIG. 7 . Listing of Skqueaks Created 
           [0024]      FIG. 8 . Skqueak Architecture 
           [0025]      FIG. 9 . Social Networking Website 
           [0026]      FIG. 10 . Skqueak Creation Timeline 
       
    
    
       [0027]    Corresponding reference numerals indicate corresponding parts throughout the several figures of the drawings. 
       DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0028]    A description of the preferred embodiments of the invention is described below: The present invention is directed at systems and methods of providing a communication means that combines a voiceover with user-interaction elements on a selected background. This particular embodiment is called a Skqueak. 
       Elements of a Skqueak 
       [0029]    The elements of a Skqueak are shown in  FIG. 1 . 
       1. Background: 
       [0030]    An image is selected from one of the sources ( FIG. 2 ) listed below, if the device supports it. Where applicable, a Uniform Resource Identifier of the source is stored in the timeline so that users can refer to the original source material. 
         [0031]    Snap an image from the Camera 
         [0032]    Select an image from the device Photo Library ( FIG. 3 ) 
         [0033]    Image from Google Map 
         [0034]    Image or sequence of images elected from a movie in the device Movie Library 
         [0035]    Start with a Pre-Canned template, a variety of stock templates will be provided such as a white paper, white board, black board, legal paper, engineering paper etc. 
         [0036]    Video from Movie library 
       2. User Interaction Event Animation: 
       [0037]    Use the gesture interface or mouse to sketch ( FIG. 4 ). 
         [0038]    Use the gesture interface or mouse for capturing image transformation events such as pan, zoom and rotation ( FIG. 5 ). 
         [0039]    Use a real/virtual keyboard to capture text ( FIG. 4 ). 
         [0040]    Use a menu and a gesture interface/mouse to draw symbols and shapes. 
         [0041]    Start/Stop recording using the record button ( FIG. 3 ) which allows for the option of recording the process of user interaction, along with accompanying audio. Movements made to adjust the sketch or text settings will not be recorded (in the animation). 
       3. Voiceover: 
       [0042]    A voiceover allows the user to record while interacting with the background. It is also possible to re-record a voiceover synchronized to the timeline of the user-interaction animation. If the sketch already has an audio track it is can be overwritten or mixed. If the audio track exceeds the timeline of the video, then the last frame of the video is shown, while the audio continues. If the sketch was not recorded, then the voiceover occurs over the static sketched image. 
       Creating a Skqueak 
       [0043]    The user first selects a background (or blank page) to interact with ( FIG. 6 ). This is recorded as an event at time zero. A record button is available which, when activated, starts the timeline and records audio in conjunction with pinch zoom events, sketch events, pen property changes, text input events, icon add events, icon drag events, adding new backgrounds events, switching background events, and others. All events are timestamped with the audio&#39;s current timestamp. When the record button is deactivated, audio is frozen (no longer captured) but all other events continue to be captured with the current frozen timestamp. The user can start and stop recording as many times as he/she wants during the creation process. When the creation process is completed, all of the captured event objects are serialized to flash memory. 
       Playback of Skqueak 
       [0044]    During playback, the system clock fires an event periodically (synchronized with the vertical refresh rate of the display system). On this event, the audio playback object is interrogated for the current timestamp. (In the special case where there is no audio available, system time is used.) Given this timestamp, the system renders the state of the display with appropriate user interaction events; for example, a sketch animation, a text animation or an image transformation. The user can scrub the audio timeline and the appropriate display is rendered. 
       Editing a Skqueak 
       [0045]    User can rerecord the audio or get rid of the audio track altogether. 
       Upload a Skqueak 
       [0046]    Once a Skqueak has been created on a client (native application or browser) it is synchronized with the server at www.skqueak.com ( FIG. 9 ). Next, the Skqueak can be shared by users by posting a link to various social networking sites such as Facebook and Twitter, emeding code in a blog, or by sending an email or SMS. Clicking on the link enables the execution of the Skqueak player on the client browser. The users can also choose to view the Skqueaks on their mobile device via the same custom application that was used for creation. The Skqueaks are also available on www.skqueak.com, where they can be made private or public, organized into channels based on topic, and allow users to leave comments. For private channels, users can invite a list of subscribers based on the user ids of existing members, or simply based on email addresses. On getting an invitation to subscribe to a channel, the invitee can then login to the website to view the Skqueak. However, if the users are not registered, they may choose to register to view the private channel Skqueaks. Public channel Skqueaks can be viewed without registration. 
       Skqueak Architecture 
       [0047]    A Skqueak is created from a native application that is downloaded onto a user computer, mobile or handheld device. Alternatively, temporary software is downloaded to user computer, mobile, device. For example, Javascript or Flash code is downloaded to a browser. The Skqueaks are uploaded automatically in the background to the server (shown in  FIG. 8 ). This can be viewed on another user&#39;s computer, mobile or handheld devices either using the viewer of the same native application that was used to create the Skqueak, or by downloading temporary software such as Javascript or Flash to a browser from www.skqueak.com ( FIG. 9 ). 
       Timeline 
       [0048]    An example of a Skqueak creation timeline is shown in  FIG. 10 . The user first selects a background (or blank page) to interact with. This is recorded as an event at time zero. The user can then pan and zoom the image, followed by sketching and texting activity. Any sketch or text added when the timeline is stationary (clock is stopped) is not animated, which means that when the Skqueak is viewed, the final resulting sketch or text that was created during the time interval during which the timeline was stationary is shown. A record button is available, which when activated, starts the animation timeline and records audio in conjunction with pinch zoom events, sketch events, pen property changes, text input events, icon add events, icon drag events, adding new backgrounds events, switching background events, and others. All events are timestamped with the audio&#39;s current timestamp. When the record button is deactivated, audio is frozen (no longer captured) but all other the events continue to be captured with the current frozen timestamp. The user can start and stop recording as many times as he/she wants during the creation process. 
         [0049]    When the creation process is completed, all of the captured event objects are serialized to flash memory. A Skqueak&#39;s timeline consists of a set of key-value data which can be represented using the JSON format. In this way, external viewers can degrade gracefully and maintain a degree of forward and backward compatibility with viewing software. Missing keys can be defaulted corresponding to the known version number, and extra keys can be ignored. In addition, any given key that is unknown can provide an alternate set of key-value instructions to the viewing software to approximate the unknown key or warn the user that a particular feature is missing. 
       Alternate Embodiments 
       [0000]    
       
         1. In an alternate embodiment, instead of using a single image or a plurality of images, video may be used as background, with the ability of mixing and matching timelines obtained from the video and the voiceover recording, and the mixing of audio tracks from both sources. 
         2. In an alternated embodiment, pre-canned templates that are domain specific may be used. For example if a football coach is providing instruction on player formations, a football field template could be used as a background. In addition, a pre-canned template of pre-canned symbols may be made available that could be placed on the background. 
         3. In another. alternate embodiment, the background may be a content that is being served from the Internet. Due to the latencies associated with the download of the content, there may be synchronization points where the audio is paused until the background is loaded and the user is ready to interact with it. In playback mode, the user interaction events and audio are paused until the background is loaded. Alternatively, streaming techniques could be used to pre-load the background. 
         4. In an alternative embodiment, the background can be any displayable file format [13], such as those used for documents: pdf, word, notes, ppt, keynote, numbers or other formats used in various fields such as CAD, EDA etc. 
         5. In an alternate embodiment, multiple sequence of images from a video may be used as backgrounds. 
         6. In an alternate embodiment, the audio may be transcribed so as to enhance the searchability of Skqueaks by various users. In addition, the user may be able to click on a subset of the transcribed audio and be able to jump to the corresponding point in the timeline in the Skqueak. 
         7. In an alternate embodiment, curve/stroke smoothing, line detection, arc detection, corner finding algorithms known in the state of the art may be used for filtering the sketch input. 
         8. In an alternate embodiment, pattern recognition algorithms known in the state of the art [10] may be used and the sketch input may be processed to recognize various shapes, numbers, letters and symbols that may be domain specific. 
         9. In an alternate embodiment we may allow Re-Squeaking, allowing one to take a Skqueak that is already created and re-edit it. 
         10. In an alternate embodiment, a user may collaborate on a Skqueak by allowing multiple users to edit a single Skqueak with the ability to highlight the contributions of each user in the viewer. This is achieved by merging various inputs from each user on the server. 
         11. In another alternate embodiment, the users may be able to click on graphical information elements in the background in the viewer and jump to the appropriate point in the timeline in the Skqueak. 
         12. In an alternate embodiment, there may be the ability to convert a Skqueak to standard video/movie formats so that it can be uploaded to websites such as Youtube and Vimeo; or, there can be direct conversion to video/movie format at the time it is being composed. 
         13. In an alternate embodiment, there may be an association of location information with Skqueaks. 
         14. In an alternate embodiment, audio, video and image effects (transformations) may be applied to the corresponding elements in Skqueak. These transformations may be windowing, cropping, spatial, temporal, frequency, pixel or neighborhood based. 
         15. In an alternate embodiment, there may be no central server. Rather, there may be direct communication from one user client device to another user client device. 
         16. In an alternate embodiment, there may be multiple servers, each server handling a subset of users; for example, an enterprise satisfying all its employees or a medical institution its entire staff. 
         17. In an alternate embodiment, there may be no social media component associated with a subset of Skqueaks. Here, Skqueaks are used primarily as a messaging/memo service. 
         18. In an alternate embodiment, special emphasis may be placed on certain areas where the user interacts with the background; for example, darkening the rest of the background and brightening the area being emphasized relative to it, thereby achieving a spotlight effect. 
         19. In an alternate embodiment, where the background is a video clip, the spotlight can change its position by tracking a feature in each frame; for example, a baseball in a sports clip. The feature tracking is performed by using various Computer Vision techniques known in the state of the art [10]. 
         20. In an alternate embodiment, the sketch events can be snapped relative to an object in the background by detecting object features using various Computer Vision techniques known in the state of the art [10]. 
         21. In an alternate embodiment, the sketch can be snapped relative to a virtual created grid overlaid in the background. Alternatively it may be snapped relative to another sketch element that provides snapping cues. 
         22. In an alternate embodiment, the background could be any entity that can be rendered onto a display for a user to interact with, for example, a CAD model, a blueprint, 3D models, radiological images, ultrasonic images etc. Custom modes of manipulation made available to manipulate the object in 3D and the resulting projected view displayed. 
         23. In an alternate embodiment, the various sketch elements are converted to a drawing that can be imported into standard commercial packages such as Word, Pages, Powerpoint, Keynote, iMovie, Final Cut, etc. 
         24. In an alternate embodiment, an undo feature is provided so that audio recording rewinds the appropriate position while giving the user audio and visual cues that it is doing so. 
         25. In an alternate embodiment, as a user rerecords the audio of a Skqueak, he/she can control the speed of the visual playback, pausing longer in some places and playing back faster in others. 
         26. In an alternate embodiment, a user may use an audio track that is pre-recorded, or optionally mixed with the voiceover track and/or video track. 
         27. In an alternate embodiment, timestamps may have a clock frequency that is defined by the operating system; or, it may be a function of the internal clock of the device use to create a Skqueak. 
         28. In an alternate embodiment, tools may be provided for measurements to be performed on the background image. The units may be in the image coordinate system in pixels or any user defined coordinate system, with the ability to calibrate the relationship between the two coordinate frames. Several techniques are known to do this in the state of the art [10]. In addition, tools may be provided for display of the image coordinates and optionally the pixel values when using the gesture interface or mouse. The display units may also be in a user defined coordinate system if it is calibrated. 
         29. In an alternative embodiment the sketch may fade, change color or jiggle spatially as a function of time. 
         30. In an alternative embodiment the pictures may move spatially or split and reassembled in a form to make it more visually interesting. 
         31. In an alternative embodiment, multiple people may collaborate on a single Skqueak, either to make a presentation or play a game. 
         32. In an alternate embodiment, viewers can be made to rate skqueaks. 
         33. In an alternative embodiment, composers of Skqueaks are rewarded using some form of virtual currency. 
         34. In an alternative embodiment, the images can be framed, using a border. 
         35. In an alternative embodiment, the Skqueaks can be stored directly to the cloud instead of the Flash storage. 
         36. In an alternative embodiment, the Skqueak storage can begin asynchronously without either having the user initiate the save or waiting till the entire Skqueak is composed. 
         37. In an alternative embodiment the timeline and the associated media/events can be compressed and expanded either manually or automatically. 
         38. In an alternative embodiment, instead of JSON, an alternative representation such as BSON, message pack may be used. 
       
     
       APPENDIX 
       [0000]    
       
         1. Wikipedia (www.wikipedia.org) 
         2. “System and Method for Indexing, Accessing and Retrieving Audio/Video with Concurrent Sketch Activity”, U.S. Pat. No. 6,724,918. 
         3. “Concurrent Voice to Text and Sketch Processing with Synchronized Replay”, U.S. Pat. No. 7,458,013. 
         4. Showme (www.showme.com) 
         5. Sketchcast (www.sketchcast.com) 
         6. ReplayNote (www.replavnote.com) 
         7. LectureScribe (www.cs.clemson.edu/˜bcdean/Iscribe/) 
         8. AudioNote (www.luminantsoftware.com/iphone/audionote.html) 
         9. Khan Academy (www.khanacademy.org) 
         10. Learning OpenCV: Computer Vision with the OpenCV Library, Gary Bradski &amp; Adrian Kaehler, http://opencv.willowgarage.com 
         11. JavaScript Object Notation (www.json.org) 
         12. Uniform Resource Identifier (http://en.wikipedia.org/wiki/Uniform Resource Identifier) 
         13. File Formats (http://en.wikipedia.org/wiki/List of file formats)