Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Hi-MD #3

Closed
Invictaz opened this issue Apr 18, 2020 · 11 comments
Closed

Support for Hi-MD #3

Invictaz opened this issue Apr 18, 2020 · 11 comments

Comments

@Invictaz
Copy link

Can you support Hi-MD?

-MP3download.c is already in the original linux-minidisc repo. Standard XOR encryption. Works with Zadig driver.
-ATRAC3 / 3+ will be harder since Atracdenc only supports Atrac3 for now, not yet 3+ (Hi-SP / Hi-LP)

@cybercase
Copy link
Owner

Hello @Invictaz
Unfortunately from the reports I received it seems that Hi-MD devices are part of a protected usb class for the WebUSB standard.
This means that the Browser is not be able to access the HiMD device when you switch your device mode from standard to Hi-MD.
I don't know if this can be fixed or if there's a workaround, and cannot experiment on that because I do not own a HiMD device.

@Invictaz
Copy link
Author

@cybercase Would like to see some confirmation as my device just sends standard SCSI commands.
According to Sony ""Hi-MD" complies with USB format's Mass Storage Class".
AFAIK the HI-MD device is seen in Windows Explorer.

@cybercase
Copy link
Owner

AFAIK the HI-MD device is seen in Windows Explorer.

That's exactly the problem, I fear. The device is claimed by the OS, preventing the browser from accessing it.

However, I'm not sure how to help since I don't have a mz-rh1 for testing.

The report I received came from a user in this thread. http://forums.sonyinsider.com/topic/30623-the-web-minidisc-application ... Unfortunately the forum is currently not working, but should be back in the next days.

By the way, support for hi-md can't be added directly to this project. It should be ported from the original linux-minidisc into a new js library, then brought into WebMiniDisc. Currently I can't make any plan for this.

@Invictaz
Copy link
Author

Invictaz commented Apr 22, 2020

The explorer should be closed when SonicStage access this device. Another option is to close it yourself. I will check it once the forum is back up. According to chrome://device-log/ it appears that it is not implemented, rather than not possible. It is just a missing device descriptor.

image

So this protected class is not true. I removed some serials for obvious reasons.

image

@Invictaz
Copy link
Author

This is directly from chrome://usb-internals

image

image

image

@Invictaz
Copy link
Author

@cybercase Do you have more what you need after this diagnosis?

@cybercase
Copy link
Owner

Sorry, I'm not planning to work on HiMD support for now.
It might change in the future, but right now I can't work on this.

@Invictaz
Copy link
Author

That's too bad as the devices become rare and older.

@Invictaz
Copy link
Author

Invictaz commented Jan 3, 2021

@deenine could you please look into if it is a device descriptor error which gives the "protected usb class" error or another fault?

@deenine
Copy link

deenine commented Jan 3, 2021

@cybercase Himd is interesting, it uses a directory structure called HMDHIFI to store himd track data, which is mounted on a regular filesystem - a set of test data is here: https://github.com/linux-minidisc/linux-minidisc/tree/master/testdata/himd If you build himdcli and run something like himdcli <path to the test data above> tracks it will print a track listing.

It operates in two modes (based on my reading from the linux-minidisc wiki), the first is operating on the directory structure on the mounted filesystem, the second is unmounting that filesystem and using a scsi-over-usb protocol to access the device directly.

Himdcli exposes the following functionality when working with the mounted filesystem:

  • list tracks/disc info
  • transfer mp3 tracks to device
  • transfer hi-sp/hi-lp/lpcm/mp3 tracks to computer

It does not support:

  • titling discs or tracks
  • erasing discs or tracks
  • transfering other formats than mp3

I believe this functionality is limed to 2nd/3rd generation himd devices, MZ-RH* etc.

Assuming there is the option to write to a filesystem, the above functionality could be included in web minidisc without the protected mode issues - I have written a patch to add this to platinum-md, maybe see if anyone is interested in that before bothering to port the himd code, I am still not convinced this is useful.

@cybercase
Copy link
Owner

@deenine Thank you very much for sharing this information.

Unfortunately I'm not really working on hi-md support because of hi-md devices belongs to a "protected usb device class" that is not allowed to be accessed by the browser. Moreover, I don't own any hi-md player.

By the way, if I'll ever put my hands on a hi-md device, I'll definitely fiddle with that :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants