d2d Copy and Categories

A few thoughts about how do deal with device-to-device copying and categories:

Universal Categories and Subcategores

  • We need universal categories.
  • We probably want the ability to have subcategories that some devices use and some don't.
  • Copying a subcategory to a device that only has the main category but not the subcategory, might just insert the package into the main category.
  • Copying a subcategory to a device with other subcategories will copy in the new subcategory.
  • Copying a subcategory to a device without either will copy the main category but keep the subcategory info on the device.
  • This all seems to me that universal category info should live with the package and not just be determined by what list it is in.
  • Should the universal category be part of filename?
  • .a18 files for categories should have language appendix in filename, such as health-en.a18 or health-dg.a18.
  • Subcategories could simply be identified by list filename: {main}-{sub}.txt with audio files being {main}-{sub}-{lang code}.a18

UI to Begin Copy

  • Selection for copying could happen while package is playing. Press black/select button during play. Next options are for copy or delete.
  • During category selection, the black/select button could have the same behavior with copying entire category or deleting category, but may also include the option to create a new category.

Uniqueness of Package Identity

  • To avoid duplicate copies, should unique id be in filename or control track info? This would require each device has a unique id that adds itself to filename or control track or something. Filename might be most reliable if short. Getting (pseudo-)unique id could be generated on device — but since each device will start with being connected to a computer when loaded with initial content/code, maybe laptop can generate unique id, maybe mostly based on time generated.
  • Before copy, check that filename doesn't already exist. Maybe even play the first few seconds of file that has same name and see if it should be renamed.

Simple Case for now

  • Assume unique filename
  • Assume common categories
  • Press black button during play, press right arrow to choose copy to another device
  • Enter Host mode, waiting for device
  • Copy a:\\user\{filename}.* to b:\\user* Add {filename} to b:\\lists\{listname}.txt

Add Category

  • consider moving files into folders for each category?