WO2017212499A1 - Systems and methods for storage space management and high availability of digital media on mobile devices - Google Patents
Systems and methods for storage space management and high availability of digital media on mobile devices Download PDFInfo
- Publication number
- WO2017212499A1 WO2017212499A1 PCT/IN2017/050227 IN2017050227W WO2017212499A1 WO 2017212499 A1 WO2017212499 A1 WO 2017212499A1 IN 2017050227 W IN2017050227 W IN 2017050227W WO 2017212499 A1 WO2017212499 A1 WO 2017212499A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- media files
- storage
- mobile device
- backup
- user
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/18—Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
- G06F11/1451—Management of the data involved in backup or backup restore by selection of backup contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1456—Hardware arrangements for backup
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
Definitions
- the present invention relates to storage space management and high availability of digital media on consumer electronic devices, and more specifically, to systems, methods and computer products for storage space management and high availability of digital media on mobile devices.
- Mobile devices have become increasingly popular in recent years. Mobile devices such as tablets and smartphones have capabilities to capture and create digital media such as photos and videos through embedded camera equipment and associated applications. Examples of such mobile devices include Apple’s iPhone and iPad, models from Samsung, LG and other companies that run on the Android operating system, and other mobile devices that run on the Windows operating system.
- Most cloud providers provide some free storage to their users and then charge on pay-per-usage basis. This has two drawbacks. First, this restricts the user to use only a given cloud storage service which has limited free storage space. Second, most of the cloud providers do not delete the original files from the device. This leaves the user with the difficult task of first figuring out which media files have been backed up and then deleting those files from the device to make space for new media files.
- Embodiments disclosed herein address the above stated needs by providing systems, methods and computer products that provide storage space management and high availability of digital media on mobile devices.
- This invention builds on the key observation that for most everyday usage scenarios such as sharing on social media networks (such as Facebook and WhatsApp) or for viewing on the device screen, the media files do not need to be their original size and could be reduced in resolution to save on storage space.
- Large resolution medial files photos and videos
- the system presented in this disclosure can help a user retain many more digital media files (such as photos and videos) by compressing them to a resolution and size that is suitable for sharing over social media networks or for viewing on the device screen.
- the proposed system provides the user with the option of storing the original media files to a number of backup storage options which could be either on the cloud or on the wireless local area network (WLAN) or even on the device as a secondary storage (Secure Digital (SD) cards).
- the selected digital media files either all files or user specified files based on size (for example, largest first) and age (for example, oldest first)) or other user search parameters (such as all images that have text or all images that feature a particular face) are uploaded to the desired backup storage provider.
- the original media files are then deleted from the local storage on the mobile device.
- Proposed invention can either be implemented as an application or a service that will run on the mobile device or can be embedded as part of the mobile device Operating System itself.
- Proposed system can also be configured as a service to run daily at a specific time to compress original media files, backup original media files and delete original media files to save storage space on the mobile device, while ensuring that the user is able to retain a much larger number of media files on the for sharing on social media networks or viewing on the device than that is possible by solutions present today.
- Fig. 1 depicts an overview of a system for storage space management and high availability of digital media files on mobile devices
- Fig. 2 depicts a method of preliminary activities for preparing the storage space management and high availability system for digital media files on mobile devices
- Fig. 3 is a flowchart of a method of configuring and discovering a backup storage provider in the same wireless local area network as the target mobile device;
- Fig. 4 depicts a block diagram of a mobile device such as a smartphone suitable for use in the various embodiments.
- Fig. 5 depicts a computer system suitable for implementing and practicing various embodiments.
- the various embodiments disclosed herein involve systems and methods that can be used to manage storage space on mobile devices while ensuring high availability of digital media files on those devices.
- Fig. 1 depicts an overview of a system for managing the storage space on a mobile device while ensuring high availability of digital media files on those devices, according to various embodiments disclosed here.
- Most of the system modules reside inside the mobile device (101). Users of the mobile device input their preferences (103) in terms of desired media files (storage location to use - primary or secondary local storage and whether to select all files of a given content type or files that match a specific search criteria (for example, all files that are older than the specified age or all files that are larger than the specified size or all files that contain text or a human face)), desired resolution (type of social media network on which they usually share digital media files, and viewing screen where they would like to view the media files) and quality, backup options (one or more cloud storage drives or a phone or desktop on the wireless local area network or secondary storage on phone (SD cards)) and whether to retain the files on the device or not (deletion of original files).
- desired media files storage location to use - primary or secondary local storage and whether to select all files of a given content type
- Trigger module (105) controls when the process of compressing and backing up one or more media files is triggered.
- the trigger may be a user trigger (when the user opens the application and explicitly requests an operation to be performed) or time based trigger (when entire process is configured as a service to run daily or weekly at a specific time) or an event based trigger (for example, the process may get triggered whenever a new media file is added to the mobile device).
- Media file selection module (107) implements the logic to pick the user specified storage location (primary or secondary (SD cards)) and searches for all media files that match the user selection criteria.
- User selection criteria such as age and size are easily implemented through available filesystem metadata.
- Selection criteria such as files that contain text or specific objects or human faces (for example, all photos that have an orange ball or all photos that show two adult males) are implemented through image and video processing libraries such as FFMpeg and OpenCV.
- Media file selection module can also invoke external viewers and players to help the user in selection of media files by viewing them first.
- Resolution and quality module (109) shows the user various compression options through configurable settings and determines the appropriate resolution and quality at which the compressed images and videos should be generated.
- the resolutions could be Facebook Home (720 x 960), Facebook Timeline (404 x 404), Facebook HighRes (2048 x 2048), WhatsApp (600 x 800) or Optimized for Device (which would detect the screen size of the mobile device and use those dimensions as the desired resolution).
- compressions algorithms like JPEG compression take in a quality factor which also determines the final quality and size of the photos generated. In one embodiment of this system, this quality factor can be intelligently calculated based on the contents of the photos.
- video compression technologies such as those used by MPEG encoder allow use of variable bit rate compression through the qscale parameter. Technologies to compress media files such as photos and videos are known in the prior art (for example, services provided by libraries such as FFMpeg and OpenCV) and the Compression module (111) leverages such libraries for implementing compression of media files.
- the proposed system provides the user with the option of storing the original media files to a number of backup storage options such as a secondary storage card (SD card) on the device (121) or a cloud drive provided by a cloud storage provider (123) or another phone or desktop connected the same WIFI network (125).
- a number of cloud storage providers (123) provide free storage of a few GigaBytes (GBs) such as GoogleDrive from Google, OneDrive from Microsoft, DropBox, Box or Flicker.
- GBs GigaBytes
- Backup Storage Provider Management and Discovery module (113) manages the metadata for the aggregated cloud storage and the user does not have to worry about what files are stored on which cloud storage provider or whether the same file has been backed up twice. In this manner, it provides the user with an abstraction of a virtual filesystem that is in turn comprised of several remote filesystems (similar to the system in PLT:2). In another embodiment of the system, the system may even give the user a choice to pick a faster cloud backup storage albeit with a slightly lower read access. This could be important in scenarios where the user needs to back up media files urgently to free up device space (for capturing new photos or videos) and would not mind accessing the backed up media files later at a bit slower speed. Backup Storage Provider Management and Discovery module (113) determines these metrics for each cloud storage provider either through the course of normal operation or through periodic small experiments (such as ping network messages).
- Different cloud storage drives when combined with the ability to select media files based on content such as media containing text or objects or human faces can be used to backup different kind of media onto different cloud storage drives.
- all photos and videos with text may be backed up onto one cloud drive and higher resolution and quality setting may be used for their compression (since photos and videos with text can be hard to view if their quality falls below a certain threshold).
- all photos and videos with human faces can be backed up onto another cloud drive and a slightly lower resolution and quality setting may be used for their compression.
- the Backup Storage Provider Management and Discovery module (113) enables this functionality through the use of custom server applications that run on the desktop or phone to receive media files over a standard network protocol such as TCP or HTTP.
- the Backup Storage Provider Management and Discovery module (113) can leverage operating system file sharing (such as that provided by NFS (Network File System) or SMBFS (Samba File System) to do this backup.
- NFS Network File System
- SMBFS Samba File System
- Proposed system also allows use of secondary storage on device (typically a SD card) (121) to be used as backup storage.
- Secondary storage like SD cards provide a very cost effective way to extend storage space on a mobile device and hence represent a good backup option that is reliable and fast as well.
- Proposed system can use secondary storage on mobile device (SD cards) as a backup target to move media files from primary storage (119) to secondary storage (121). It can also use secondary storage to select media files and back them up to primary storage thereby providing a fast and easy-to-use mechanism to transfer media files between primary and secondary storage on a mobile device.
- Upload module (115) uploads the selected digital media files to the determined backup storage provider (either on the cloud or on the wireless local area network).
- the original media files are then deleted by the Deletion Module (117) from the primary local storage (119) or the secondary storage (121) on the mobile device.
- the proposed system can let the user execute the combined tasks of compressing the original digital media file, backing up the original file and deleting the original file from the device either for all digital media files of a particular type (Photos, Videos or Music Files) or for selected individual files that satisfy user specified criteria such as the largest files (which will save the most space if backed up and deleted from the device) or the oldest files (which either are no longer relevant or have been backed up already) or files that contain text or specific objects or human faces.
- a particular type Photographs, Videos or Music Files
- the proposed system can also be configured to use one or more actions of compression, backup and delete in any combination.
- one or more actions of compression, backup and delete in any combination.
- it may be preferable to skip both backup and compression and only delete the media files because the files may have already been backed up to some other device through other means.
- Fig. 2 depicts a method of preliminary activities for preparing the storage space and high availability system according to various embodiments disclosed herein.
- the preliminary activities typically entail setting up the system and specifying the parameters, methods and interfaces for practicing the embodiments. Such preliminary activities are generally taken care of before beginning the process of providing storage space management and high availability of digital media files on a mobile device to users.
- First, the process for compression and backup of one or more media files on a mobile device is started based on one of the received triggers (201).
- This trigger could be a user driven trigger (for example, the user explicitly requests an operation to be performed on the mobile device) or a time based trigger (for example, the process can be configured to run as a service every day or week at a specific day and time) or an event based trigger (for example, the process can be triggered every time when a new media file is captured on the mobile device).
- a user driven trigger for example, the user explicitly requests an operation to be performed on the mobile device
- a time based trigger for example, the process can be configured to run as a service every day or week at a specific day and time
- an event based trigger for example, the process can be triggered every time when a new media file is captured on the mobile device.
- one or more media files to be compressed and backed up are selected based on storage location of media files, and age, size and contents of media files such as files containing text or specific objects or human faces (203).
- the desired resolution for the digital media files on the mobile device is determined (205).
- the system compresses
- Desired backup storage option for the digital media files is determined based on the user preferences (209). This may even involve discovering local storage providers in the same wireless local area network (WLAN) through the use of network messages. One or more original digital media files are then backed up to the desired backup storage option (211). Finally, the original digital media files are deleted from the local storage on the mobile device (213).
- WLAN wireless local area network
- Fig. 3 shows the flowchart for configuring and discovering one or more local backup storage providers in the same wireless local area network to which the target mobile device is connected.
- the configuring step (301) requires the use of custom server applications that run on the desktop or phone to receive media files over a standard network protocol such as TCP or HTTP.
- the configuration step (301) can leverage operating system file sharing (such as that provided by NFS (Network File System) or SMBFS (Samba File System) to do this backup.
- NFS Network File System
- SMBFS Samba File System
- the local storage providers are then discovered automatically by the system by looking up IP addresses adjacent to the IP address of the device on which the proposed system is running by sending network ping messages (305). For each such IP address the type of service (a custom server application or OS based file sharing such as SMBFS), is discovering by trying to connect on specific ports that are used by these services 305). If a connection is established, appropriate metadata is exchanged to find out the type of backup storage provider (desktop or phone) and the type of backup technology (custom server or file sharing) and the list is shown to the user for selecting the appropriate backup storage provider.
- the type of service a custom server application or OS based file sharing such as SMBFS
- Fig. 4 depicts a block diagram of a smartphone 401 suitable for implementing and practicing various embodiments.
- the various embodiments are described herein in terms of managing the storage space on a mobile device such as a smartphone. However, some of the embodiments may be applied to applications for other types of portable electronic devices, including for example, personal digital assistants (PDAs), cellular telephones, portable gaming devices, or even laptop computers.
- PDAs personal digital assistants
- the various embodiments may be applied to yet other devices, so long as they are capable of sharing, viewing and storing digital media files and capable of loading and executing software applications.
- the various embodiments are described as being implemented on a smartphone. Typical features of a smartphone suitable for implementing various embodiments are depicted in FIG. 4.
- the smartphone 401 is wirelessly coupled to a base station 450 of the wireless communication system via a wireless communication link.
- the establishment of a wireless communication link registers the smartphone 401 with the wireless system for communication purposes.
- the smartphone 401 may register with a Mobile Switching Center (MSC) 460 or other like communication system control point connected to either the public switched telephony network (PSTN) or other type of network such as the Internet.
- MSC Mobile Switching Center
- PSTN public switched telephony network
- a certain frequency range, timeslot or other measure of a wireless resource may be allocated to the smartphone 401, so as to allow the smartphone 401 to send and receive telephone calls, pages, text messages or data.
- the smartphone 401 may also be configured to wirelessly connect to other devices through a second, local wireless communications link using the local wireless transmitter/receiver circuitry 411.
- Typical local wireless links include, for example, Bluetooth, infrared, wi-fi or another short range wireless technology.
- the smartphone 401 includes transmitter/receiver circuitry 403 configured to wirelessly send and receive signals to and from a cellular telephone base station 450.
- the smartphone 401 also includes local wireless transmitter/receiver circuitry 411 configured to wirelessly send and receive short range signals such as Bluetooth, infrared or wi-fi.
- the memory 407 is configured to store the requisite logic and parameters to control the transmitter/receiver circuitry 403 and 411, access and control the memory 407, and control the other functions of the smartphone 401.
- the memory 407 is generally integrated as part of the smartphone 401 circuitry, but may, in some embodiments, include a removable memory such as a removable disk memory, integrated circuit (IC) memory, a memory card, or the like.
- the controller 405 and memory 407 also implement the logic and store the settings, preferences and parameters for the smartphone 401.
- the smartphone 401 also has a microphone 419 and speaker 417 for the user to speak and listen to callers.
- the speaker 417 may represent multiple speakers, at least some of which are configured to alert the user to incoming calls or messages.
- a keypad 415 is configured as part of smartphone 401 for dialing telephone numbers and entering data.
- the smartphone 401 may be configured with a data input/output (I/O) port 413 for downloading data, applications, programs and other information.
- the smartphone 401 typically includes a display screen 409 for displaying messages and information about incoming calls or other features of the smartphone that use a graphic display.
- Fig. 5 depicts a computer system suitable for implementing and practicing various embodiments.
- the computer system 500 may be configured in the form of a desktop computer, a laptop computer, a mainframe computer, or any other arrangement capable of being programmed or configured to run a software application, execute code, or otherwise carry out instructions.
- the components of computer system 500 may be located and interconnected in one location, or may be distributed in various locations and interconnected via communication links such as a local or wide area network (LAN or WAN), via the Internet, via the public switched telephone network (PSTN), or other such communication links.
- Other devices may also be suitable for implementing or practicing the embodiments, or a portion of the embodiments. Such devices include personal digital assistants (PDA), wireless handsets (e.g., a cellular telephone or pager), and other such consumer electronic devices preferably capable of being programmed to run a software application, execute code, or otherwise carry out instructions.
- PDA personal digital assistants
- wireless handsets e.g., a cellular telephone or pager
- Computer system 500 includes a processor 501 which may be embodied as a microprocessor, two or more parallel processors, central processing unit (CPU) or other such control logic or circuitry.
- the processor 501 is configured to access an internal memory 503, generally via a bus such as the system bus 521.
- the internal memory 503 may include one or more of random access memory (RAM), read-only memory (ROM), cache memory, or a combination of these or other like types of circuitry configured to store information in a retrievable format.
- the internal memory 503 may be configured as part of the processor 501, or alternatively, may be configured separate from it but within the same packaging.
- the processor 511 may be able to access internal memory 503 via a different bus or control lines (e.g., local bus 505) than is used to access the other components of computer system 500.
- the computer system 500 also includes, or has access to, one or more storage drives 507 (or other types of storage memory) and floppy disk drives 509.
- Storage drives 507 and the floppy disks for floppy disk drives 509 are examples of machine readable (also called computer readable) mediums suitable for storing the final or interim results of the various embodiments.
- the floppy disk drives 509 may include a combination of several disc drives of various formats that can read and/or write to removable storage media (e.g., CD-R, CD-RW, DVD, DVD-R, floppy disk, or the like).
- the computer system 500 may either include the storage drives 507 and floppy disk drives 509 as part of its architecture (e.g., within the same cabinet or enclosure and/or using the same power supply), as connected peripherals, or may access the storage drives 507 and floppy disk drives 509 over a network, or a combination of these.
- the storage drive 507 is often a hard disk drive configured for the storage and retrieval of data, computer programs or other information.
- the storage drive 507 need not necessarily be contained within the computer system 500.
- the storage drive 507 may be server storage space within a network that is accessible to the computer system 500 for the storage and retrieval of data, computer programs or other information.
- the computer system 500 may use storage space at a server storage farm, or like type of storage facility, that is accessible by the Internet 550 or other communications lines.
- the storage drive 507 is often used to store the software, instructions and programs executed by the computer system 500, including for example, all or parts of the computer application program for carrying out activities of the various embodiments of the invention.
- the computer system 500 may include communication interfaces 511 configured to be communicatively connected to the Internet, a local area network (LAN), a wide area network (WAN), or connect with other devices using protocols such as the Universal Serial Bus (USB), the High Performance Serial Bus IEEE-1394 and/or the high speed serial port (RS-232).
- the communication interface 511 may be configured to receive various data and information pertaining to embodiments for management of storage space on mobile devices, such as backing up the original media files to a cloud storage service over the Internet or a desktop or another phone on the same wireless local area network (WLAN).
- the computers system 500 may be connected to the Internet via the wireless router 501, or a wired router or other such access node (not show).
- the components of computer system 500 may be interconnected by a bus 521 and/or may include expansion slots conforming to any of various industry standards such as PCI (Peripheral Component Interconnect), ISA (Industry Standard Architecture), or EISA (enhanced ISA).
- PCI Peripheral Component Interconnect
- ISA Industry Standard Architecture
- EISA enhanced ISA
- the computer system 500 includes one or more user input/output devices such as a keyboard and/or mouse 513, or other means of controlling the cursor represented by the user input devices 515 (e.g., touchscreen, touchpad, joystick, trackball, etc.).
- the communication interfaces 511, keyboard and mouse 513 and user input devices 515 may be used in various combinations, or separately, as means for receiving information and other inputs to be used in carrying out various programs and calculations.
- a display 517 is also generally included as part of the computer system 500.
- the display may be any of several types of displays, including a liquid crystal display (LCD), a cathode ray tube (CRT) monitor, a thin film transistor (TFT) array, or other type of display suitable for displaying information for the user.
- LCD liquid crystal display
- CRT cathode ray tube
- TFT thin film transistor
- the display 517 may include one or more light emitting diode (LED) indicator lights, or other such display devices.
- LED light emitting diode
- most computer systems 500 also include, or are connected to, one or more speakers and microphones 519 for audio output and input. Speech recognition software may be used in conjunction with the microphones 519 to receive and interpret user speech commands.
- the compression step in FIG 3 may be omitted to include just backup and delete. This may be the case when the user has decided that the user does not need those media files even in compressed mode on the mobile device.
- Other steps or activities of the methods disclosed herein may be omitted or performed in a different manner while remaining within the intended scope of the invention.
- the method may be implemented through the addition and manipulation of circuitry to a design, hence is applicable for analysis using logic evaluation frameworks such as logic simulators or formal verification algorithms, as well as hardware-based frameworks such as hardware emulators/ accelerators and even fabricated chips.
- the invention may be implemented with any sort of processing units, processors and controllers (e.g., processor 501 of FIG. 5) capable of performing the stated functions and activities.
- the processor 501 may be embodied as a microprocessor, microcontroller, DSP, RISC processor, two or more parallel processors, or any other type of processing unit that one of ordinary skill would recognize as being capable of performing or controlling the functions and activities described herein.
- a processing unit in accordance with at least one of the various embodiments can operate computer software programs stored (embodied) on computer-readable medium such those compatible with the disk drives 509, the storage drive 507 or any other type of hard disk drive, CD, flash memory, ram, or other computer readable medium as recognized by those of ordinary skill in the art.
- the computer software programs can aid or perform the steps and activities described above for managing storage space of mobile devices through backup and deletion of original media files while ensuring the high availability of those digital media files through compression of those files and retaining the compressed version on the mobile device.
- computer programs in accordance with at least one of the various embodiments may include: source code for compressing the digital media files, source code for determining the optimal resolution of a media file to be shared on a user specified social network or to be viewed on the user’s mobile device screen, source code for discovering backup storage providers in the same wireless local area network (WLAN), source code of backing original media files to one or more cloud storage providers or discovered storage providers in the same local area network, source code for deleting original media files that have already been backed up, source code for executing the steps of compression, backup and delete as a service on a daily basis.
- WLAN wireless local area network
- PLT1 US20080032739A1, Management of digital media using portable wireless devices in a client-server network, https://www.google.com/patents/US20080032739
Abstract
Embodiments disclosed herein provide systems, methods and computer products that provide storage space management and high availability of digital media files on mobile devices. The system presented in this invention helps a user retain a large number digital media files such as photos and videos on the mobile device, by compressing them to a resolution and size that is suitable for sharing over social media networks or for viewing on the device screen without any perceptible loss of quality. The proposed system provides the user with the option of storing the original media files to one or more backup storage options such as one or more storage drives on the cloud or a phone or desktop connected to the same wireless local area network (WLAN) or secondary storage such as SD cards on the mobile device. Once configured, digital media files on a mobile device are then selected based on user specified storage location, size, age and content and then backed up to the desired backup storage provider. The original media files are then compressed and finally deleted from the local storage on the mobile device to save storage space on the mobile device, while ensuring that the user is able to retain a much larger number of media files on the device.
Description
The present invention relates to storage space
management and high availability of digital media on
consumer electronic devices, and more specifically, to
systems, methods and computer products for storage space
management and high availability of digital media on
mobile devices.
Mobile devices have become increasingly
popular in recent years. Mobile devices such as tablets
and smartphones have capabilities to capture and create
digital media such as photos and videos through embedded
camera equipment and associated applications. Examples
of such mobile devices include Apple’s iPhone and iPad,
models from Samsung, LG and other companies that run on
the Android operating system, and other mobile devices
that run on the Windows operating system.
Most mobile devices these days have high
resolution cameras with a resolution of 13 MegaPixels
(MP) or more and these devices can produce very large
photos (of a few MegaBytes or MBs) and videos (of
hundreds of MegaBytes or MBs) with default settings.
However, most mobile devices today come with a storage
space of a few tens of GigaBytes (or GBs) with most
devices typically comprising of 16 GB or 32 GB storage
space. As a result, photos and videos on these devices
need to be continuously backed up and deleted to make
space for newer photos and videos. This degrades the
overall quality of experience for the user since this
reduces the availability of digital media on user’s
device and limits the number of photos and videos that
can stay on the device at any given time. The user may
not have access to a recent photo or video of importance
because it was backed up to cloud to make space for new
photos and videos.
While a number of solutions exist in the prior
art for backing up the digital media files on a mobile
device, most of them backup this digital media on to
their own proprietary cloud storage service which is
accessed over the Internet (for example NPL:1, NPL:2,
NPL:3, NPL:4, NPL:5, NPL:6, NPL:7). Most cloud providers
provide some free storage to their users and then charge
on pay-per-usage basis. This has two drawbacks. First,
this restricts the user to use only a given cloud
storage service which has limited free storage space.
Second, most of the cloud providers do not delete the
original files from the device. This leaves the user
with the difficult task of first figuring out which
media files have been backed up and then deleting those
files from the device to make space for new media files.
There are other solutions (such as NPL8 and NPL9) that
shrink or compress the photos or videos on a mobile
device and even delete the original files to save space
on the mobile device. However, these solutions do not
give any option to the user to save or backup original
media files to a backup location of his/her choice.
Finally, there are mechanisms in some mobile
devices like Apple’s iphone and ipad, that can transfer
all photos from the device to manufacturer’s proprietary
cloud (iCloud) and replace them with smaller previews
(NPL:3). Every time the user clicks on the preview,
mobile device will download the original file from
iCloud for a full view. This has several disadvantages.
First, it requires the user to have an Internet
connection for viewing photos. Second, backups are
stored on to a proprietary cloud with limited free
storage and the user cannot change that. Third, the
previews that are generated on the device are small and
not fit for viewing on the mobile device. Fourth, the
user has no control over which photos get backed up and
which do not. Finally, this mechanism is only restricted
to photos and is not available for other digital media
formats like videos. A similar system is also presented
in PTL:1 with similar drawbacks as mentioned above and
discussed below.
None of the existing solutions allow
continuous selection of media files (both photos and
videos) based on size, age and contents followed by
their compression, backup and deletion which enables
high availability of those media files on the mobile
device while ensuring minimal storage space is used.
Therefore, it is apparent that most of the
current solutions for digital media storage management
on mobile devices have some drawbacks. They result in
more costs for the user either in the form of storage
space costs on the cloud or in the form of mobile data
network usage charges. They also do not provide the user
any flexibility in choosing either the files to be
compressed, backed up and deleted or the backup storage
option to which they should be backed up. They also
reduce the availability of digital media on the devices
to a few very recent media files.
Embodiments disclosed herein address the above
stated needs by providing systems, methods and computer
products that provide storage space management and high
availability of digital media on mobile devices. This
invention builds on the key observation that for most
everyday usage scenarios such as sharing on social media
networks (such as Facebook and WhatsApp) or for viewing
on the device screen, the media files do not need to be
their original size and could be reduced in resolution
to save on storage space. Large resolution medial files
(photos and videos) are typically required for less
frequent usage scenarios such as viewing on a large
television screen or printing on a large sheet of paper.
The system presented in this disclosure can help a user
retain many more digital media files (such as photos and
videos) by compressing them to a resolution and size
that is suitable for sharing over social media networks
or for viewing on the device screen. The proposed system
provides the user with the option of storing the
original media files to a number of backup storage
options which could be either on the cloud or on the
wireless local area network (WLAN) or even on the device
as a secondary storage (Secure Digital (SD) cards). Once
configured, the selected digital media files (either all
files or user specified files based on size (for
example, largest first) and age (for example, oldest
first)) or other user search parameters (such as all
images that have text or all images that feature a
particular face) are uploaded to the desired backup
storage provider. The original media files are then
deleted from the local storage on the mobile device.
Proposed invention can either be implemented
as an application or a service that will run on the
mobile device or can be embedded as part of the mobile
device Operating System itself. Proposed system can also
be configured as a service to run daily at a specific
time to compress original media files, backup original
media files and delete original media files to save
storage space on the mobile device, while ensuring that
the user is able to retain a much larger number of media
files on the for sharing on social media networks or
viewing on the device than that is possible by solutions
present today.
The accompanying drawing, which is
incorporated in and constitutes part of the
specification, illustrate various embodiments of the
invention. Together with the general description, the
drawings serve to explain the principles of the
invention. In the drawings:
Fig. 1 depicts an overview of a system for
storage space management and high availability of
digital media files on mobile devices;
Fig. 2 depicts a method of preliminary
activities for preparing the storage space management
and high availability system for digital media files on
mobile devices;
Fig. 3 is a flowchart of a method of
configuring and discovering a backup storage provider in
the same wireless local area network as the target
mobile device;
Fig. 4 depicts a block diagram of a mobile
device such as a smartphone suitable for use in the
various embodiments; and
Fig. 5 depicts a computer system suitable for
implementing and practicing various embodiments.
The various embodiments disclosed herein
involve systems and methods that can be used to manage
storage space on mobile devices while ensuring high
availability of digital media files on those devices.
Fig. 1 depicts an overview of a system for
managing the storage space on a mobile device while
ensuring high availability of digital media files on
those devices, according to various embodiments
disclosed here. Most of the system modules reside inside
the mobile device (101). Users of the mobile device
input their preferences (103) in terms of desired media
files (storage location to use - primary or secondary
local storage and whether to select all files of a given
content type or files that match a specific search
criteria (for example, all files that are older than the
specified age or all files that are larger than the
specified size or all files that contain text or a human
face)), desired resolution (type of social media network
on which they usually share digital media files, and
viewing screen where they would like to view the media
files) and quality, backup options (one or more cloud
storage drives or a phone or desktop on the wireless
local area network or secondary storage on phone (SD
cards)) and whether to retain the files on the device or
not (deletion of original files).
Trigger module (105) controls when the process
of compressing and backing up one or more media files is
triggered. The trigger may be a user trigger (when the
user opens the application and explicitly requests an
operation to be performed) or time based trigger (when
entire process is configured as a service to run daily
or weekly at a specific time) or an event based trigger
(for example, the process may get triggered whenever a
new media file is added to the mobile device).
Media file selection module (107) implements
the logic to pick the user specified storage location
(primary or secondary (SD cards)) and searches for all
media files that match the user selection criteria. User
selection criteria such as age and size are easily
implemented through available filesystem metadata.
Selection criteria such as files that contain text or
specific objects or human faces (for example, all photos
that have an orange ball or all photos that show two
adult males) are implemented through image and video
processing libraries such as FFMpeg and OpenCV. Media
file selection module can also invoke external viewers
and players to help the user in selection of media files
by viewing them first.
Resolution and quality module (109) shows the
user various compression options through configurable
settings and determines the appropriate resolution and
quality at which the compressed images and videos should
be generated. For example, in one embodiment the
resolutions could be Facebook Home (720 x 960), Facebook
Timeline (404 x 404), Facebook HighRes (2048 x 2048),
WhatsApp (600 x 800) or Optimized for Device (which
would detect the screen size of the mobile device and
use those dimensions as the desired resolution).
Furthermore, compressions algorithms like JPEG
compression take in a quality factor which also
determines the final quality and size of the photos
generated. In one embodiment of this system, this
quality factor can be intelligently calculated based on
the contents of the photos. Similarly, video compression
technologies such as those used by MPEG encoder allow
use of variable bit rate compression through the qscale
parameter. Technologies to compress media files such as
photos and videos are known in the prior art (for
example, services provided by libraries such as FFMpeg
and OpenCV) and the Compression module (111) leverages
such libraries for implementing compression of media
files.
The proposed system provides the user with the
option of storing the original media files to a number
of backup storage options such as a secondary storage
card (SD card) on the device (121) or a cloud drive
provided by a cloud storage provider (123) or another
phone or desktop connected the same WIFI network (125).
A number of cloud storage providers (123) provide free
storage of a few GigaBytes (GBs) such as GoogleDrive
from Google, OneDrive from Microsoft, DropBox, Box or
Flicker. The storage space provided by these different
cloud providers could be aggregated to provide the user
with a much larger backup storage space for zero or very
low cost. Backup Storage Provider Management and
Discovery module (113) manages the metadata for the
aggregated cloud storage and the user does not have to
worry about what files are stored on which cloud storage
provider or whether the same file has been backed up
twice. In this manner, it provides the user with an
abstraction of a virtual filesystem that is in turn
comprised of several remote filesystems (similar to the
system in PLT:2). In another embodiment of the system,
the system may even give the user a choice to pick a
faster cloud backup storage albeit with a slightly lower
read access. This could be important in scenarios where
the user needs to back up media files urgently to free
up device space (for capturing new photos or videos) and
would not mind accessing the backed up media files
later at a bit slower speed. Backup Storage Provider
Management and Discovery module (113) determines these
metrics for each cloud storage provider either through
the course of normal operation or through periodic small
experiments (such as ping network messages).
Different cloud storage drives when combined
with the ability to select media files based on content
such as media containing text or objects or human faces
can be used to backup different kind of media onto
different cloud storage drives. For example, all photos
and videos with text may be backed up onto one cloud
drive and higher resolution and quality setting may be
used for their compression (since photos and videos with
text can be hard to view if their quality falls below a
certain threshold). On the other hand, all photos and
videos with human faces can be backed up onto another
cloud drive and a slightly lower resolution and quality
setting may be used for their compression.
Proposed system also allows another desktop or
phone (125) connected to the same WiFI network to be
used as a storage backup option for media files. In one
embodiment, the Backup Storage Provider Management and
Discovery module (113) enables this functionality
through the use of custom server applications that run
on the desktop or phone to receive media files over a
standard network protocol such as TCP or HTTP. In
another embodiment, the Backup Storage Provider
Management and Discovery module (113) can leverage
operating system file sharing (such as that provided by
NFS (Network File System) or SMBFS (Samba File System)
to do this backup. In both the cases, the local storage
providers are discovered automatically by the system by
looking up IP addresses adjacent to the IP address of
the device on which the proposed system is running. For
each such IP address the type of service (a custom
server application or OS based file sharing such as
SMBFS), is discovering by trying to connect on specific
ports that are used by these services.
Proposed system also allows use of secondary
storage on device (typically a SD card) (121) to be
used as backup storage. Secondary storage like SD cards
provide a very cost effective way to extend storage
space on a mobile device and hence represent a good
backup option that is reliable and fast as well.
Proposed system can use secondary storage on mobile
device (SD cards) as a backup target to move media files
from primary storage (119) to secondary storage (121).
It can also use secondary storage to select media files
and back them up to primary storage thereby providing a
fast and easy-to-use mechanism to transfer media files
between primary and secondary storage on a mobile
device.
Upload module (115) uploads the selected
digital media files to the determined backup storage
provider (either on the cloud or on the wireless local
area network). The original media files are then deleted
by the Deletion Module (117) from the primary local
storage (119) or the secondary storage (121) on the
mobile device.
The proposed system can let the user execute
the combined tasks of compressing the original digital
media file, backing up the original file and deleting
the original file from the device either for all digital
media files of a particular type (Photos, Videos or
Music Files) or for selected individual files that
satisfy user specified criteria such as the largest
files (which will save the most space if backed up and
deleted from the device) or the oldest files (which
either are no longer relevant or have been backed up
already) or files that contain text or specific objects
or human faces.
The proposed system can also be configured to
use one or more actions of compression, backup and
delete in any combination. For example, in certain
scenarios, such as compression of video files, it may be
preferable to skip compression and only use backup and
deletion since compression may take a very long time and
the user may have a requirement to immediately free
space on the device (to capture another image or video).
In other scenarios, it may be preferable to skip backup
since there may not be any network connectivity (for
example in remote areas) or the network costs of backing
up may be too huge. Finally, in some scenarios, it may
be preferable to skip both backup and compression and
only delete the media files because the files may have
already been backed up to some other device through
other means.
Fig. 2 depicts a method of preliminary
activities for preparing the storage space and high
availability system according to various embodiments
disclosed herein. The preliminary activities typically
entail setting up the system and specifying the
parameters, methods and interfaces for practicing the
embodiments. Such preliminary activities are generally
taken care of before beginning the process of providing
storage space management and high availability of
digital media files on a mobile device to users. First,
the process for compression and backup of one or more
media files on a mobile device is started based on one
of the received triggers (201). This trigger could be a
user driven trigger (for example, the user explicitly
requests an operation to be performed on the mobile
device) or a time based trigger (for example, the
process can be configured to run as a service every day
or week at a specific day and time) or an event based
trigger (for example, the process can be triggered every
time when a new media file is captured on the mobile
device). Next, one or more media files to be compressed
and backed up are selected based on storage location of
media files, and age, size and contents of media files
such as files containing text or specific objects or
human faces (203). After this, the desired resolution
for the digital media files on the mobile device is
determined (205). The system then compresses one or more
digital media files based on the determined resolution
(207). Desired backup storage option for the digital
media files is determined based on the user preferences
(209). This may even involve discovering local storage
providers in the same wireless local area network (WLAN)
through the use of network messages. One or more
original digital media files are then backed up to the
desired backup storage option (211). Finally, the
original digital media files are deleted from the local
storage on the mobile device (213).
Fig. 3 shows the flowchart for configuring and
discovering one or more local backup storage providers
in the same wireless local area network to which the
target mobile device is connected. In one embodiment,
the configuring step (301) requires the use of custom
server applications that run on the desktop or phone to
receive media files over a standard network protocol
such as TCP or HTTP. In another embodiment, the
configuration step (301) can leverage operating system
file sharing (such as that provided by NFS (Network File
System) or SMBFS (Samba File System) to do this backup.
Next the IP address of the mobile device in the wireless
local area network (WLAN) is determined through the use
of networking APIs on the mobile device 303). The local
storage providers are then discovered automatically by
the system by looking up IP addresses adjacent to the IP
address of the device on which the proposed system is
running by sending network ping messages (305). For each
such IP address the type of service (a custom server
application or OS based file sharing such as SMBFS), is
discovering by trying to connect on specific ports that
are used by these services 305). If a connection is
established, appropriate metadata is exchanged to find
out the type of backup storage provider (desktop or
phone) and the type of backup technology (custom server
or file sharing) and the list is shown to the user for
selecting the appropriate backup storage provider.
Fig. 4 depicts a block diagram of a smartphone
401 suitable for implementing and practicing various
embodiments. The various embodiments are described
herein in terms of managing the storage space on a
mobile device such as a smartphone. However, some of
the embodiments may be applied to applications for other
types of portable electronic devices, including for
example, personal digital assistants (PDAs), cellular
telephones, portable gaming devices, or even laptop
computers. The various embodiments may be applied to
yet other devices, so long as they are capable of
sharing, viewing and storing digital media files and
capable of loading and executing software applications.
However, for the sake of illustration the various
embodiments are described as being implemented on a
smartphone. Typical features of a smartphone suitable
for implementing various embodiments are depicted in
FIG. 4.
The smartphone 401 is wirelessly coupled to a
base station 450 of the wireless communication system
via a wireless communication link. The establishment of
a wireless communication link registers the smartphone
401 with the wireless system for communication purposes.
For example, the smartphone 401 may register with a
Mobile Switching Center (MSC) 460 or other like
communication system control point connected to either
the public switched telephony network (PSTN) or other
type of network such as the Internet. A certain
frequency range, timeslot or other measure of a wireless
resource may be allocated to the smartphone 401, so as
to allow the smartphone 401 to send and receive
telephone calls, pages, text messages or data. The
smartphone 401 may also be configured to wirelessly
connect to other devices through a second, local
wireless communications link using the local wireless
transmitter/receiver circuitry 411. Typical local
wireless links include, for example, Bluetooth,
infrared, wi-fi or another short range wireless
technology.
The smartphone 401 includes
transmitter/receiver circuitry 403 configured to
wirelessly send and receive signals to and from a
cellular telephone base station 450. The smartphone 401
also includes local wireless transmitter/receiver
circuitry 411 configured to wirelessly send and receive
short range signals such as Bluetooth, infrared or
wi-fi. The memory 407 is configured to store the
requisite logic and parameters to control the
transmitter/receiver circuitry 403 and 411, access and
control the memory 407, and control the other functions
of the smartphone 401. The memory 407 is generally
integrated as part of the smartphone 401 circuitry, but
may, in some embodiments, include a removable memory
such as a removable disk memory, integrated circuit (IC)
memory, a memory card, or the like. The controller 405
and memory 407 also implement the logic and store the
settings, preferences and parameters for the smartphone
401.
The smartphone 401 also has a microphone 419
and speaker 417 for the user to speak and listen to
callers. The speaker 417 may represent multiple
speakers, at least some of which are configured to alert
the user to incoming calls or messages. A keypad 415 is
configured as part of smartphone 401 for dialing
telephone numbers and entering data. The smartphone 401
may be configured with a data input/output (I/O) port
413 for downloading data, applications, programs and
other information. In addition, the smartphone 401
typically includes a display screen 409 for displaying
messages and information about incoming calls or other
features of the smartphone that use a graphic display.
Fig. 5 depicts a computer system suitable for
implementing and practicing various embodiments. The
computer system 500 may be configured in the form of a
desktop computer, a laptop computer, a mainframe
computer, or any other arrangement capable of being
programmed or configured to run a software application,
execute code, or otherwise carry out instructions. The
components of computer system 500 may be located and
interconnected in one location, or may be distributed in
various locations and interconnected via communication
links such as a local or wide area network (LAN or WAN),
via the Internet, via the public switched telephone
network (PSTN), or other such communication links.
Other devices may also be suitable for implementing or
practicing the embodiments, or a portion of the
embodiments. Such devices include personal digital
assistants (PDA), wireless handsets (e.g., a cellular
telephone or pager), and other such consumer electronic
devices preferably capable of being programmed to run a
software application, execute code, or otherwise carry
out instructions.
The computer system 500 also includes, or has
access to, one or more storage drives 507 (or other
types of storage memory) and floppy disk drives 509.
Storage drives 507 and the floppy disks for floppy disk
drives 509 are examples of machine readable (also called
computer readable) mediums suitable for storing the
final or interim results of the various embodiments.
The floppy disk drives 509 may include a combination of
several disc drives of various formats that can read
and/or write to removable storage media (e.g., CD-R,
CD-RW, DVD, DVD-R, floppy disk, or the like). The
computer system 500 may either include the storage
drives 507 and floppy disk drives 509 as part of its
architecture (e.g., within the same cabinet or enclosure
and/or using the same power supply), as connected
peripherals, or may access the storage drives 507 and
floppy disk drives 509 over a network, or a combination
of these. The storage drive 507 is often a hard disk
drive configured for the storage and retrieval of data,
computer programs or other information. The storage
drive 507 need not necessarily be contained within the
computer system 500. For example, in some embodiments
the storage drive 507 may be server storage space within
a network that is accessible to the computer system 500
for the storage and retrieval of data, computer programs
or other information. In some instances the computer
system 500 may use storage space at a server storage
farm, or like type of storage facility, that is
accessible by the Internet 550 or other communications
lines. The storage drive 507 is often used to store the
software, instructions and programs executed by the
computer system 500, including for example, all or parts
of the computer application program for carrying out
activities of the various embodiments of the invention.
The computer system 500 may include
communication interfaces 511 configured to be
communicatively connected to the Internet, a local area
network (LAN), a wide area network (WAN), or connect
with other devices using protocols such as the Universal
Serial Bus (USB), the High Performance Serial Bus
IEEE-1394 and/or the high speed serial port (RS-232).
The communication interface 511 may be configured to
receive various data and information pertaining to
embodiments for management of storage space on mobile
devices, such as backing up the original media files to
a cloud storage service over the Internet or a desktop
or another phone on the same wireless local area network
(WLAN). The computers system 500 may be connected to
the Internet via the wireless router 501, or a wired
router or other such access node (not show). The
components of computer system 500 may be interconnected
by a bus 521 and/or may include expansion slots
conforming to any of various industry standards such as
PCI (Peripheral Component Interconnect), ISA (Industry
Standard Architecture), or EISA (enhanced ISA).
Typically, the computer system 500 includes
one or more user input/output devices such as a keyboard
and/or mouse 513, or other means of controlling the
cursor represented by the user input devices 515 (e.g.,
touchscreen, touchpad, joystick, trackball, etc.). The
communication interfaces 511, keyboard and mouse 513 and
user input devices 515 may be used in various
combinations, or separately, as means for receiving
information and other inputs to be used in carrying out
various programs and calculations. A display 517 is
also generally included as part of the computer system
500. The display may be any of several types of
displays, including a liquid crystal display (LCD), a
cathode ray tube (CRT) monitor, a thin film transistor
(TFT) array, or other type of display suitable for
displaying information for the user. The display 517
may include one or more light emitting diode (LED)
indicator lights, or other such display devices. In
addition, most computer systems 500 also include, or are
connected to, one or more speakers and microphones 519
for audio output and input. Speech recognition software
may be used in conjunction with the microphones 519 to
receive and interpret user speech commands.
Various activities may be included or excluded
as described above, or performed in a different order,
while still remaining within the scope of at least one
of the various embodiments. For example, the
compression step in FIG 3 may be omitted to include just
backup and delete. This may be the case when the user
has decided that the user does not need those media
files even in compressed mode on the mobile device.
Other steps or activities of the methods disclosed
herein may be omitted or performed in a different manner
while remaining within the intended scope of the
invention. The method may be implemented through the
addition and manipulation of circuitry to a design,
hence is applicable for analysis using logic evaluation
frameworks such as logic simulators or formal
verification algorithms, as well as hardware-based
frameworks such as hardware emulators/ accelerators and
even fabricated chips.
The invention may be implemented with any sort
of processing units, processors and controllers (e.g.,
processor 501 of FIG. 5) capable of performing the
stated functions and activities. For example, the
processor 501 may be embodied as a microprocessor,
microcontroller, DSP, RISC processor, two or more
parallel processors, or any other type of processing
unit that one of ordinary skill would recognize as being
capable of performing or controlling the functions and
activities described herein. A processing unit in
accordance with at least one of the various embodiments
can operate computer software programs stored (embodied)
on computer-readable medium such those compatible with
the disk drives 509, the storage drive 507 or any other
type of hard disk drive, CD, flash memory, ram, or other
computer readable medium as recognized by those of
ordinary skill in the art.
The computer software programs can aid or
perform the steps and activities described above for
managing storage space of mobile devices through backup
and deletion of original media files while ensuring the
high availability of those digital media files through
compression of those files and retaining the compressed
version on the mobile device. For example computer
programs in accordance with at least one of the various
embodiments may include: source code for compressing the
digital media files, source code for determining the
optimal resolution of a media file to be shared on a
user specified social network or to be viewed on the
user’s mobile device screen, source code for
discovering backup storage providers in the same
wireless local area network (WLAN), source code of
backing original media files to one or more cloud
storage providers or discovered storage providers in the
same local area network, source code for deleting
original media files that have already been backed up,
source code for executing the steps of compression,
backup and delete as a service on a daily basis. There
are many further source codes that may be written to
perform the various steps, activities and procedures
disclosed above that are intended to lie within the
scope of the various embodiments. Various activities
may be included or excluded as described above, or
performed in a different order, with the rest of the
activities still remaining within the scope of at least
one exemplary embodiment.
The description of the various embodiments
provided above is illustrative in nature and is not
intended to limit the invention, its application, or
uses. Thus, variations that do not depart from the gist
of the invention are intended to be within the scope of
the embodiments of the present invention. Such
variations are not to be regarded as a departure from
the intended scope of the present invention.
Citation List follows:
PLT1: US20080032739A1, Management of
digital media using portable wireless devices in a
client-server network, https://www.google.com/patents/US20080032739
Google Drive auto backup for photos and
videos, https://support.google.com/drive/answer/6093613
Apple iCloud Photo Library, https://www.icloud.com
iOS service to compress existing photos on
an iphone and backup the originals to
iCloud, https://www.imyfone.com/iphone-space-saver/how-to-compress-photos-on-ipad/
Box Drive, https://www.box.com/home
OneDrive, https://onedrive.live.com
DropBox, https://www.dropbox.com
Flickr, https://www.flickr.com
PhotoShrinker app for iphone and ipad, https://itunes.apple.com/us/app/photoshrinker/id928350374
Minima image and video resizer app for
iphone and ipad, https://itunes.apple.com/us/app/minima-image-video-resizer/id604943012
Claims (20)
- A system comprising:
a memory; and
at least one processor coupled to said memory and operative to manage storage space on a mobile device and provide high availability of stored digital media files on the mobile device by executing one or more of the following steps:
selecting the desired media files based on their age, size and contents;
compressing the selected media files to an appropriate resolution and quality that allows them to be viewed on the mobile device or shared on social media without any perceptible loss of quality;
backing up the selected original media files on the mobile device to one or more of a plurality of cloud storage drives or a phone or desktop connected to the same wireless local area network or secondary storage on the mobile device; and
deleting the selected original media files on the mobile to save storage space. - System of claim 1, wherein the said selection of media files is done based on either the time when the media files were added to the mobile device or their size or their contents such as media files that contain text or specific objects or human faces.
- System of claim 1, wherein the said compression of selected media files is done by using either a user specified setting for resolution and quality or by automatically determining the resolution and quality required for the given mobile device.
- System of claim 1, wherein the backup of selected original media files to one or more storage drives on the cloud comprises of aggregating the storage space provided by different cloud providers to provide the user with a much larger backup storage space at very low cost.
- System of claim 1, wherein the system also manages the metadata for the aggregated cloud storage to keep track of files stored on each cloud storage provider or whether the same file has been backed up twice.
- System of claim 1, wherein the system allows another desktop or phone connected to the same wireless local area network or a secondary storage card (such as a SD card) on the device to be used as a storage backup option for media files.
- System of claim 1, wherein the storage providers on wireless local area network are discovered automatically by the system by looking up IP addresses adjacent to the IP address of the device on which the proposed system is running and discovering the type of service (a custom server application or OS based file sharing such as SMBFS) by trying to connect on specific ports that are used by these services.
- System of claim 1, wherein the steps of selection, compression, backup and deletion of media files are triggered either through a user action such as a user requesting a specific operation or through a timer such as a service configured to run daily at a specific time or through an event such as the addition of a new media file.
- A method performed by one or more computing devices for managing storage space on a mobile device and providing high availability of stored digital media files on the mobile device by executing one or more of the following steps:
selecting the desired media files based on their age, size and contents;
compressing the selected media files to an appropriate resolution and quality that allows them to be viewed on the mobile device or shared on social media without any perceptible loss of quality;
backing up the selected original media files on the mobile device to one or more of a plurality of cloud storage drives or a phone or desktop connected to the same wireless local area network or secondary storage on the mobile device; and
deleting the selected original media files on the mobile to save storage space. - Method of claim 9, wherein the said selection of media files is done based on either the time when the media files were added to the mobile device or their size or automatically determining their contents such as media files that contain text or specific objects or human faces.
- Method of claim 9, wherein the said compression of selected media files is done by using either a user specified setting for resolution and quality or by automatically determining the resolution and quality required for the given mobile device.
- Method of claim 9, wherein the backup of selected original media files to one or more storage drives on the cloud comprises of aggregating the storage space provided by different cloud providers to provide the user with a much larger backup storage space at very low cost.
- Method of claim 9, wherein the said backing up also manages the metadata for the aggregated cloud storage to keep track of files stored on each cloud storage provider or whether the same file has been backed up twice.
- Method of claim 9, wherein the said backing up gives the user a choice to pick a faster cloud backup storage albeit with a slightly lower read access or the option of backing up to another phone or desktop on the same wireless local area network or onto a secondary storage (SD card) on phone if the network access to the cloud backup drive is determined to be too slow.
- Method of claim 9, wherein another desktop or phone connected to the same wireless local area network or a secondary storage card (such as a SD card) on the device can be used as a backup storage option for media files.
- Method of claim 9, wherein another desktop or phone connected to the same wireless local area network is used as a backup storage option through the use of custom server applications that run on the desktop or phone to receive media files over a standard network protocol such as TCP or HTTP or through the use of operating system file sharing (such as that provided by NFS (Network File System) or SMBFS (Samba File System).
- Method of claim 9, wherein the storage providers in the same wireless local area network are discovered automatically by looking up IP addresses adjacent to the IP address of the device on which the proposed system is running and discovering the type of service (a custom server application or OS based file sharing such as SMBFS) by trying to connect on specific ports that are used by these services.
- Method of claim 9, wherein the steps of selection, compression, backup and deletion of media files are triggered either through a user action such as a user requesting a specific operation or through a timer such as a service configured to run daily at a specific time or through an event such as the addition of a new media file.
- Method of claim 9, wherein any one or more of the steps of selection, compression, backup and deletion of media files can be configured to be skipped and used in any combination with each other.
- A computer program product comprising a non-transitory computer readable medium on which is stored program of instructions for managing storage space on a mobile device and providing high availability of stored digital media files on the mobile device by executing one or more of the following steps:
selecting the desired media files based on their age, size and contents;
compressing the selected media files to an appropriate resolution and quality that allows them to be viewed on the mobile device or shared on social media without any perceptible loss of quality;
backing up the selected original media files on the mobile device to one or more of a plurality of cloud storage drives or a phone or desktop connected to the same wireless local area network or secondary storage on the mobile device; and
deleting the selected original media files on the mobile to save storage space.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201641019599 | 2016-06-07 | ||
IN201641019599 | 2016-06-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017212499A1 true WO2017212499A1 (en) | 2017-12-14 |
Family
ID=60577721
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IN2017/050227 WO2017212499A1 (en) | 2016-06-07 | 2017-06-06 | Systems and methods for storage space management and high availability of digital media on mobile devices |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2017212499A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021064102A1 (en) * | 2019-10-01 | 2021-04-08 | Assa Abloy Ab | Connection and service discovery for fine ranging applications |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140297586A1 (en) * | 2013-03-27 | 2014-10-02 | Pantech Co., Ltd. | Device and method for cloud file management |
US20160064036A1 (en) * | 2014-08-29 | 2016-03-03 | Coban Technologies, Inc. | Cloud information storage, access, and security |
-
2017
- 2017-06-06 WO PCT/IN2017/050227 patent/WO2017212499A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140297586A1 (en) * | 2013-03-27 | 2014-10-02 | Pantech Co., Ltd. | Device and method for cloud file management |
US20160064036A1 (en) * | 2014-08-29 | 2016-03-03 | Coban Technologies, Inc. | Cloud information storage, access, and security |
Non-Patent Citations (1)
Title |
---|
ZIBREG CHRISTIAN, BEST WAYS TO STORE PHOTOS IN THE CLOUD IDOWNLOADBLOG.COM, 16 January 2016 (2016-01-16), XP055446077, [retrieved on 20171008] * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021064102A1 (en) * | 2019-10-01 | 2021-04-08 | Assa Abloy Ab | Connection and service discovery for fine ranging applications |
EP3864872A1 (en) * | 2019-10-01 | 2021-08-18 | Assa Abloy Ab | Connection and service discovery for fine ranging applications |
US11875209B2 (en) | 2019-10-01 | 2024-01-16 | Assa Abloy Ab | Connection and service discovery for fine ranging applications |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3210371B1 (en) | Camera application | |
US9274779B2 (en) | Method for installing application in portable terminal | |
US10108626B2 (en) | Proactively clearing digital storage | |
KR102124188B1 (en) | Electronic device and method for processing image | |
US9124548B2 (en) | Method for uploading media file, electronic device using the same, and non-transitory storage medium | |
JP2014501956A (en) | Data synchronization in distributed computing environments | |
US11647132B2 (en) | Communication terminal, method for controlling communication terminal, communication system, and storage medium | |
US20150350371A1 (en) | Caching and syncing mechanisms for a cloud library | |
US9967473B2 (en) | Information processing apparatus, information processing method, and program | |
CN103475572A (en) | Method, device and system for sending multiple pictures in instant messaging application | |
US9747945B2 (en) | Method for creating a content and electronic device thereof | |
US20130335594A1 (en) | Enhancing captured data | |
US20170251504A1 (en) | Apparatus and method for requesting and transferring contents | |
CN113596175A (en) | Scene synchronization method, terminal, server and system | |
US20160267624A1 (en) | Information terminal and image display system | |
CN113626626A (en) | Multi-person shared photo storage method, device and equipment | |
WO2017212499A1 (en) | Systems and methods for storage space management and high availability of digital media on mobile devices | |
US8437744B1 (en) | Methods and devices for remote processing of information originating from a mobile communication device | |
CN107168648B (en) | File storage method and device and terminal | |
US20120062764A1 (en) | Data management device and recording medium | |
US10313625B2 (en) | Method, apparatus, and storage medium for video file processing | |
US8824854B2 (en) | Method and arrangement for transferring multimedia data | |
KR102095666B1 (en) | Information input methods, devices, programs and storage media | |
US20240119024A1 (en) | Communication apparatus and control method | |
JP6375839B2 (en) | Terminal device, information processing system, information transmission method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17809855 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17809855 Country of ref document: EP Kind code of ref document: A1 |