-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FLAC decoder testbench #51
Comments
Thanks @ktmf01! That's definitely helpful. Having reference FLAC files will help us understand how these corner cases should be implemented.
Hmm, strange. I don't know where we would be introducing loss of the original PCM. Do you have any more info, e.g. what subframes were lossily decoded? (and what encoding was used for those subframes?) Cheers, |
The whole file sound extremely distorted. The upper two channels are original, the bottom two are the decoded WAV. The problem does not seem to involve the FLAC decoding itself, but instead the writing of the output to WAV. Programs seem to read the output wavefile as unsigned, while flac2wav seems to write signed output. Now, obviously the writing to WAV part isn't the focus of your project, so you could just ignore this part. edit: See page 59 - 60 of http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/WAVE/Docs/riffmci.pdf, WAV files with 8 bit-per-sample are stored with unsigned values, WAV files with more than 8 bit-per-sample are stored as signed values. |
Interesting, this may indeed be the underlying issue.
Yeah, you're right. The As for the test cases, thanks once more! They will be a good reference for further testing the corner cases of the library. As for when those corner cases are implemented, I don't know :) My brother @karlek and I work on this project as a hobby so we do it when the mood strikes. We are really happy it has been useful to other people in the Go community, even if there are still corner cases left to handle. Cheers, |
…signed int ref: #51 (comment) Updates ##51.
@ktmf01, would you mind testing PR #52 and see if this resolves the encoding issue of the 8-bps test case? |
#52 indeed makes testbench file 23 decode correctly |
…signed int (#52) ref: #51 (comment) Updates ##51.
Currently 7 test cases are broken, namely: * subset/16 - ...flac * subset/22 - ...flac * subset/32 - ...flac * subset/37 - ...flac * subset/62 - ...flac * subset/63 - ...flac * subset/64 - ...flac ref: #51
Issues related to FLAC stream decoding and audio sample decoding were tracked by #54 and #60, respectively, and are now resolved. Before we decide to close this issue, we should try to assess whether there are any metadata blocks of the IETF test cases that
|
To the best of my knowledge the IETF test cases are now passing for FLAC stream decoding, audio sample decoding and metadata decoding. If any discrepancies are detected, feel free to re-open this issue or open a new one. Thanks @ktmf01 for driving this validation effort. You are part of something incredible <3 |
I just found your FLAC decoding library, and tested it through flac2wav with this FLAC decoder testbench. I got quite a lot of messages like these
For this I recommend the FLAC decoder testbench I just linked.
Besides the messages, flac2wav fails to decode the following files:
Also, decoding of 23 - 8 bit per sample seems to be non-lossless.
I hope this information helps you to even further improve this library.
The text was updated successfully, but these errors were encountered: