IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
What algorithm creates the CRCs in EAC?
arrdent
post Sep 29 2003, 21:06
Post #1





Group: Members
Posts: 23
Joined: 24-July 02
Member No.: 2778



What algorithm is used in EAC to create the CRC test and copy sums?
Actually I thought it would be SFV, but surprise surprise... SFV gave me sums that are different from those made via EAC.

I read somewhere that the algorithm in EAC is very good (as soon as one bit changes, the CRC changes as well). It might be better than SFV (?) and anyhow faster than MD5.

SFV and MD5 are publicly available (everyone can create such sums). Does this also apply to EAC's 'mysterious' CRC algorithm? smile.gif
Go to the top of the page
+Quote Post
Pio2001
post Sep 29 2003, 23:04
Post #2


Moderator


Group: Super Moderator
Posts: 3936
Joined: 29-September 01
Member No.: 73



Make sure you didn't check the option that discards leading and trailing silences for CRC calculations. Set the offset to zero, to be sure.
Anyway, EAC must compute the CRC of the audio only, since in the test, no wav file is created, while after the extraction is done, you compute the CRc of the whole wav file, that is necessarily different. Convert your wavs to RAW audio before calculating CRCs.
Go to the top of the page
+Quote Post
atici
post Sep 29 2003, 23:28
Post #3





Group: Members (Donating)
Posts: 1180
Joined: 21-February 02
From: Chicago
Member No.: 1367



I think CRC is not calculated on the fly, but after the WAV file is written. That's why I assume it takes some time to encode after the rip. Is that right? If so, that should be improved...


--------------------
The object of mankind lies in its highest individuals.
One must have chaos in oneself to be able to give birth to a dancing star.
Go to the top of the page
+Quote Post
madah
post Sep 30 2003, 00:16
Post #4





Group: Developer
Posts: 202
Joined: 13-February 02
From: Sweden
Member No.: 1318



The CRC is calculated on the raw data only, just as Pio2001 said (it would be most logical).
Remember that the written .wav-file has a 44 byte header; so if you want to compare CRCs, it has the be done on the raw data.

CRC-32 is a 32 bit CRC (Cyclic Redundancy Check) used to detect bit/bursts-errors in transmissions (like ethernet and the TCP/IP-protocol).
It's really fast to compute (especially in hardware, can be done with no delay just as fast as the signal passes thru a couple of NAND gates).

EAC, ZIP, RAR, SFV and others all use the same method (or variants of it) to calculate their checksum. So there's no mysterious EAC-algorithm.

MD5 is a whole different, somewhat slower but many times "safer" algorithm. It's a "one-way" hash algorithm. It's used when you need more security; like in large lossless audio files (FLAC) and PAR/PAR2.

Personally I wouldn't trust CRC-32 for "large" files (say larger than 1 MB), because it wasn't really designed to detect errors in such large streams... or maybe I'm just a little bit paranoid ph34r.gif
Go to the top of the page
+Quote Post
arrdent
post Sep 30 2003, 18:46
Post #5





Group: Members
Posts: 23
Joined: 24-July 02
Member No.: 2778



QUOTE (Pio2001 @ Sep 29 2003, 10:04 PM)
Convert your wavs to RAW audio before calculating CRCs.

QUOTE (Madah)
Remember that the written .wav-file has a 44 byte header

Thanks both of you. That must be the reason.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 29th November 2014 - 02:47