This disclosure relates to transferring automatically audiovisual content represented as electronic files, from camera devices to either client computing devices or a centralized server, or both.
Digital cameras are increasingly used to capture images of their surroundings. The images may be still images or video clips, including a series of single image frames that can be manipulated further to provide effects such as slow motion type effects. The video files also can include audio.
Captured video clips may be manually transferred to other computing devices, e.g., through a wired connection such as a Universal Serial Bus (USB) cable. However, some video clips may be large electronic files that take more than a minute to be transferred.
One aspect of the disclosure relates to a system configured for automatically transferring and managing audiovisual content. The system may include one or more camera devices configured to capture audiovisual content, including but not limited to photographs, videos or video information, visual information, audio information, depth information, and/or combinations and/or derivatives thereof, which may be jointly referred to as audiovisual content. The audiovisual content may be represented as electronic files. The system may further include client computing devices, centralized servers, networks, communication channels, electronic storage, physical processors, and/or other components. In some implementations, the system may be configured to transfer automatically audiovisual content from a camera device to one or more computing devices, e.g., a client computing device—such as a smartphone—associated with a particular user. In some implementations, the system may be configured to transfer automatically audiovisual content from a camera device to a centralized server that is configured to communicate with multiple camera devices and/or multiple client computing devices and/or multiple users.
In some implementations, a particular user may be associated with more than one client computing device in addition to a particular camera device. The system may be configured to facilitate transferring audiovisual content among different client computing devices, in addition to a centralized server. For example, a particular user may be associated with a first or primary client computing device (e.g., a smartphone) and a second or secondary client computing device (e.g., a laptop computer). The system may be configured to transfer audiovisual content from the particular camera device to both the first client computing device and the second client computing device. The user may use the different client computing devices to perform different operations and/or use different features. For example, the first client computing device may be used to add tags, highlights, and/or other metadata to a particular item of audiovisual content. In some implementations, operations performed by the first client computing device may be available and/or supported when less than a full and/or complete item of audiovisual content is locally available at the first client computing device. A partial, incomplete, and/or otherwise “low-resolution” version of a particular item of audiovisual content may be referred to as a representation or thumbnail of the particular item. For example, the second client computing device may be used to edit, crop, and/or otherwise modify a particular item of audiovisual content. In some implementations, operations performed by the second client computing device may be available and/or supported only when a full and/or complete item of audiovisual content is locally available at the second client computing device, in addition to sufficient processing power and/or storage capacity. For example, certain operations may not be supported by the first client computing device, e.g. due to insufficient processing power and/or storage capacity. In some implementations, the audiovisual content may furthermore be transferred to the centralized server.
The camera devices may be physically separate and distinct from the client computing devices and/or the centralized server(s). In some implementations, the components of the system may be physically separate and/or remote from one another. Captured audiovisual content may be transferred from a camera device that is associated with a particular user to a client computing device that is associated with the same user. In some implementations, captured audiovisual content may be transferred from the camera device that is associated with a particular user to a centralized server that is configured to facilitate online access to the audiovisual content, e.g. to the same user. For example, the user may, after a transfer of audiovisual content from a camera device to a centralized server, access the audiovisual content through different client computing devices that are configured to communicate with the centralized server, e.g., upon authentication.
Users may, after a transfer of audiovisual content from a camera device to a centralized server, use a mobile application (e.g. on a smart phone) and/or other software application to engage with the audiovisual content. For example, users may add tags, highlights, and/or other metadata, edit the content, crop the content, combine the content with other content, and/or otherwise augment or modify the content. As used herein, the term “crop” may refer to reducing the duration of an item of audiovisual content, reducing the resolution of an item of audiovisual content, reducing the frame-rate of an item of audiovisual content, reducing the pixel-density of an item of audiovisual content (e.g. width and height in pixels), reducing the number of colors in an item of audiovisual content, and/or other reductions of audiovisual content. Any such operations on the audiovisual content may be synchronized and propagated across different computing devices and the centralized server such that any user from any computing device may be presented with the latest version of any particular audiovisual content.
The one or more physical processors may be configured by machine-readable instructions, e.g. to provide information-processing capabilities and/or execute computer program components. Executing the machine-readable instructions may cause the one or more physical processors to facilitate automatically transferring and managing audiovisual content, e.g. post-capture. The machine-readable instructions may include one or more of a capture component, a camera notification component, a thumbnail component, a camera transfer component, a device notification component, a device transfer component, a presentation component, an access component, a user input component, an identifier component, a file management component, a registration component, a synchronization component, a configuration component, an order component, and/or other components. Some of the computer program components may be physically located within a camera device. Some of the computer program components may be physically located within a client computing device. Some of the computer program components may be part of a centralized server. Some of the computer program components may be part of one or more of a camera device, a client computing device, a centralized server, and/or an external resource. In some implementations, one or more computer program components may be part of multiple other components.
In some implementations, the system may include one or more client computing devices, which may be referred to as client computing platforms. Client computing devices may include one or more processors configured to execute computer program components. The computer program components may be configured to enable a user associated with a client computing device to interact with the system, any component thereof, other client computing devices, and/or provide other functionality attributed herein to client computing devices. By way of non-limiting example, client computing devices may include one or more of a desktop computer, a laptop computer, a handheld computer, a NetBook, a mobile telephone, a smartphone, a tablet, a (smart) watch, a mobile computing platform, a gaming console, a television, an electronic device, a personal medical device, and/or other computing devices. Users may communicate using any of the computing platforms described in this disclosure, and/or any combination of computing platforms described in this disclosure.
Camera devices may include, by way of non-limiting example, one or more of an image sensor, a camera, an infrared sensor, a light sensor, a motion sensor, a depth sensor, a microphone, and/or other sensors. As used herein, the terms “camera” and/or “image sensor” may include any device that captures images, including but not limited to a single lens-based camera, a camera array, a solid-state camera, a mechanical camera, a digital camera, an image sensor, a depth sensor, a remote sensor, a lidar, an infrared sensor, a (monochrome) complementary metal-oxide-semiconductor (CMOS) sensor, an active pixel sensor, and/or other sensors. In some implementations, a camera device may include more than one image sensor.
As used herein, the term “motion sensor” may include one or more sensors configured to generate output conveying information related to position, location, motion, movement, acceleration, and/or other motion-based parameters. Individual sensors may be configured to capture audiovisual information, geolocation information, orientation and/or motion information, and/or other information. Captured information may be marked, timestamped, annotated, and/or otherwise processed such that information captured by other sensors can be synchronized, aligned, annotated, and/or otherwise associated therewith. For example, video information captured by an image sensor may be synchronized with information captured by an accelerometer or other sensor. Output signals (and/or information based thereon) may be stored and/or transferred in electronic files. For example, output signals generated by an image sensor may be stored on electronic storage media in an electronic file. As used herein, the term “file” may refer to information organized and/or grouped in electronic format for any period of time.
In some implementations, an image sensor of a camera device may be integrated with electronic storage such that captured information may be stored in the integrated embedded storage. In some implementations, the system may include one or more camera devices. For example, a camera may include one or more image sensors and electronic storage media. In some implementations, an image sensor may be configured to transfer captured information to remote electronic storage media, e.g. through “the cloud.”
The capture component may be configured to capture, store, analyze, and/or process audiovisual content and/or other information. By way of non-limiting example, camera devices may include computer processors configured by machine-readable instructions to capture audiovisual content, as well as perform other tasks attributed to the capture component. For example, the capture component may be configured to store audiovisual content electronically, convert the content to one or more different electronic file formats, extract information from the content, generate identifiers based on the content, perform operations on the content, including but not limited to editing or cropping the content, and/or perform other operations on the content. By way of non-limiting example, camera devices may include computer processors configured by machine-readable instructions to capture audiovisual content, as well as perform other tasks attributed to the capture component. As used herein, the term “audiovisual content” may be interpreted as video information. Information captured by camera devices may be represented by video information and/or other information. Video information may define one or more of visual information, audio information, and/or other information that may define the video information.
The camera notification component may be configured to generate and communicate notifications. For example, the camera notification component may be configured to generate notifications indicating that one or more items of audiovisual content have been captured by the camera device. In some implementations, notifications may include information extracted from the audiovisual content, and/or otherwise based on the audiovisual content. For example, a notification may include one or more identifiers of an item of audiovisual content. In some implementations, the camera notification component may be configured to communicate notifications to other components in the system, including but not limited to client computing devices, centralized servers, and/or other computing devices. By way of non-limiting example, camera devices may include computer processors configured by machine-readable instructions to generate notifications, as well as perform other tasks attributed to the camera notification component.
The thumbnail component may be configured to generate representations of audiovisual content. For example, a representation of a particular item of audiovisual content may be a still image selected from, derived from, and/or otherwise based on captured video information. In some implementations, a representation may be referred to as a thumbnail. In some implementations, a representation that is smaller than the audiovisual content represented may be referred to as a low-resolution representation. The audiovisual content that is represented by the representation may be referred to as the original content. For example, a 30-second video message with stereo sound may be associated with a 2-second representation that has no sound, such as a Graphics Interchange Format (GIF) image, or a still image. The term “low-resolution” may refer to the lower frame-rate of a video representation (compared to the original content), a lower the pixel-density of an image in the representation (e.g. width and height of an representative image in pixels), a lower number of different colors supported in the particular electronic file format of the representation, a compressed version of the original content, a shorter duration of the representation compared to the original content, and/or any other representation stored in less (bits of) storage compared to the original message. As used herein, such representations may be referred to as thumbnails. By way of non-limiting example, camera devices and/or client computing devices may include computer processors configured by machine-readable instructions to generate representations of audiovisual content, as well as perform other tasks attributed to the thumbnail component.
The camera transfer component may be configured to communicate and/or transfer information from a camera device to another component in the system. For example, the camera transfer component may be configured to transfer notifications, identifiers, low-resolution representations, and/or other information from a camera device to one or more client computing devices. In some implementations, the camera transfer component may be configured to transfer notifications, identifiers, low-resolution representations, and/or other information from a camera device to a centralized server. As used herein, the term “transfer” merely indicates the direction of certain information from a first device or origin to a second device or destination. Even if the second device requests or “pulls” the information from the first device, that information is considered to be transferred from the first device to the second device. By way of non-limiting example, camera devices may include computer processors configured by machine-readable instructions to transfer notifications, as well as perform other tasks attributed to the camera transfer component.
The device notification component may be configured to obtain and/or receive information from camera devices and/or other components of the system. For example, the device notification component may be configured to receive notifications from camera devices. In some implementations, the device notification component may be configured to analyze and/or process received information. By way of non-limiting example, client computing devices and/or centralized servers may include computer processors configured by machine-readable instructions to receive notifications, as well as perform other tasks attributed to the device notification component.
The device transfer component may be configured to effectuate transfer of information to one or more of a client computing device and a centralized server. In some implementations, the transferred information may include one or more of audiovisual content, representations of audiovisual content, identifiers of audiovisual content, notifications pertaining audiovisual content, and/or other information. In some implementations, transfer of information may occur responsive to receipt of particular information, including but not limited to receipt of a notification. For example, in response to receipt of a particular notification, the device transfer component may be configured to effectuate transfer of a low-resolution representation of a particular item of audiovisual content and an identifier of the particular item of audiovisual content. For example, the particular notification may indicate that the particular item of audiovisual content has been captured. By way of non-limiting example, client computing devices and/or centralized servers may include computer processors configured by machine-readable instructions to effectuate transfer of information, as well as perform other tasks attributed to the device transfer component.
The presentation component may be configured to present information to users. For example, information may be presented via user interfaces. In some implementations, the presented information may include audiovisual content. For example, the presented information may include low-resolution representations of captured audiovisual content. In some implementations, the presentation component may be configured to facilitate user interaction with users. For example, the presentation component may be configured to control a user interface. In some implementations, the presentation component may be configured to facilitate sharing of information with users, for example through social media. By way of non-limiting example, client computing devices may include computer processors configured by machine-readable instructions to present information to users, as well as perform other tasks attributed to the presentation component.
The access component may be configured to manage electronic access to information, including but not limited to audiovisual content, representations of audiovisual content, identifiers of audiovisual content, notifications pertaining audiovisual content, and/or other information. In some implementations, the access component may be configured to store information. For example, the access component may be configured to facilitate access to representations of audiovisual content that have been stored in a central location. By way of non-limiting example, centralized servers may include computer processors configured by machine-readable instructions to manage electronic access to information, as well as perform other tasks attributed to the access component.
The user input component may be configured to facilitate user input from users. For example, the user input component may be configured to receive user input from users. In some implementations, user input may be received through a user interface. For example, user interfaces may be presented at client computing devices. User input may indicate whether particular information shall be transferred from a particular first device to one or more other devices. For example, in some implementations, received user input may indicate whether a particular item of audiovisual content shall be transferred from a camera device to a client computing device and/or to a centralized server. In some implementations, user input may indicate whether particular information shall be removed from one or more particular devices. For example, received user input may indicate whether a particular item of audiovisual content shall be removed from a camera device, a centralized server, and/or other computing devices. In some implementations, one or more features attributed to the presentation component and one or more features attributed to the user input component may be performed by the same component such as, by way of non-limiting example, a touchscreen. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to receive user input from users, as well as perform other tasks attributed to the user input component.
The identifier component may be configured to generate identifiers of information, in particular audiovisual content. In some implementations, generated identifiers may be based on the content of the identified information. Alternatively, and/or simultaneously, in some implementations, generated identifiers may be based on information that is extracted from the identified information. In some implementations, generation of identifiers may be based on an identification scheme that allows any device to determine the same unique identifier of a particular item of information, such as a particular item of audiovisual content. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to generate identifiers, as well as perform other tasks attributed to the identifier component.
The file management component may be configured to facilitate management of electronic files, e.g., in a computing device. For example, the file management component may be configured to facilitate management of electronic files for a centralized server. Management of electronic files may include transferring files, moving files within a directory structure, renaming files, copying files, deleting or removing files, and/or performing other operations of file management on electronic files. For example, the electronic files managed by the file management component may include one or more of audiovisual content, representations of audiovisual content, identifiers of audiovisual content, notifications pertaining audiovisual content, and/or other information. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to facilitate management of electronic files, as well as perform other tasks attributed to the file management component.
The registration component may be configured to effectuate registration of information with one or more computing devices. For example, the registration component may be configured to effectuate registration of a particular item of audiovisual content with a client computing device and/or a centralized server. In some implementations, registration may include associating a first item of information with a second item of information. For example, in some implementations, the registration component may be configured to register a particular item of audiovisual content by establishing an association between the particular item of audiovisual content and a particular identifier that identifies the same item of audiovisual content. In some implementations, registration may be used to determine and/or verify whether a particular item of information has been stored in a particular manner. For example, a registration status of a particular item of audiovisual content may be used to determine that that particular item of audiovisual content has not yet been transferred to a centralized server. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to register information, as well as perform other tasks attributed to the registration component.
The synchronization component may be configured to synchronize information and/or operations between different computing devices. In some implementations, the operations may include operations of file management pertaining to electronic files. Alternatively, and/or simultaneously, in some implementations, the operations may include operations performed on the content of particular information such as audiovisual content. For example, the operations may include adding tags or highlights, editing the content, modifying playback speed and/or frame rate, cropping the content, combining the content with other content, and/or otherwise augmenting and/or modifying the content. Upon such synchronization, any operations on an item of content or other type of information may be propagated to other computing devices such that any user from any computing device may be presented with the latest version of any particular information. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to synchronize information and/or operations, as well as perform other tasks attributed to the synchronization component.
The configuration component may be configured to obtain configuration information. The configuration information may be used to establish one or more communication channels, e.g., between different components of the system. In some implementations, the configuration component may be configured to obtain configuration information that may be used to establish a communication channel between a camera device and a centralized server. In some implementations, a communication channel may include and/or be based on known wireless networks and/or trusted wireless networks. For example, a communication channel may be based on a WiFi network that is associated with the same user as the camera device. In some implementations, the configuration component may be configured to establish communication channels, e.g., based on obtained configuration information. In some implementations, the configuration component may be configured to detect whether one or more communication channels are available. For example, availability may be related to a particular device being in range of a particular wireless network. Alternatively, and/or simultaneously, availability may be conditional upon authentication. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to obtain and/or use configuration information, as well as perform other tasks attributed to the configuration component.
The order component may be configured to determine in which order a set of files should be transferred. In some implementations, the files may include items of audiovisual content. For example, a camera device may have captured two or more items of audiovisual content that need to be transferred to a centralized server. The order component may be configured to determine in which order these two items should be transferred. In some implementations, the order of different files may be based on file size. Alternatively, and/or simultaneously, in some implementations, the order of different files may be based on the content type of the different files. For example, still images may be ordered to be transferred before video messages. By way of non-limiting example, any computing device may include computer processors configured by machine-readable instructions to determine orders for transferring files, as well as perform other tasks attributed to the order component.
One aspect of the disclosure relates to methods for automatically transferring and managing audiovisual content.
These and other features, and characteristics of the present technology, as well as the methods of operation and functions of the related elements of structure and the combination of parts and economies of manufacture, will become more apparent upon consideration of the following description and the appended claims with reference to the accompanying drawings, all of which form a part of this specification, wherein like reference numerals designate corresponding parts in the various figures. It is to be expressly understood, however, that the drawings are for the purpose of illustration and description only and are not intended as a definition of the limits of the invention. As used in the specification and in the claims, the singular form of “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise.
The system 100 may include one or more camera devices 11, client computing devices 15, centralized servers 12, networks 120, communication channels, electronic storage 118, physical processors 104, and/or other components. In some implementations, a particular user may be associated with more than one client computing device in addition to a particular camera device 11. System 100 may be configured to facilitate transferring information among different client computing devices, in addition to centralized server 12. For example, a particular user may be associated with a first or primary client computing device 15 (e.g., a smartphone) and a second or secondary client computing device 13 (e.g., a laptop computer). System 100 may be configured to transfer audiovisual content from camera device 11 to both a primary client computing device 15 and a secondary client computing device 13.
Camera device 11, primary client computing device 15, secondary client computing device 13 and/or centralized server 12 may include one or more physical processors 104 configured by machine-readable instructions 106 and/or other components. Executing the machine-readable instructions 106 may cause the one or more physical processors 104 to facilitate automatic transfer of information. The machine-readable instructions 106 may include one or more of a capture component 21, a camera notification component 22, a thumbnail component 23, a camera transfer component 24, a device notification component 25, a device transfer component 26, a presentation component 27, an access component 28, a user input component 29, an identifier component 30, a file management component 31, a registration component 32, a synchronization component 33, a configuration component 34, an order component 35, and/or other components.
Camera device 11 may be configured to capture audiovisual content, including but not limited to photographs, videos or video information, visual information, audio information, depth information, and/or combinations and/or derivatives thereof, which may be jointly referred to as audiovisual content. The audiovisual content may be represented as electronic files. Camera device 11 may be physically separate and distinct from primary client computing device 15, secondary client computing device 13, and/or the centralized server 12.
In some implementations, camera device 11 may be configured to determine whether camera device 11 is electrically coupled to a power source and/or plugged in. In some implementations, camera device 11 include a rechargeable battery. Camera device 11 may be configured to determine how much of a charge the rechargeable battery is currently holding. In some implementations, camera device 11 may be configured to determine whether the rechargeable battery is holding more or less than a predetermined charge threshold. For example, a charge threshold may be 50%, 60%, 70%, 80%, 90%, and/or another suitable percentage. In some implementations, a charge threshold may be in absolute units rather than in percentages. In some implementations, camera device 11 may be configured to perform operations and/or tasks based on whether the rechargeable battery meets a charge threshold. For example, camera device 11 may be configured to transfer notifications and/or other information subsequent to a determination that the rechargeable battery is currently holding a sufficiently large charge.
Centralized server 12 may be configured to facilitate online access to information, including but not limited to audiovisual content. In some implementations, centralized server 12 may be configured to facilitate management of electronic files. In some implementations, facilitating online access to information may include managing user accounts (e.g. add new accounts for new users), facilitating authentication for access to user accounts (e.g., through passwords and/or other types of identification), and/or perform other tasks related to the use of online user accounts.
One or more physical processors 104 (also referred to as computer processors 104) may be configured by machine-readable instructions 106, e.g. to provide information-processing capabilities and/or execute computer program components. Executing the machine-readable instructions may cause one or more physical processors 104 to facilitate automatically transferring and managing audiovisual content, e.g. post-capture. Electronic storage 118 may be configured to store information electronically.
Capture component 21 may be configured to capture, store, analyze, and/or process audiovisual content and/or other information. By way of non-limiting example, camera devices 11 may include physical processors 104 configured by machine-readable instructions 106 to capture audiovisual content, as well as perform other tasks attributed to capture component 21. For example, capture component 21 may be configured to store audiovisual content electronically, convert the content to one or more different electronic file formats, extract information from the content, generate identifiers based on the content, perform operations on the content, including but not limited to editing or cropping the content, and/or perform other operations on the content.
Camera notification component 22 may be configured to generate and communicate notifications. For example, camera notification component 22 may be configured to generate notifications indicating that one or more items of audiovisual content have been captured by camera device 11. In some implementations, notifications may include information extracted from the audiovisual content, and/or otherwise based on the audiovisual content. For example, a notification may include one or more identifiers of an item of audiovisual content. In some implementations, camera notification component 22 may be configured to communicate notifications to other components in system 100, including but not limited to client computing devices 13/15, centralized servers 12, and/or other computing devices. By way of non-limiting example,
In some implementations, notifications may be based on Bluetooth communications. For example, a notification may be implemented as a Bluetooth ping and/or advertisement. In some implementations, notifications may be broadcast in a vicinity of a camera device, e.g. through a Bluetooth broadcast. Other communication schemes are considered within the scope of this disclosure.
By way of non-limiting example,
In some implementations, a user may use secondary client computing device 13. Camera notification component 22 may be configured to communicate a notification to secondary client computing device 13. By way of non-limiting example,
Referring to
Referring to
In some implementations, a user may use secondary client computing device 13. Camera transfer component 24 may be configured to transfer information to secondary client computing device 13. By way of non-limiting example,
Referring to
Referring to
By way of non-limiting example,
In some implementations, a user may use secondary client computing device 13. For example, in response to receipt of a particular notification, device transfer component 26 may be configured to effectuate and/or request transfer of a low-resolution representation of a particular item of audiovisual content to secondary client computing device 13. By way of non-limiting example,
By way of non-limiting example,
In some implementations, a user may use secondary client computing device 13. By way of non-limiting example,
Referring to
Access component 28 may be configured to manage electronic access to information, including but not limited to audiovisual content, representations of audiovisual content, identifiers of audiovisual content, notifications pertaining audiovisual content, and/or other information. In some implementations, access component 28 may be configured to store information. For example, access component 28 may be configured to facilitate access to representations of audiovisual content that have been stored in a central location.
User input component 29 may be configured to facilitate user input from users. For example, user input component 29 may be configured to receive user input from users. In some implementations, user input may be received through a user interface. For example, user interfaces may be presented at client computing device 15. User input may indicate whether particular information shall be transferred from a particular first device to one or more other devices. For example, in some implementations, received user input may indicate whether a particular item of audiovisual content shall be transferred from camera device 11 to client computing device 15 and/or to centralized server 12. In some implementations, user input may indicate whether particular information shall be removed from one or more particular devices. For example, received user input may indicate whether a particular item of audiovisual content shall be removed from camera device 11, centralized server 12, and/or other computing devices.
By way of non-limiting example,
Referring to
By way of non-limiting example, any computing device may generate identifiers for items of information, including but not limited to items of audiovisual content.
File management component 31 may be configured to facilitate management of electronic files, e.g., in a computing device. For example, file management component 31 may be configured to facilitate management of electronic files for centralized server 12. Management of electronic files may include transferring files, moving files within a directory structure, renaming files, copying files, deleting or removing files, and/or performing other operations of file management on electronic files. For example, the electronic files managed by file management component 31 may include one or more of audiovisual content, representations of audiovisual content, identifiers of audiovisual content, notifications pertaining audiovisual content, and/or other information.
Registration component 32 may be configured to effectuate and/or verify registration of information with one or more computing devices. For example, registration component 32 may be configured to effectuate registration of a particular item of audiovisual content with client computing device 15 and/or centralized server 12. In some implementations, registration may include associating a first item of information with a second item of information. For example, in some implementations, registration component 32 may be configured to register a particular item of audiovisual content by establishing an association between the particular item of audiovisual content and a particular identifier that identifies the same item of audiovisual content. In some implementations, registration of certain types of audiovisual content may be performed in a centralized location, e.g., by centralized server 12. In some implementations, registration may be used to determine whether a particular item of information has been stored in a particular location and/or manner. For example, a registration status of a particular item of audiovisual content may be used to determine whether the particular item of audiovisual content has been transferred to centralized server 12.
By way of non-limiting example,
In some implementations, a user may use secondary client computing device 13. Registration component 32 may be configured to effectuate registration of a particular item of audiovisual content through secondary client computing device 13. By way of non-limiting example,
Referring to
For example, a user may enter a particular operation, through a user interface on client computing device 15 and/or user input component 29, to be performed on a particular item of audiovisual content. In some implementations, the particular item of audiovisual content need not be stored on client computing device 15. For example, a user can crop or tag the particular item even if the particular item of audiovisual content has not been transferred to client computing device 15.
In some implementations, a user can crop or tag the particular item even if the representation of the particular item of audiovisual content has not been transferred to client computing device 15. Subsequently, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated to camera device 11. Alternatively, and/or simultaneously, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated to centralized server 12. Subsequently, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated from centralized server 12 to one or both of camera device 11 and secondary client computing device 13.
In some implementations, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated from client computing device 15 to secondary client computing device 13. Subsequently, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated from secondary client computing device 13 to one or both of camera device 11 and centralized server 12.
In some implementations, whether information and/or operations are propagated to centralized server 12 may be based on whether a particular item of audiovisual content has been transferred to centralized server 12.
In some implementations, a user may decide to which devices information and/or operations will be propagated. For example, a user may control whether a particular type of audiovisual content is transferred and/or propagated to second client computing device 13. In some implementations, a user may decide in which order information and/or operations will be propagated to different devices. For example, propagation to second client computing device 13 may take precedence over propagation to centralized server 12, and/or vice versa.
In some implementations, information and/or operations to be synchronized may originate from secondary client computing device 13. For example, responsive to a particular item of audiovisual content being cropped in half such that the representation of the particular item needs to be updated accordingly, secondary client computing device 13 may communicate with any computing device in system 100 that contains either the particular item or its representation, or both. In some implementations, synchronization component 33 may be configured to synchronize information and/or operations with camera device 11, client computing device 15, and centralized server 12.
In some implementations, a user may enter a particular operation, through a user interface on secondary client computing device 13 and/or user input component 29, to be performed on a particular item of audiovisual content. In some implementations, the particular item of audiovisual content need not be stored on secondary client computing device 13. For example, a user can crop or tag the particular item even if the particular item of audiovisual content has not been transferred to secondary client computing device 13. Subsequently, the particular operation and/or any modifications that correspond to implementing the particular operation on the particular item of audiovisual content (and/or its representation) may be propagated from secondary client computing device 13 to any or all of client computing device 15, camera device 11, and centralized server 12.
In some implementations, particular operations may reduce the resolution and/or the duration of a particular item of audiovisual content. In some implementations, subsequent to certain operations, one or both of the representation of a particular item of audiovisual content and the identifier of a particular item of audiovisual content need to be renewed/regenerated. Synchronization component 33 may be configured to synchronize and/or propagate a new representation of the particular item of audiovisual content and/or the new identifier of the particular item of audiovisual content.
Configuration component 34 may be configured to obtain configuration information. In some implementations, configuration information may be obtained from users, e.g. through user interfaces. In some implementations, configuration information may be based on received user input. The configuration information may be used to establish one or more communication channels, e.g., between different components of system 100. In some implementations, configuration component 34 may be configured to obtain configuration information that may be used to establish one or more communication channels between camera device 11 and centralized server 12. In some implementations, a communication channel may include and/or be based on known wireless networks and/or trusted wireless networks. For example, a communication channel may be based on a WiFi network that is associated with the same user as camera device 11. In some implementations, configuration component 34 may be configured to establish one or more communication channels, e.g., based on obtained configuration information. In some implementations, configuration component 34 may be configured to detect whether one or more communication channels are available. For example, availability may be related to a particular device being in range of a particular wireless network. Alternatively, and/or simultaneously, availability may be conditional upon authentication. In some implementations, authentication may include providing one or more of a username, a channel identification, and a password.
Order component 35 may be configured to determine in which order a set of files should be transferred. In some implementations, the files may include items of audiovisual content. For example, camera device 11 may have captured two or more items of audiovisual content that need to be transferred to centralized server 12. Order component 35 may be configured to determine in which order these two items should be transferred. In some implementations, the order of different files may be based on file size. Alternatively, and/or simultaneously, in some implementations, the order of different files may be based on the content type of the different files. For example, still images may be ordered to be transferred before video messages. Alternatively, and/or simultaneously, in some implementations, a user may select which criteria are to be used in which sequence to determine the order for transferring multiple files. For example, in some implementations, a user may decide that items of audiovisual content that have been tagged should be transferring with higher priority than other items (i.e., placed ahead in the order for transfer). Alternatively, and/or simultaneously, in some implementations, a user may decide that items of audiovisual content that have been highlighted should be transferring with higher priority than other items (i.e., placed ahead in the order for transfer).
Components of system 100 may be operatively linked via one or more electronic communication links. For example, such electronic communication links may be established, at least in part, via one or more networks 120. In some implementations, network 120 may include the Internet and/or may employ other communications technologies and/or protocols. By way of non-limiting example, network 120 may employ communication technologies including one or more of Ethernet, 802.11, worldwide interoperability for microwave access (WiMAX), 3G, Long Term Evolution (LTE), digital subscriber line (DSL), asynchronous transfer mode (ATM), InfiniBand, PCI Express Advanced Switching, and/or other communication technologies. By way of non-limiting example, network 120 may employ networking protocols including one or more of multiprotocol label switching (MPLS), transmission control protocol/Internet protocol (TCP/IP), User Datagram Protocol (UDP), hypertext transport protocol (HTTP), simple mail transfer protocol (SMTP), file transfer protocol (FTP), and/or other networking protocols.
Information exchanged over network 120 may be represented using formats including one or more of hypertext markup language (HTML), extensible markup language (XML), and/or other formats. One or more exchanges of information between entities of system 100 may be encrypted using encryption technologies including one or more of secure sockets layer (SSL), transport layer security (TLS), virtual private networks (VPNs), Internet Protocol security (IPsec), and/or other encryption technologies. In some implementations, one or more entities of system 100 may use custom and/or dedicated data communications technologies instead of, or in addition to, the ones described above.
It will be appreciated that this is not intended to be limiting and that the scope of this disclosure includes implementations in which components of system 100 may be operatively linked via some other communication media.
External resources 124 may include sources of information, hosts, and/or other entities outside of system 100, external entities participating with system 100, and/or other resources. In some implementations, some or all of the functionality attributed herein to external resources 124 may be provided by resources included in system 100.
System 100 may include electronic storage 118. System 100 may include communication lines or ports to enable the exchange of information with a network and/or other entities. Illustration of system 100 in
Electronic storage 118 may include electronic storage media that electronically stores information. The electronic storage media of electronic storage 118 may include one or both of system storage that is provided integrally (i.e., substantially non-removable) with system 100 and/or removable storage that is removably connectable to system 100 via, for example, a port or a drive. A port may include a USB port, a firewire port, and/or other port. A drive may include a disk drive and/or other drive. Electronic storage 118 may include one or more of optically readable storage media (e.g., optical disks, etc.), magnetically readable storage media (e.g., magnetic tape, magnetic hard drive, floppy drive, etc.), electrical charge-based storage media (e.g., EEPROM, RAM, etc.), solid-state storage media (e.g., flash drive, etc.), and/or other electronically readable storage media. Electronic storage 118 may include one or more virtual storage resources (e.g., cloud storage, a virtual private network, and/or other virtual storage resources). Electronic storage 118 may store software algorithms, information determined by processor(s) 104, information received from components of system 100, and/or other information that enables system 100 to function as described herein.
Processor(s) 104 may be configured to provide information-processing capabilities in system 100. As such, processor 104 may include one or more of a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information. Although processor 104 is shown in
It should be appreciated that although components 21-35 are illustrated in
In some embodiments, these methods may be implemented in a computer system comprising one or more processing devices (e.g., a digital processor, an analog processor, a digital circuit designed to process information, an analog circuit designed to process information, a state machine, and/or other mechanisms for electronically processing information), storage media storing machine-readable instructions, and/or other components. The one or more processing devices may include one or more devices executing some or all of the operations of these methods in response to instructions stored electronically on electronic storage medium. The one or more processing devices may include one or more devices configured through hardware, firmware, and/or software to be specifically designed for execution of one or more of the operations of these methods.
Regarding method 400, at an operation 402, a first item of audiovisual content is captured. In some embodiments, operation 402 is performed by a camera device the same as or similar to camera device 11 (shown in
At an operation 404, a first low-resolution representation of the first item of audiovisual content is generated. In some embodiments, operation 404 is performed by a camera device the same as or similar to camera device 11 (shown in
At an operation 406, a notification is communicated wirelessly, the notification indicating that the first item of audiovisual content has been captured. A first identifier that identifies the first item of audiovisual content is derived from the first item of audiovisual content. In some embodiments, operation 406 is performed by a camera device the same as or similar to camera device 11 (shown in
At an operation 408, a notification is received by a client computing device associated with a user. The client computing device is physically separate and distinct from the camera device. In some embodiments, operation 408 is performed by a client computing device the same as or similar to client computing device 15 (shown in
At an operation 410, transfer is effectuated to a centralized server of the first low-resolution representation and the first identifier. In some embodiments, operation 410 is performed by a client computing device and/or camera device the same as or similar to client computing device 15 and/or camera device 11 (shown in
At an operation 412, the first low-resolution representation of the audiovisual content is presented via a user interface to the user. In some embodiments, operation 412 is performed by a client computing device the same as or similar to client computing device 15 (shown in
Regarding method 500, at an operation 502, configuration information is obtained. The configuration information supports establishment of a communication channel between a camera device and the centralized server. In some embodiments, operation 502 is performed by a camera device the same as or similar to camera device 11 (shown in
At an operation 504, a first item of audiovisual content is captured. In some embodiments, operation 504 is performed by a camera device the same as or similar to camera device 15 (shown in
At an operation 506, a notification is communicated to the centralized server via the communication channel, the notification indicating that the first item of audiovisual content has been captured. A first identifier that identifies the first item of audiovisual content is derived from the first item of audiovisual content. The notification includes a first low-resolution representation of the first item of audiovisual content and the first identifier. In some embodiments, operation 506 is performed by a camera device the same as or similar to camera device 11 (shown in
At an operation 508, the notification is received. In some embodiments, operation 508 is performed by a centralized server the same as or similar to centralized server 12 (shown in
At an operation 510, the first item of audiovisual content is associated with the first identifier. In some embodiments, operation 510 is performed by a centralized server the same as or similar to centralized server 12 (shown in
At an operation 512, the first item of audiovisual content is transferred via the communication channel from the camera device to the centralized server. In some embodiments, operation 512 is performed by a camera device the same as or similar to camera device 11 (shown in
Although the present technology has been described in detail for the purpose of illustration based on what is currently considered to be the most practical and preferred implementations, it is to be understood that such detail is solely for that purpose and that the technology is not limited to the disclosed implementations, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present technology contemplates that, to the extent possible, one or more features of any implementation can be combined with one or more features of any other implementation.
Number | Name | Date | Kind |
---|---|---|---|
5649240 | Saegusa | Jul 1997 | A |
5721989 | Kitazawa | Feb 1998 | A |
5914941 | Janky | Jun 1999 | A |
6341201 | Ishiguro | Jan 2002 | B1 |
6415107 | Ogawa | Jul 2002 | B1 |
6633685 | Kusama | Oct 2003 | B1 |
7196805 | Toebes | Mar 2007 | B1 |
7289141 | Yamada | Oct 2007 | B2 |
7512886 | Herberger | Mar 2009 | B1 |
7599608 | Takemoto | Oct 2009 | B2 |
7885426 | Golovchinsky | Feb 2011 | B2 |
7970240 | Chao | Jun 2011 | B1 |
8180161 | Haseyama | May 2012 | B2 |
8606073 | Woodman | Dec 2013 | B2 |
8750157 | Jagannath | Jun 2014 | B1 |
8774560 | Sugaya | Jul 2014 | B2 |
8811206 | Shukla | Aug 2014 | B2 |
8971623 | Gatt | Mar 2015 | B2 |
8984143 | Serra | Mar 2015 | B2 |
8990328 | Grigsby | Mar 2015 | B1 |
8994800 | Brockway | Mar 2015 | B2 |
8995903 | Brockway | Mar 2015 | B2 |
9025014 | Brockway | May 2015 | B2 |
9036016 | Brockway | May 2015 | B2 |
9041727 | Ubillos | May 2015 | B2 |
9142257 | Woodman | Sep 2015 | B2 |
9342376 | Jain | May 2016 | B2 |
9418283 | Natarajan | Aug 2016 | B1 |
9781293 | Jeong | Oct 2017 | B2 |
20020067412 | Kawai | Jun 2002 | A1 |
20020133515 | Kagle | Sep 2002 | A1 |
20020165721 | Chang | Nov 2002 | A1 |
20030100297 | Riordan | May 2003 | A1 |
20040001706 | Jung | Jan 2004 | A1 |
20040003151 | Bateman | Jan 2004 | A1 |
20040107366 | Balfanz | Jun 2004 | A1 |
20050025454 | Nakamura | Feb 2005 | A1 |
20050036766 | Takemoto | Feb 2005 | A1 |
20050108031 | Grosvenor | May 2005 | A1 |
20050198018 | Shibata | Sep 2005 | A1 |
20060080286 | Svendsen | Apr 2006 | A1 |
20060115108 | Rodriguez | Jun 2006 | A1 |
20060208088 | Sekiguchi | Sep 2006 | A1 |
20070049201 | Nagano | Mar 2007 | A1 |
20070073937 | Feinberg | Mar 2007 | A1 |
20070288331 | Ebrom | Dec 2007 | A1 |
20080046545 | Koren | Feb 2008 | A1 |
20080123976 | Coombs | May 2008 | A1 |
20080183843 | Gavin | Jul 2008 | A1 |
20080232780 | Yamada | Sep 2008 | A1 |
20080247377 | Van Horn | Oct 2008 | A1 |
20080298305 | Nakamura | Dec 2008 | A1 |
20080310405 | Cox | Dec 2008 | A1 |
20090019995 | Miyajima | Jan 2009 | A1 |
20090027499 | Nicholl | Jan 2009 | A1 |
20090125559 | Yoshino | May 2009 | A1 |
20090128634 | Miura | May 2009 | A1 |
20090252474 | Nashida | Oct 2009 | A1 |
20100002098 | Hagiwara | Jan 2010 | A1 |
20100046842 | Conwell | Feb 2010 | A1 |
20100086216 | Lee | Apr 2010 | A1 |
20100161720 | Colligan | Jun 2010 | A1 |
20100199182 | Lanza | Aug 2010 | A1 |
20100274714 | Sims | Oct 2010 | A1 |
20100311441 | Hazlett | Dec 2010 | A1 |
20100318660 | Balsubramanian | Dec 2010 | A1 |
20110001910 | Fujiyoshi | Jan 2011 | A1 |
20110019104 | Kwak | Jan 2011 | A1 |
20110044303 | Ji | Feb 2011 | A1 |
20110050926 | Asano | Mar 2011 | A1 |
20110063457 | Tokumitsu | Mar 2011 | A1 |
20110103700 | Haseyama | May 2011 | A1 |
20110137156 | Razzaque | Jun 2011 | A1 |
20110170086 | Oouchida | Jul 2011 | A1 |
20110206351 | Givoly | Aug 2011 | A1 |
20110242098 | Tamaru | Oct 2011 | A1 |
20110307610 | Hayashi | Dec 2011 | A1 |
20120014673 | O'Dwyer | Jan 2012 | A1 |
20120027381 | Kataoka | Feb 2012 | A1 |
20120030263 | John | Feb 2012 | A1 |
20120044354 | Cheng | Feb 2012 | A1 |
20120063337 | Shukla | Mar 2012 | A1 |
20120099572 | Kato | Apr 2012 | A1 |
20120106449 | Shibuya | May 2012 | A1 |
20120110031 | Lahcanski | May 2012 | A1 |
20120141019 | Zhang | Jun 2012 | A1 |
20120210205 | Sherwood | Aug 2012 | A1 |
20120210228 | Wang | Aug 2012 | A1 |
20120246114 | Edmiston | Sep 2012 | A1 |
20120249802 | Taylor | Oct 2012 | A1 |
20120283574 | Park | Nov 2012 | A1 |
20120322413 | Haddad | Dec 2012 | A1 |
20120327225 | Barley | Dec 2012 | A1 |
20130076908 | Bratton | Mar 2013 | A1 |
20130081113 | Cherian | Mar 2013 | A1 |
20130120592 | Bednarczyk | May 2013 | A1 |
20130182166 | Shimokawa | Jul 2013 | A1 |
20130189925 | Staskawicz | Jul 2013 | A1 |
20130204865 | DeLuca | Aug 2013 | A1 |
20130222583 | Earnshaw | Aug 2013 | A1 |
20130222627 | Earnshaw | Aug 2013 | A1 |
20130223279 | Tinnakornsrisuphap | Aug 2013 | A1 |
20130235071 | Ubillos | Sep 2013 | A1 |
20130239051 | Albouze | Sep 2013 | A1 |
20130327225 | Chappell | Dec 2013 | A1 |
20130330019 | Kim | Dec 2013 | A1 |
20130337857 | Hassan | Dec 2013 | A1 |
20140028435 | Brockway | Jan 2014 | A1 |
20140028816 | Brockway | Jan 2014 | A1 |
20140028817 | Brockway | Jan 2014 | A1 |
20140028818 | Brockway | Jan 2014 | A1 |
20140109184 | Parker, II | Apr 2014 | A1 |
20140149865 | Tanaka | May 2014 | A1 |
20140152762 | Ukil | Jun 2014 | A1 |
20140282661 | Martin | Sep 2014 | A1 |
20150039646 | Sharifi | Feb 2015 | A1 |
20150071547 | Keating | Mar 2015 | A1 |
20150113009 | Zhou | Apr 2015 | A1 |
20150156247 | Hensel | Jun 2015 | A1 |
20150222817 | Brockway | Aug 2015 | A1 |
20150287435 | Land | Oct 2015 | A1 |
20160029105 | Newman | Jan 2016 | A1 |
20160094601 | Besehanic | Mar 2016 | A1 |
20160103830 | Cheong | Apr 2016 | A1 |
20160189752 | Galant | Jun 2016 | A1 |
20160260000 | Yamakawa | Sep 2016 | A1 |
20160286235 | Yamamoto | Sep 2016 | A1 |
20170263288 | Sievert | Sep 2017 | A1 |
20170351922 | Campbell | Dec 2017 | A1 |
20180004773 | Kojima | Jan 2018 | A1 |
Number | Date | Country |
---|---|---|
102571743 | Jul 2012 | CN |
0583908 | Nov 2000 | EP |
1286529 | Nov 2006 | EP |
1742410 | Jan 2007 | EP |
1742410 | Jan 2007 | EP |
2190175 | May 2010 | EP |
H09181966 | Jul 1997 | JP |
2005252459 | Sep 2005 | JP |
2006053694 | Feb 2006 | JP |
2008059121 | Mar 2008 | JP |
2009053748 | Mar 2009 | JP |
2011188004 | Sep 2011 | JP |
2006001361 | Jan 2006 | WO |
2009040538 | Apr 2009 | WO |
2012057623 | May 2012 | WO |
2012086120 | Jun 2012 | WO |
Entry |
---|
PCT International Search Report and Written Opinion for PCT/US2013/051548, dated Feb. 7, 2014, 14 Pages. |
Office Action for U.S. Appl. No. 13/558,273, dated Oct. 15, 2014, 19 Pages. |
Supplementary European Search Report for European Patent Application No. EP 13823575, dated Jul. 22, 2015, 8 Pages. |
Extended European Search Report for European Patent Application No. EP 15193305, dated Mar. 24, 2016, 9 Pages. |
Extended European Search Report for European Patent Application No. EP 15193308, dated Mar. 24, 2016, 12 Pages. |
Extended European Search Report for European Patent Application No. EP 15193309, dated Mar. 24, 2016, 10 Pages. |
Communication pursuant to Article 94(3) EPC for European Patent Application No. EP 13823575.9, dated Apr. 5, 2016, 4 Pages. |
PCT International Written Opinion for PCT/US2015/041624, dated Dec. 17, 2015, 7 Pages. |
PCT International Search Report and Written Opinion for PCT/US15/12086 dated Mar. 17, 2016, 20 pages. |
Schroff et al., ‘FaceNet: A Unified Embedding for Face Recognition and Clustering,’ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016, 10 pgs. |
Parkhi et al., ‘Deep Face Recognition,’ Proceedings of the British Machine Vision, 2015,12 pgs. |
Iandola et al., ‘SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and <0.5MB model size’, arXiv:1602.07360v3 [cs.CV] Apr. 6, 2016 (9 pgs.). |
Ioffe et al., ‘Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift,’ arXiv:1502.03167, 2015, 11 pgs. |
He et al., ‘Deep Residual Learning for Image Recognition,’ arXiv:1512.03385, 2015,12 pgs. |
Han et al., Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding, International Conference on Learning Representations 2016, 14 pgs. |
PCT International Search Report and Written Opinion for PCT/US16/31076, dated Aug. 8, 2016, 19 Pages. |
Yang et al., ‘Unsupervised Extraction of Video Highlights Via Robust Recurrent Auto-encoders’ arXiv:1510.01442v1 [cs.CV] Oct. 6, 2015 (9 pgs). |
Tran et al., ‘Learning Spatiotemporal Features with 3D Convolutional Networks’, arXiv:1412.0767 [cs.CV] Dec. 2, 2014 (9 pgs). |
PCT International Search Report for PCT/US15/41624 dated Nov. 4, 2015, 5 pages. |
PCT International Search Report for PCT/US15/23680 dated Aug. 3, 2015, 4 pages. |
PSonar URL: http://www.psonar.com/about retrieved on Aug. 24, 2016, 3 pages. |
PCT International Preliminary Report on Patentability for PCT/US2015/023680, dated Oct. 4, 2016, 10 pages. |
Nicole Lee, Twitter's Periscope is the best livestreaming video app yet; Mar. 26, 2015 URL:http://www.engadget.com/2015/03/26/periscope/ [Retrieved Aug. 25, 2015] 11 pages. |
FFmpeg, “Demuxing,” Doxygen, Dec. 5, 2014, 15 Pages, [online] [retrieved on Jul. 13, 2015] Retrieved from the internet <URL:https://www.ffmpeg.org/doxygen/2.3/group_lavf encoding.html>. |
FFmpeg, “Muxing,” Doxygen, Jul. 20, 2014, 9 Pages, [online] [retrieved on Jul. 13, 2015] Retrieved from the internet <URL: https://www.ffmpeg.org/doxyg en/2. 3/structAVP a ck et. html>. |
Japanese Office Action for JP Application No. 2013-140131, dated Aug. 5, 2014, 6 pages. |
Office Action for U.S. Appl. No. 13/831,124, dated Mar. 19, 2015, 14 pages. |