Re: multi-deck players?
Marcus Brinkmann <[email protected]>
| Newsgroups | gmane.comp.audio.netmd.devel |
|---|---|
| Message-ID | <20030117232101.GA30433@ulysses> |
On Fri, Jan 17, 2003 at 01:15:24PM +0000, Pete Bentley wrote:
> On Fri, Jan 17, 2003 at 02:07:46PM +0100, Marcus Brinkmann wrote:
> > if anybody who wants to help out can get hands on a multi-deck mini-disc
> > player that is Net MD capable
>
> Does such a beast even exist?
As if I knew :)
> > There is a strong indication that the NetMD protocol supports multi-deck
> > players, but it's not obvious to me how it works out yet.
>
> I guess they may have included it in the protocol "for future
> expansion". But seeing as most of the commands don't have an
> obvious field for addressing multiple decks (subunits) within
> a single unit, I guess they'd have to use a more global scheme,
> ie "select subunit 1" which makes all commands go to subunit 1
> until another select command arrives.
>
> And if a multi-deck unit *did* exist, wouldn't it make more sense
> for it to appear on the USB bus as two independant NetMD units?
I am not sure. Note that NetMDAPI.dll has a function called "DiscCount"
which is actually our disk present function.
And the recording related functions in the COM API of NetMD.dll seem to have
a deck argument:
HRESULT _stdcall Eject([in] long Deck);
[helpstring("Method IsEjected")]
HRESULT _stdcall IsEjected(
[in] long Deck,
[out] long* pEjected);
[helpstring("Method Record")]
HRESULT _stdcall Record([in] long Deck);
[helpstring("Method RecPause")]
HRESULT _stdcall RecPause([in] long Deck);
[helpstring("Method RecUnpause")]
HRESULT _stdcall RecUnpause([in] long Deck);
[helpstring("Method RecStop")]
HRESULT _stdcall RecStop([in] long Deck);
[helpstring("Method PutRecMode")]
HRESULT _stdcall PutRecMode(
[in] long Deck,
[in] _OPD_RECMODEINFO* pData);
[helpstring("Method GetRecMode")]
HRESULT _stdcall GetRecMode(
[in] long Deck,
[out] _OPD_RECMODEINFO** ppData);
Now, I certainly don't know enough yet to make much sense into that. Maybe
pondering the assembler code further will help. But for now I am going to
concentrate on the more applicable issues like character sets and the like.
From my reverse engineering efforts I am figuring out the details faster
than I can write them down...
Oh, and, Pete, one second has 44100/512 = 86.132812 frames (referring to an
older post by you).
Thanks,
Marcus
--
`Rhubarb is no Egyptian god.' GNU http://www.gnu.org [email protected]
Marcus Brinkmann The Hurd http://www.gnu.org/software/hurd/
[email protected]
http://www.marcus-brinkmann.de/