I just created a "PASC" file for DCC-studio without DCC2WAV

Just now, I successfully converted a music file straight to a format that can be played by the DCC-Studio program, and can be recorded to DCC cassette. I did this WITHOUT THE MUSIC EVER GOING THROUGH A DCC RECORDER OR BEING RECORDED ON DCC TAPE BEFORE.

As far as I know, this is the first time that a DCC audio stream has ever been generated (except maybe at a Philips lab) without a DCC recorder and without the dcc2wav software. And it’s a high quality 48 kHz sample!

What I did was:

  1. Downloaded a sample file from Sony (as a 96 kHz 24 bit FLAC file)
  2. Trans-coded the file to MPEG 1 layer 1 (I did this a while ago so I don’t remember which tool I used but I think it was mjpegtools)
  3. Inserted two bytes at the beginning of the file with a hex editor so that DCC-studio would recognize it, and renamed the file to have an .MPP extension
  4. Copied an existing .LVL file to match the filename of the .MPP file (without .LVL file, DCC studio won’t play the file and crashes). The screen won’t match the audio but it will work fine.
  5. Copied the files into the audio directory of DCC Studio
  6. Started DCC studio with the configuration set such that it shows orphan files on startup, and generates a .TRK file when asked
  7. Opened the TRK file in an edit window, and played the file!

I’ll have to try and reverse-engineer how to create .LVL files (and ideally, .TRK files) for DCC-studio but it should be possible to just record what I have to tape and read it back to work around that problem for now.

Encoding a 32 kHz or 44.1 kHz sample in a similar way should be possible too, although an extra step is necessary to convert 44.1 kHz because in 44.1 kHz MPEG 1 layer 1, not all frames are the same size and DCC Studio inserts extra bytes to make all frames 420 bytes (and I only recently realized that that’s how it works; see my previous thread in this forum).

I will write a program to do all this, expanding on my DCCCONV program which converts MPP files to MP1 but currently can’t do the reverse.

I made of video of the event but unfortunately you will have to go to the Facebook group of the DCC museum to watch it: it was to big to attach it here.

=== Jac

3 Likes

Congratulations, I was close to this, too. 18- or 20-bit will be the major challenge, as no known encoder is able to do this, because it is non standard mp1.

This International Standard is intended for sampling rates of 32 kHz, 44.1 kHz, and 48 kHz.

Could you add an option not to touch the MPEG standard padding to be able to test if programs work with it and maybe report it as a bug?

@Jac Really great job, Love It

1 Like

Absolutely amazing.
What happens if you play this back on your 730?

I would love to put the sample in a rsdc8 and see what happens next.

2 Likes

Its the sample rate, not the bit depth. Every DCC recorder is capable of 48 kHz.

I know that but the rsdc8 has an indicator for it on the door, that should light up for 48kHz.

Then we can create a commercial release. The 730 does not have a visual led or display indicating this.

2 Likes

I haven’t tried yet. I expect that, just like the 175, all recorders including the 730 switch between 44.1 to 48kHz seamlessly. None of my recorders has a sample rate indicator.

My SPDIF receiver project doesn’t switch between sample frequencies automatically yet and I don’t have any DCC recorder connected to my stereo receiver at this time. It’s possible that some (maybe many) SPDIF receivers take a little while to lock onto the new sample frequency when it changes. In practice, this should rarely be a problem.

=== Jac

1 Like

Hi
I see that you work with program called DCC studio I have no idea about this program but I wonder if some of us can follow you in this reverse engineering will you share later on your findings ? Thx

DCC Studio is a program that was included with the DCC-175 (actually it came with the PC-link cable which was available separately or in a package together with the recorder).

Without the DCC-175 which was only available in the Netherlands, and the PC-link cable which is extremely difficult to find because only 1400 cables were made (according to our sources), the DCC-studio program is useless, unfortunately.

So the bad news is: the information in this thread probably doesn’t benefit a lot of people directly because not many people have a DCC-175 with a PC-link (and a Windows 98 computer). But this is an important development for the reverse-engineering of DCC and for future commercial releases by the DCC museum (which help to finance the museum to keep the format alive).

It is an incredibly important milestone for us to know (and have control over) the exact format of the digital data on a DCC tape. There are still some mysteries that I haven’t solved yet, but I expect that eventually it will be possible for users to create tapes with the same features as prerecorded tapes, and do other awesome stuff that was never possible before.

I don’t have much time to work on this unfortunately, but when I do, you will hear about all my accomplishments here in the forum.

=== Jac

3 Likes

When you gain the ability to dump, get me one of anything 18 and/or 20 Bit. Have been thinking about this a lot, it is definetely not in the MPEG 1 Audio Layer 1 standard and maybe not even real/totally comperable.

The MP1 standard doesn’t define how many bits to use in the (time domain) input and output stream, because it doesn’t matter. When the samples are converted from Time Domain to Frequency Domain and back, the Frequency Domain samples simply need to be the same size and the Time Domain samples.

There IS a limitation on the accuracy of the data that can be represented in an MP1 stream of the Frequency Domain samples: 16 bits if I’m not mistaken. But there’s also a 6 bit scale factor that makes it possible to represent a larger scale of input or output samples (e.g. 18 or 20 or even more bits) by reducing the accuracy of the representation. This works sort of like the way a calculator uses exponential notation of a number when the numbers get too big or too small. The 6 bits of the scale factor make it possible to have a dynamic range of 2^6 = 64 bits.

I don’t know what the capabilities are of the MP1 encoders and decoders that are available on the Internet, and I don’t know how many bits they use. But it should certainly not be hard to make 32 bit MPEG 1 Layer 1 encoder and decoder, so that the mathematics that need to be performed, can be efficiently performed with a 32-bit processor. Above 32 bits, as I understand, the accuracy limitation adds too much noise for the extra bits to matter.

The point of this thread is that I now have a way to bring MP1 streams to a DCC tape using the DCC-175 and DCC-Studio. In theory, based on what I know from the datasheets and service manuals, it should also be possible with other recorders with some hardware.

===Jac

2 Likes