Is PASC the same as mp1?

One of the things that make dcc so special is the sound quality, and the fact that it doesn’t sound digital at all. Now forgive me but I get sometimes confused if I read through all these threads. I still think that PASC is the way that the audio file is analysed and mp1 is the way the file is compressed. I read an article once about the engineers that designed the PASC system and they were discribed as “the golden ears at Philips”.
The magazine sounded a bit surprised but that is a bit of a Dutch thing… thinking that stuff made in Holland can’t be good…

I would very much like to have explained in laymans terms how PASC and mp1 are related and if PASC could be coupled to for instance mp3…
Now I know this is a lot to ask for but can anyone try?

PASC and MPEG 1 layer 1 are the same EXCEPT:

  • PASC restricts the sample frequencies to 32kHz, 44.1kHz and 48kHz, MP1 can handle a few other frequencies if I recall correctly.
  • PASC can only play and record at 384 kbps, in stereo or joint stereo or dual mono. MP1 can also do mono but of course that cuts the bit rate in half, so that’s not supported with PASC.
  • [EDIT] When a PASC/MP1 stream is encoded at 44.1 kHz, the sample rate isn’t evenly divisible into the 384 kbps bit rate. To make up for this discrepancy, 48 out of every 49 PASC frames have an extra dummy slot (4 bytes). In MP1, the extra slot may contain data, but in PASC the slot must be zero.
  • The DCC System Description describes exactly how a PASC encoder and decoder should work, and explicitly disallows the design of other encoding (such as different psycho-acoustic models). The MPEG standard (as far as I know) only defines how the bits are encoded in the stream, but it doesn’t say how the encoding process should work (though I think they provided sample code which many MP1 / MP2 encoders were derived from).

So in short: PASC is a subset of MP1. Every MP1 decoder can decode PASC, but not all MP1 streams can be decoded by a PASC decoder. [EDIT] You can convert MP1 to PASC and vice versa with my DCCU utility.

It’s even possible to use an MP1 encoder with a different acoustic model to generate a stream that can be decoded with a PASC decoder. We did that with the Ben Liebrand cassette.

As for the difference between PASC/MP1 and MP3 (or MP2): MP1/PASC basically converts a PCM stream to 32 frequency subbands, and then applies a psycho-acoustic model to reduce the accuracy of frequency bands that are less important or completely unimportant. That’s how it achieves its compression. I’m not thoroughly familiar with MP2 and MP3 but as I understand, they apply further digital compression (like ZIP files) to reduce the bit rate even further.

By the way, I don’t think the “Golden Ears” were literally at Philips. Philips basically designed the algorithms for the lossy compression, and then spent something like 2 years perfecting the acoustic model in cooperation with IPO (Instituut voor Perceptie Onderzoek – Institute for Perceptional Research). IPO was started in 1957 as an organization where Philips Research (formerly Philips NatLab) and the University of Eindhoven worked together on improving how people and technology could work together. They probably used hundreds of volunteers to listen to audio fragments over and over again, to improve the algorithm to a point where, if they asked those people which recording was the original and which was the DCC, about half of them got it wrong.

===Jac

5 Likes

And, just to explain a bit more for those who might be confused, what we call “mp3” (files), is in fact MPEG1-Layer3 (audio layer3).
Just like there also is MPEG1-Layer1 and MPEG1-Layer2. As the layer-number increases, the compression is more, but the artifacts obviously become more audible. If you listen to a MPEG1-Layer2 audio file, it sounds incredible compared to “mp3” (layer3).
So because MPEG1-Layer3 was a bit too long as a name, it was shortened to mp3, causing all kinds of confusion in the years thereafter up until this day. :smiley:
(and then I am not even talking about the MPEG2 standard here :smiley: :smiley: )
PASC is, as @Jac explained, a subset of MPEG1-Layer1 audio.

3 Likes

I am sure you also can’t tell 320 kbit/s mp3 from a decent encoder apart from wav, but the kind of artifacts you get while using lower bitrates are different and mp3 users typically use less bitrate then it was common with mp2. mp3 was a success because it is better than mp2.

MPEG Audio Layer 2 is still big in television, DAB (without +) and in some more areas.

2 Likes

Right. The way I understand it (which may not be correct), is that PASC was intended as a simplified form of MPEG 1 layer 2, which was originally called MUSICAM and developed by CCETT as part of digital radio (DAB). But for DCC, it would be necessary to put decoders as well as encoders in a consumer device, and with late-1980s technology that would have become too expensive. So they left out the extra data compression from MUSICAM and made it into PASC.

MP1 and MP2 are upwards compatible: An MP2 codec can usually also encode/decode MP1 files. So if you want to search for an MP1 encoder on the Internet, you may not find much, but if you search for MP2 encoders you will probably find many that can also encode in Layer 1 format.

===Jac

2 Likes

So, if I understand correctly, for instance VLC player supports mp1/2 and layer 3 etc.
The file you managed to isolate last month @Jac , if you offered it up to VLC it might just play? And would it sound the same as in our DCC players, because there is the thing. Is the psycho acoustic encoding the same as used in our Philips devices. If that is the case… you might say that DCC lives on in VLC player.
And I have to look it up, but I think one could even encode an mp1 layer 1 file in Steinberg Wavelab, wich is a mastering program that I use to produce cd masters. If that is the case it could help @drdcc making masters for future releases… or am I talking nonsense?

Fun fact… VLC is open source…

Yes, a PASC/MP1 file compressed with any encoder, using any psycho-acoustic model, would play on any MP1 decoder. The PASC/MP1 data stream is basically a list of instructions to the decoder to tell it how loud to play each frequency. The data reduction is completely a matter of reducing the accuracy at encoding time.

The psycho-acoustic model is used during encoding to decide which frequencies need to be encoded at which accuracy. At decoding time, the psycho-acoustic model is completely irrelevant.

The psychoacoustic model used in all DCC recorders is the same, because the DCC system specification mandates that all DCC recorders use the algorithm that it describes. However after DCC came out, there were some smart people who came up with newer psycho-acoustic models (I think there were 3 in total but I could be wrong). The nice thing is that it’s perfectly okay to use those during encoding; every decoder will be able to handle the data stream.

Yes, that is possible (assuming Steinberg Wavelab has a working MP1 encoder). If you want to release a DCC tape, you can do your own encoding like that. The only problem is then that you have to somehow get your PASC/MP1 files recorded on tape. Currently the only way to do that is by using the DCC-175 and a PC-cable, connected to a Windows 95/98 computer. I’m working on a way to make it possible with other DCC recorders and modern hardware.

VLC uses LAME to decode MP1 if I recall correctly. Unfortunately LAME is only a decoder, not an encoder. It was actually pretty difficult to find an MP1 encoder that worked under Windows 10. I used MP2ENC after I made some improvements(*). It works very well as far as I know, and I hope to integrate it into a bigger program one day.

===Jac

(*) MP2ENC didn’t support 24 bit WAV files originally, and used 16 bit floating point operations. Also it had bugs that made it choke upon certain characters in the input, and it had a bug where it would process the ID3 label as audio.

2 Likes

Well that made a lot clear to me! Thank you @Jac @Max @pvdm !!!

1 Like

That appears not to be correct.

1 Like

Let me rephrase that: LAME doesn’t encode MP1 at this time.

FFMPEG can decode MP1 but not encode it.

TooLAME and TwoLAME can decode and encode MP2 but don’t support MP1.

It’s probably possible to fairly easily modify TwoLAME to encode MP1 as well as MP2.

If someone would make it possible to encode MP1 with TwoLAME, many other projects that use the library would also gain the possibility of encoding MP1.

I forked the TwoLAME repo into the DigitalCompactCassette GitHub account a while ago to see if I could do it, but haven’t found the time. If anyone is interested in putting work into it, let me know.

I found mp2enc (which supports MP2 as well as MP1) as part of a big heap of mpeg tools, and modified it to work with 24 but audio files, and use 32 bit floating point for encoding. I also fixed some bugs. It’s not perfect though. I would rather use an application such as dbPowerAmp using a well-maintained open source library.

=== Jac

(Source for the claims: List of codecs - Wikipedia, retrieved 14-Mar-2021)

2 Likes

Therefore your different encoder is a DCC standard violation, but who cares @Jac.

I think I read somewhere that copying from DCC to DCC would be lossless, this may be the case thanks to the unified model.

Going to read this thoroughly tomorrow… dazzle dazzle… and I ain’t stupid…

The way I understand it (and explain it to others) is that when a recorder analyzes a signal that was synthesized from PASC data and has to decide what parts to remove, there’s nothing to remove because it’s already gone. That doesn’t mean that the PCM samples of the second generation are identical to the first generation, however. It’s a bit more complicated than that because the encoders encode the audio in chunks of 107 1/3 ms (or sometihng) at a time, and the chance that the encoders start at the same moment is small. Fourier transformation and frequency synthesis is weird. I don’t claim to fully understand the math but I have a good idea how it works (I think).

===Jac

1 Like

Well… there you have it!
Pasc is much more than the eye of the beholder!
I think we must ask our selves much more why dcc sounds so good… there is a reason! It is subjective but there is something about that psycho acoustic stuff… isn’t that infront of mp1???
That algorithm that makes it sound so good. It can’t be mp1 alone?

And how does ATRAC relates to mp1? Sony’s system to minidisc…

I know very little about ATRAC. According to Wikipedia, the first ATRAC divided the PCM into frequency subbands just like MP1/PASC does, but it used fewer frequency bands. Also it used 5:1 compression (PASC is about 4:1). So the quality was (arguably) noticeably worse than DCC. Later on, Sony of course made many improvements using different compression algorithms and different disc recording techniques. No doubt some of those were based on Philips patents, although I don’t have the nitty gritty about that.

DCC was discontinued before it could be improved in any way. I think if it would have survived longer, we would have definitely seen two-deck DCC recorders that would have been able to copy at double speed (from the service manuals of the Technics RS-DC8 it looks like their chipset was capable of it). Perhaps they could have invented a long-play format that would have recorded 192 kbps MP3 at half speed, double duration, same tape. Maybe one day…

===Jac

2 Likes

The psychoacoustic model is the algorithm that decides which parts of the audio need to be accurately represented, and which parts can be reduced in accuracy or can be thrown away altogether because they can’t be heard anyway. It’s basically what makes the compression possible. It’s an integral part of MP1 (and other compression methods).

The reason DCC sounds better than others is mostly because PASC/MP1 and its psychoacoustic model were tweaked to perform as good as CD or better. MP3 and other algorithms can perform just as well as MP1, or better, but often someone makes decisions that some configuration is “good enough” and it isn’t. Listening to a radio station via a 64kbps stream in MP3 will give you crappy sound with lots of compression artefacts. But if you would listen to it at 320kbps (the highest available in MP3), it would probably sound much better. Probably as good as MP1 and the bitrate is still lower. The problem is simply that the broadcaster (or your internet connection) won’t give you that choice.

In a fair comparison, MP1 is much less efficient than MP2 or MP3 or other compression algorithms (lossy ones anyway) running at a similar bandwidth. That’s why those other compressions exist: they were improvements. But on a cassette with a fixed bit rate, MP1 is a good choice, especially if you want low latency and relatively simple encoding/decoding.

===Jac

2 Likes

May be I understood it incorrectly, If we have a PASC/MP1 encoded file in a Win 10 PC, can we use the TOSLINK out from PC Soundcard and record it on any DCC machines? Yes, PC will be playing the PASC/MP1 encoded file using some software.

It gets decoded and recoded which defeats the entire point of a custom encoder. You can always play any audio and record it to DCC.