Existing search engines may be accessible from a computer. The search engine may be used to perform queries of content found on the Internet as well as queries of other data sources such as a database. The search engine may be used to perform such queries while the computer has connectivity to a network or other data source to be searched. The search engine may include a user interface to facilitate obtaining search queries in an interactive manner. One drawback of the foregoing is that a user's computer or network used to connect the computer to the search engine or data source to be searched may be having problems. As such, when the user wants to perform a query, the computer may not have connectivity to the search engine, data source to be searched, and the like. In such instances, the user may have to access the search engine or data source at a later point in time when existing problems have been resolved in order to enter the search query, perform the search, and obtain any search results.
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Techniques are provided for capturing audio and/or image information using a capture device. The capture device includes components for performing the audio and/or image capturing, a flash memory or other form of non-volatile memory, and a button used to control the information capture operation. The capture device may be used to facilitate capturing of information when connected, as well as when not connected, to another device or application that may utilize the captured information. The captured data may be automatically downloaded from the capture device.
Features and advantages of the present invention will become more apparent from the following detailed description of exemplary embodiments thereof taken in conjunction with the accompanying drawings in which:
Referring now to
The techniques set forth herein may be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices. Generally, program modules include routines, programs, objects, components, data structures, and the like, that perform particular tasks or implement particular abstract data types. Typically the functionality of the program modules may be combined or distributed as desired in various embodiments.
Included in
The server 15 may communicate with device 12 when connected to the network 14. The server 15 may include one or more applications and associated data for use in connection with communications to device 12. For example, the server 15 may host a server portion of an electronic calendar and messaging program, and other applications. The device 12 may include a client-side application for use with the electronic calendar and messaging program which, when connected to the server 15, communications with the respective server-side application and utilizes data stored at the server 15. The device 12 may also include, for example, a search engine used to perform queries of Internet-based content.
It will be appreciated by those skilled in the art that although the device 12 is shown in the example as communicating in a networked environment, the device 12 may communicate with other components utilizing different communication mediums. For example, the device 12 may communicate with one or more components utilizing a network connection, and/or other type of link known in the art including, but not limited to, the Internet, an intranet, or other wireless and/or hardwired connection(s).
It should also be noted that although the device 12 is illustrated as having connectivity to a server 15, the techniques described herein may be used in connection with a device 12 operating standalone without external connection to a server and/or network
Referring now to
Depending on the configuration and type of user device 12, memory 22 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. Additionally, the device 12 may also have additional features/functionality. For example, the device 12 may also include additional storage (removable and/or non-removable) including, but not limited to, USB devices, magnetic or optical disks, or tape. Such additional storage is illustrated in
By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Memory 22, as well as storage 30, are examples of computer storage media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can accessed by device 12. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer readable media.
The device 12 may also contain communications connection(s) 24 that allow the computer to communicate with other devices and components such as, by way of example, input devices and output devices. Input devices may include, for example, a keyboard, mouse, pen, voice input device, touch input device, etc. Output device(s) may include, for example, a display, speakers, printer, and the like. These and other devices are well known in the art and need not be discussed at length here. The one or more communications connection(s) 24 are an example of communication media. In one embodiment, the device 12 may be connected to a touchscreen display as a user interface. As known in the art, a user selection may be made using a touchscreen device by touching a location on the screen or display surface. The foregoing may be used, for example, as an alternative to obtaining user input with another input device such as a mouse, keyboard, and the like.
In one embodiment, the device 12 may operate in a networked environment as illustrated in
One or more program modules and/or data files may be included in storage 30. During operation of the device 12, one or more of these elements included in the storage 30 may also reside in a portion of memory 22, such as, for example, RAM for controlling the operation of the user computer 12. The example of
As will be described herein, the device 12 may include one or more ports for use in connection with external devices. In one embodiment, the device 12 may be a computer and include one or more ports, such as USB ports, for use with other devices, such as USB devices. One such USB device that may be used in connection with the computer or other device 12 may be a USB device may be characterized as an audio and/or image capture device that can perform audio and/or image capture. The USB device may also be used as a storage device.
The operating system 40 may be any one of a variety of commercially available or proprietary operating systems. The operating system 40, for example, may be loaded into memory in connection with controlling operation of the user computer. One or more application programs 46 may execute in the device 12 in connection with performing user tasks and operations.
Referring now to
The server 15 may also include one or more applications 142, such as client-side applications, which may be accessed and executed when device 12 is connected to the server 15. The application 142 may perform, for example, a service, for a user of a connected device 12.
Referring now to
As described in more detail elsewhere herein in one embodiment, the capture device 104 may be a USB device. The capture device 104 may include functionality for performing audio and/or image capture. The capture device 104 may perform the audio and/or image capture in a standalone mode when the device 104 is not connected to another device, such as the computer 102. The capture device 104 may also perform the audio and/or image capture when the capture device 104 connected to another device, such as the computer 102. The captured audio and/or video information may be stored on the capture device 104. The captured information may be downloaded to the computer 102 when the capture device 104 is connected to the computer 102, such as when the capture device 104 is inserted into a communications port of the computer 102. As will be described in more detail herein, such downloading of the captured information may occur using an automated technique as well as using non-automated techniques.
What will now be described are various embodiments of the capture device 104. It should be noted that although the exemplary capture devices described herein are USB devices, it will be appreciated by those skilled in the art that the functionality described herein may be used in connection with other types of devices and is not limited for use with USB devices.
Referring now to
The microphone 214 may be used in connection with recording audio communications, such as voice or other sound recordings, which are stored on the flash memory components 208.
The device controller 204 may be used in connection with controlling components on the capture device 200. The device controller 204 may also include other circuitry for use in connection with the components, such as the microphone 214. In one embodiment, audio information may be recorded using the microphone 214. The microphone 214 may convert the sound information into electrical audio signals which are sent to the device controller 204. The controller 204 may also include components therein for performing audio processing of the received signals from the microphone 214. The controller 204 may facilitate converting the received audio signals to a digital form which is then represented and stored in an audio file in a location on the flash memory 208. The audio file may be stored, for example, in a particular location such as a default directory, folder, file, and the like. The controller 204 may also determine and store additional information about the captured audio information. The additional information may include metadata about the captured audio information. For example, in one embodiment, date and/or time information as to when the audio information is captured may be stored with the captured audio information.
The button 212 may be used to control operation of microphone 214 and facilitate recording of the audio information. In one embodiment, the button 212 may be depressed and held down in the depressed state and then released at a later point in time. Recording or capturing of the audio information may be performed while the button 212 is depressed. Once the button 212 is released, the audio recording may terminate. In a variation of the foregoing, the button 212 may also be depressed and released a first time causing audio recording to begin. Audio recording may continue until the next time the button 212 is depressed and released. In one embodiment, the audio information captured between a single instance of starting and stopping an audio recording may be included in a single audio file.
Referring now to
Components 252, 254, 256, 258, and 260 are similar, respectively, to components 202, 204, 206, 208, and 210 illustrated in
The display 266 may be used in connection with displaying the view of the image information to be captured.
In one embodiment, the image information captured between a single instance of starting and stopping an image recording may be included in a single file.
Referring now to
Referring now to
It should be noted that the functionality described herein in connection with the block diagrams for the capture device may include other components than as described herein. Additionally, it will be appreciated by those skilled in the art that the functionality described in the exemplary embodiments herein of a particular component performing processing may be performed by another component such as, for example, the audio and/or image processing of captured information.
As described elsewhere herein, the capture device may be used in connection with capturing audio and/or image information in a first standalone or offline mode. The capture device may be used, for example, in recording audio and/or image information throughout the day. At a later point, the user of the capture device may download the captured information to another device, such as a computer, for further processing. In connection with a second mode of use of the capture device, the capture device may be connected to another device, such as the computer 102 described elsewhere herein. In this latter case, the capture device may be used in connection with capturing information, such as an audio recording, while also being connected to the computer 102. In this case, the captured information may be downloaded to the computer 102 as soon as capture of the information is complete, or as the information is being captured.
The capture device may be configured to facilitate downloading of captured information to another device. In connection with the first standalone or offline mode, the capture device may be configured to facilitate automated download of previously captured information when the capture device is inserted into a port of another device, or in response to another action in connection with commencing communication with another device. In connection with the second mode when information is captured while the capture device is connected to another device, the captured information may be automatically downloaded to the other device. The captured information may be downloaded to a predetermined location on the other device, such as a file, folder, directory, and the like. The captured information may also be downloaded to another network location, such as to a server connected to the other device as illustrated in
Referring now to
The capture device may also be integrated as a component in another device 452 in which the other device may be used only for capturing information.
The shape of the device into which the capture device is integrated may be in any one of a variety of different forms, shapes and sizes and made out of a variety different materials. For example, the capture device may be included in any object such as a pen cap, embedded in a pliable or flexible material or layers thereof, a button or pin, a credit-card sized device, a keyboard, a cell phone, a computer monitor or other peripheral, and the like.
The captured information may be downloaded from the capture device using a variety of different techniques that may vary with the type of other device including the capture device. For example, a credit card-sized device may include a capture device therein for capturing image and/or audio information. The image information may be displayed on one or more surfaces of the card and provide for a card that can be customized with captured images or videos. In one embodiment, the card may also include a magnetic or other encoded strip. When the card is “swiped”, such as when the card is placed in a card reader, the captured data may be transferred from the card to yet another device, such as a computer connected to the card reader.
As described elsewhere herein, the capture device may be inserted into a port of another device, such as a computer. Processing may be performed by the other device to facilitate downloading of the captured information to the other device. What will be described is an exemplary embodiment in which the other device is a computer and the capture device is a USB device inserted into a USB port of the computer. However, the techniques described herein may be performed with respect to other devices to which a capture device is connected as well as other types of capture devices. The techniques described may utilize an event driven model. In one embodiment, a technique may be used which utilizes functionality in the operating system of the computer to present an option to a user on a menu in response to insertion of the capture device. When the USB device is inserted into the port of the computer, the USB device may identify itself via its USB descriptor as a CDROM device to utilize automated functionality in the operating system. When the USB device that identifies itself as a CDROM device is brought online, the operating system performs processing to look for a particular file or application in a predetermined location on the USB device. If such a file or application exists in the predetermined location, the operating system automatically includes the file or application in a menu of options presented to the user. The user may then select from the menu the file or application which is then launched for execution. Thus, the foregoing technique may be used to invoke an application or file on the USB device itself.
In an embodiment, another technique may be used to invoke an application on the computer or other device to which the capture device is connected. An application on the computer may be registered to receive notification of certain events, such as notification of when the USB device is inserted into the computer. The notified application may then perform processing to facilitate downloading the data from the capture device. For example, based on the USB descriptor identifying the USB device as a CDROM, the operating system may launch an associated application. The associated application may be a web browser used to obtain credential information and log into a server on the network. Processing may then be performed to download the captured information from the capture device to the server connected to the computer.
The foregoing provides for techniques that may be used in connection with automating the download of captured information from a capture device. An embodiment may additionally, or alternatively, include functionality for downloading the captured information without having an action automatically performed when the capture device is connected to the computer. For example, the user may perform options for copying the captured data from the USB device to another user-specified location, or user specified application. Additionally, the foregoing techniques may be used in an embodiment in which the computer or other device is connected to a network, as described above, or when the computer or other device operates standalone without such connectivity, such as when performing processing locally on the device to which the captured information is downloaded.
The captured information may be used in connection with any of a variety of different purposes and applications. For example, the capture device may be used in connection with capturing information for a variety of user tasks when the user may be offline or not have connectivity to the particular application or another device, such as a computer, which utilizes the captured information. The capture device may be used to capture information ranging from, for example, user search queries, a grocery list, daily food intake or exercise, dictation of electronic documents, email, electronic calendar or appointment data, and the like. The captured information may include audio and/or image information. Subsequent to the downloading of the captured information, processing may be performed of the captured information to place the information in a form usable with a particular application. For example, captured audio information of a voice recording may be converted to text via a voice to text recognition module on a computer. The text may serve as input for use with any one of a variety of different applications such as, for example, a search query engine or other target. If the captured information is a single image and a text string is needed, for example, to form a search query, pattern recognition processing may be performed to generate a text string of any recognized text included in the image. In one embodiment, each set of captured information associated with a single file of captured information, such as each audio or image file, may be used in connection with performing a single action. For example, each audio clip may be used to form a new search query string if the captured information is to be used in connection with a search query.
The capture device may also be used as a mass storage device. As described herein, the captured information may be read from the capture device. Furthermore, data may be subsequently written to the capture device, for example, for subsequent use and retrieval by another device. The data written to the capture device may relate to the captured information. For example, after performing a search using a search query formed using data from the capture device, the search results may be stored on the capture device and associated with the corresponding search query. The capture device may also be used as a storage device to store any data thereon including data which may be characterized as not related to the captured information.
Referring now to
In another embodiment as described herein, the capture device may be integrated into the computer or other device. As such, with reference to flowchart 500, step 504 may be omitted in that the capture device may be connected to the other device due to the integration of the components. In this case, processing may include performing steps 502, 506, and optionally step 508.
As described herein, the capture device may be a USB device which is inserted into a USB port on a computer system or other device. The capture device may also be integrated as a component of another device. In one embodiment, the capture device may be characterized as a modified USB flash memory device including a capturing capabilities as described herein. The capture device may include audio and/or image recording capabilities. In one embodiment, the audio and/or image recording may be performed in a mode when the device is connected to a computer system or other component utilizing the captured information, as well as in another mode when the capture device is not connected to the foregoing computer system or other component. Audio capturing may be performed in response to selection of a button on the capture device which turns on and off the audio recording. For example, a button may be depressed causing a microphone on the device to record audio information. The microphone may continue to record until the button is released. Similarly, image or video capturing may be performed in response to selection of a button which turns on and off image recording. As such, the device may capture an image sequence as a video over a time period as well as a single image.
The capture device can record various types of captured content when the appropriate components of the capture device are enabled resulting in the creation of corresponding audio, image, and/or video files. The files may be stored in a non-volatile memory, such as a flash memory, of the capture device. The files may also include other metadata, such as date and time information, about the recording. When the capture device is plugged into a computer, such as one running a Windows-based operating system, any one of a variety of different techniques may be used to invoke an application or service included in the computer or other server having connectivity to the computer. The service of application may facilitate downloading the captured information from the capture device to a target location including, for example, the user computer directly connected to the capture device or another target location, such as the server computer, having connectivity thereto.
The capture device described herein has broad applicability for use in connection with capturing audio and/or image information, such as when offline with respect to a computer system. At a later point in time, the capture information may be downloaded to a computer or other component to which the capture device may be connected.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.