User Tools

Site Tools


netmdlinux

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
netmdlinux [2009/04/24 09:34] – Add info on US Patent 7228568 describing NetMD file upload. marcusnetmdlinux [2010/03/13 22:43] megadiscman
Line 1: Line 1:
 ====== NetMDLinux ====== ====== NetMDLinux ======
 +
 +===== Software =====
  
 There are several orphanend open-source projects aiming to support NetMD Walkman devices under Linux, namely: There are several orphanend open-source projects aiming to support NetMD Walkman devices under Linux, namely:
  
-libnetmd: A library to connect to NetMD Walkman - [[http://libnetmd.sourceforge.net/]] and [[http://www.unmaintained-free-software.org/wiki/Libnetmd]]+  * libnetmd: A library to connect to NetMD Walkman - [[http://libnetmd.sourceforge.net/]] and [[http://www.unmaintained-free-software.org/wiki/Libnetmd]] 
 +  * Patch for libnetmd to add support for MZ-RH1 and -RH10, also minor casting fixes: [[http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/0001-cast-fixes-MZ-NH600-MZ-RH1-MZ-RH10-support-adde.patch]] 
 +  * gnetmd: A GUI for libnetmd - [[http://www.pdr.cx/projects/gnetmd/main]]/ 
 +  * Xmd: NetMD software for Mac OS X - [[http://www.sorted.org/Xmd/]] 
 +  * WinNMD: non-free Windows software - [[http://winnmd.net/]] 
 +  * FreeMD: how the NetMD protocol works, and a shell to set track titles etc. 
 +    * [[http://www.marcus-brinkmann.de/files/freemd.html]] 
 +    * [[http://software.marcus-brinkmann.org/projects/show/freemd]] 
 +    * bzr branch http://bzr.marcus-brinkmann.org/freemd/trunk/ freemd 
 +  * <del>There is a funding project, supporting a resume of the development of the libnetmd software, see [[http://www.cofundos.org/project.php?id=122]].</del>
  
-Patch for libnetmd to add support for MZ-RH1 and -RH10, also minor casting fixes: [[http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/0001-cast-fixes-MZ-NH600-MZ-RH1-MZ-RH10-support-adde.patch]] +===== Official Specs and Patents =====
- +
-gnetmd: A GUI for libnetmd - [[http://www.pdr.cx/projects/gnetmd/main]]/ +
- +
-Xmd: NetMD software for Mac OS X - [[http://www.sorted.org/Xmd/]] +
- +
-WinNMD: non-free Windows software - [[http://winnmd.net/]] +
- +
-FreeMD: how the NetMD protocol works, and a shell to set track titles etc.  +
-  * [[http://www.marcus-brinkmann.de/files/freemd.html]] +
-  * [[http://software.marcus-brinkmann.org/projects/show/freemd]] +
-  * bzr branch http://bzr.marcus-brinkmann.org/freemd/trunk/ freemd+
  
 The NetMD protocol is based on the AV/C Digital Interface Command Set, an 1394 TA specification: The NetMD protocol is based on the AV/C Digital Interface Command Set, an 1394 TA specification:
 +
   * 2004006 AV/C Digital Interface Command Set General Specification Version 4.2   * 2004006 AV/C Digital Interface Command Set General Specification Version 4.2
   * 2004005 AV/C Tape Recorder/Player Subunit Specification 2.4   * 2004005 AV/C Tape Recorder/Player Subunit Specification 2.4
   * 2002013 AV/C Descriptor Mechanism 1.2   * 2002013 AV/C Descriptor Mechanism 1.2
-  * 2002002 AV/C Disc Subunit - Generic Recordable Video Disc Media Type Specification 1.0+  * <del>2002002 AV/C Disc Subunit - Generic Recordable Video Disc Media Type Specification 1.0</del> For MD, 1998014 is relevant instead of this document. 
 +  * {{:avc_disc10.pdf|1998013 AV/C Disc Subunit Generic Specification 1.0}} 
 +  * [[http://users.physik.fu-berlin.de/~glaubitz/linux-minidisc/AVC_DiscMDAudio10.pdf|1998014 AV/C Disc Media Type Specification - MD Audio]] 
 + 
 +Here is an older document by the TradeAssociation: 
 + 
 +  * {{:avc_general_30.pdf|1998003 AV/C Digital Interface Command Set General Specification Version 3.0}} 
 +  * The Sony patent [[https://wiki.physik.fu-berlin.de/linux-minidisc/lib/exe/fetch.php?media=us7437770.pdf |US7437770]] describes in details the entire communication between a NetMD device and a PC starting with the exclusive login and retrieving of the track titles. The data exchange commands are shown in the form control/response frames (Figures 33-49). It's quite easy to understand the stuff, especially by working in conjuction with the AV/C documents mentioned above. 
 +  * Loading files on the MiniDisc Player, in particular the role of the EKB, is described in the [[http://www.marcus-brinkmann.de/files/pat7228568.pdf|US Patent 7228568]] (retrieved via [[http://www.pat2pdf.org/]]), which contains some hilariously bad cryptography (and is in any other way utterly trivial).  This answers many, but not all, questions about the file transfer logs. 
 +  * YAP: [[http://www.marcus-brinkmann.de/files/pat7362870.pdf|US Patent 7362870]].  Also noteworthy may be US Patent 20050246286, which seems to document how OpenJukeBox manages licenses. 
 +===== Other Information ===== 
 + 
 +  * More protocol info: http://bertrik.sikken.nl/netmd/ 
 +  * Upload of ATRAC SP with RH1: [[RH1AtracUpload|RH1 upload dump]] 
 +  * NetMD firmware: [[http://esi.sony.ca/esupport/esupport/NetMD/]]
  
-Loading files on the MiniDisc Player, in particular the role of the EKB, is described in the [[http://www.marcus-brinkmann.de/files/pat7288568.pdf US Patent 7228568]] +===== The EKB-Format =====
-(retrieved via [[http://www.pat2pdf.org/]], which contains some hilariously bad cryptography (and is in any other way utterly trivial).  This answers many, but not all, questions about the file transfer logs.+
  
-TODOCheck other Sony patents.+The EKB format is mostly revealed now.  There is now a [[Dump EKB]] tool that can be used to display EKB files.  Here is an example output (the unique keys have been blacked out): 
 +<code> 
 +./dump-ekb.py 00010001.ekb 
 +EKB  00010001.ekb 
 +Unknown 1/2:  0x1 0x1 
 +Reserved:     0x0 
 +Unknown 3:    0ff4xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
 +Tag Length:   0x1c 
 +Data Length:  0x130 
 +Sig Length:   0x134 
 +Tags:         xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
 +Data:         bf71xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K000000000,KR) 
 +              01caxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K000000010,KR) 
 +              2c4bxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000110,KR) 
 +              a8ecxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100000,K0000000110) 
 +              7d5bxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100001,K0000000110) 
 +              e721xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100010,K0000000110) 
 +              24aaxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100011,K0000000110) 
 +              e664xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100100,K0000000110) 
 +              be2dxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100101,K0000000110) 
 +              846axxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100110,K0000000110) 
 +              5695xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000001100111,K0000000110) 
 +              792exxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000000100000000,KR) 
 +              0679xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000001010,KR) 
 +              3ebexxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000001100,KR) 
 +              5649xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000001110,KR) 
 +              9913xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000010000,KR) 
 +              ac8cxxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000010010,KR) 
 +              dd10xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K0000000010000010100,KR) 
 +              d0c9xxxxxxxxxxxxxxxxxxxxxxxxxxxx Enc(K00000000100000010000,KR) 
 +Sig Unknown:  00000017020000000100 
 +Sig Len:      0x28 
 +Sig:          7b51xxxxxxxxxxxxxxxxxxxxxxxxxxxx 
 +              xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
 +              xxxxxxxxxxxxxxxx 
 +</code>
  
-There is a funding project, supporting a resume of the development of the libnetmd software, see [[http://www.cofundos.org/project.php?id=122]].+===== Links =====
  
 +  * [[http://minidisc.org/NetMD_faq.html]]
netmdlinux.txt · Last modified: 2010/03/19 17:23 by megadiscman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki