xiph / flac

Free Lossless Audio Codec
https://xiph.org/flac/
GNU Free Documentation License v1.3
1.58k stars 278 forks source link

How much testing is done by flac -t? #668

Closed Oest1980 closed 5 months ago

Oest1980 commented 5 months ago

I'm working with file validation for a city archive and was wondering, if I could use flac -t [filename] as a validation tool for flac files?

i.e. does this test function test against all the descriptions found in the flac specification and not just md5 sum? https://xiph.org/flac/format.html

Thanks :)

ktmf01 commented 5 months ago

Depends on what you want it to validate.

flac -t was for many years simply the same thing as flac -d but without writing an output file, as the manual says. That means it does everything necessary to decode. It has to, because it can only check the MD5 by decoding everything first.

What is does not check is metadata integrity, it simply skips all metadata (like flac -d does). There is however a PR open to change this: #626 Also, #500 added a small check for ID3v2 usage (which is discouraged) but otherwise, flac -t doesnt do anything special besides decoding (and thus parsing) all audio frames and MD5 summing them.

Does that answer your question?

Oest1980 commented 5 months ago

Yes, thank you. I guess if it decodes and parses it counts as validation against the format...