User Tools

Site Tools


tasks

This is an old revision of the document!


Tasks

The following tasks are pending and need some attention. Please see also this extra wiki page for GoogleSummerofCode

  • test whether build instructions for Linux, Windows and Mac still apply and update if necessary
  • write build instructions for FreeBSD and Haiku
  • rewrite section NetMDPython with more detailed instructions; including NetMD uploads with the MZ-RH1 and also mentioning ATRAC1/3 support in ffmpeg
  • build packages for Debian (setup PPA on Launchpad) and Fedora
  • create packages of NetMDPython for Ubuntu and upload to PPA
  • create static binary version for MacOS-X (PPC and x86) for one-click install with fancy program icon
  • create installer package for Windows

libhimd

  • use the play order list to present the right track numbers to the user. Rhe play order list is at offset 256 in the track index, consists of 16 bit words in big endian encoding. The first word is the number of tracks, the following words map the logical track numbers (1..maxnum) to the track info entries. The user should be presented the indices into the play order list instead of the record number of the track info entry (as is now) Perhaps a API revamp (renaming some stuff) is useful now that there is the concept of track numbers (in the play order table) and track slots (in the track table, the only concept supported earlier)
  • implement titling
  • implement an write-stream to add audio tracks to the atdata0X-file
  • implement an MP3 writing stream on top of that
  • implement grouping
  • implement support for libscg to allow disk formatting and erase
  • write documentation for libhimd, use Doxygen (http://www.stack.nl/~dimitri/doxygen/) to document code first

qhimdtransfer

  • redesign about dialog, see: about_dialog
  • integrate possibility to create new folder in directory browser for upload; usually one creates a new folder to store tracks to be uploaded
  • add option dialog for various settings:
    • enable/disable appending of track number to filename for upload; e.g. "01 - Bla - Blub.mp3" and "Bla - Blub.mp3"
    • set display language
    • option to enable upload of non-supported tracks (i.e. unknown encryption) (not necessary anymore)
  • show tracks on HiMD in treeview instead of listview
    • show bitrate and group-information in treeview (group information needs libhimd support)
    • group HiMD-groups in treeview (needs libhimd support)
    • display groups
    • edit groups
  • make use of statusbar to display mountpoint and space-left/overall space of HiMD
  • write help-file (alternatively use Qt's "Whats this ?")
  • implement MP3 upload
  • implement PCM upload (NOTE: PCM Upload is not supported for PCMs with non-constant keys yet, i.e. non MZ-RH1, output files lack WAV-header)
  • implement ATRAC3 upload (NOTE: The same as for PCM also applies for ATRAC3/ATRAC3+)
  • use libsox to convert raw PCM into WAV-format
  • implement MP3 download (needs libhimd support, implement MP3 download using titling and the MP3 stream)
  • implement PCM download (needs libhimd support)
  • implement ATRAC3 download (needs libhimd support)
  • later versions should employ folder-browser for filesystem for upload/download (similar to SonicStage)
  • allow drag and drop for upload/download of files
  • detect connected HiMD-Walkman automatically (platform dependent) and display model number of HiMD-Walkman in status bar (e.g.: HiMD device: Sony MZ-RH10) via USB-IDs
  • run upload/download in extra threads, use Qt multithreading; display progress in status-bar
  • display MAC/Key in tracks list or alternatively "Encrypted: Yes / No"
  • show status-window after download: 4 tracks(s) successully uploaded. 2 tracks(s) could not be uploaded: 2, 8.
  • export tracklist to text-files (HTML or XML for example, Qt has XML-Support)
  • remember last (upload-)directory
  • use QSettings to store settings (like last directory used or language)
  • use QtLinguist to translate (Translation) QHiMDTransfer into German, Norwegian, Swedish, Japanese, French, Italian, Spanish, Arabic, Finnish, Danish, Russian, Polish, Greek
  • items in list should be right-clickable
  • adjust column width upon loading disk index
  • use platform-indepent SCSI library (libscg) for:
    • reading discid (countercheck with mclist0x.hma-file)
    • formatting HiMD → already successfully performed on Linux (see himdformat.c)
    • get/set date/time and display in statusbar
    • allow/prevent medium-removal (lock MD during transfer)
    • use DRM Read/Write future OpenMG-compatible transfer for ATRAC3 (?)
    • implementing upload of ATRAC-SP on Sony MZ-RH1
  • import date and time of recording and display in QHiMDTransfer when possible
  • allow to enable/disable display of columns in listview of HiMD contents
  • write help with qthelp; check out http://qt.nokia.com/doc/4.6/qthelp-framework.html
  • bugs:
    • does not check any error-codes from libhimd
    • default directory for upload/connect should be system-indepent; hardwiring "/home" is not a good idea for a Windows port (unless Qt somewhat matches /home to a different directory in Windows) (Qt is smart enough to do that for us)
    • connect-button should check whether the chosen directory containts a HMDHIFI.IND file in the root directory to verify the selected folder contains actually HiMD-data
    • all buttons except "Connect" should be disabled unless a HiMD has been selected with "Connect"
    • lacks an icon for "About" in the menues
    • on Linux, the directory for the HiMD device stored with QSettings cannot be used; when clicking "Connect", simply clicking "Open" does not connect to the HiMD unless a different directory is clicked, then the device path again. (This is a low level Gtk bug getting exposed by Qt if running in QGtkStyle, not a QHiMDTransfer bug, we still might work around, it only happens with Qt in the Gtk style)
    • filesystem changes (e.g. creating a new folder) are not seen in qhimdtransfer's treeview unless the software is restarted
    • choosing a track, clicking "Upload" in the toolbar, then "Cancel" in the choose directory dialog, will still initiate a transfer dialog (even though "Cancel") was chosen in the "Chose direcory" dialog
    • "Upload" can still be clicked even if no tracks are selected for upload
    • clicking "Connect", then "Cancel" to abort the process of selecting the folder for the HiMD device will still cause "qhimdtransfer" trying to open the HiMD device
    • does not build proper default architecture on MacOS/PPC (tries to build i386 on PPC which eventually fails during linking) - likely to be a bug in Qt: http://bugreports.qt.nokia.com/browse/QTBUG-6150
    • Python-NetMD fails to load libusb on MacOSX, see https://lists.fu-berlin.de/pipermail/linux-minidisc/2010-February/msg00024.html and follow-ups

netmd

  • implement putting tracks into subdirectories based on grouping in upload.py and dump_md.py

other

  • rename himdtest to himddump; move into basictools folder; include in Ubuntu packages
  • rename basictools to tools
  • create tools.pro qmake-qt4 project for tools/
  • include himdformat in Ubuntu packages
  • rename minikey to himddiskid
  • add –help option to himddump, himddiskid and himdformat (http://www.gnu.org/s/libc/manual/html_node/Getopt.html)
  • create manpages for himddump, himddiskid and himdformat
tasks.1276534701.txt.gz · Last modified: 2010/06/14 16:58 by glaubitz

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki