Broken with libFLAC < 1.4.0 ("internal psf_fseek() failed")
Nobody has claimed this yet.
- Dominant language
- Jupyter Notebook
- Stars
- 853
- Forks
- 322
- PR merge metrics
- No merged PRs in 30d
Description
Some versions of the SoundFile package on PyPI, including the latest version (0.12.1), appear to be broken. It appears that something is wrong with the precompiled "libsndfile_x86_64.so". I have no idea about other platforms. I don't know if this is actually a bug in libFLAC, or in libsndfile, or in SoundFile, or a bug in how libFLAC/libsndfile was compiled.
The latest version in the libsndfile-binaries repo is possibly fixed, but there hasn't been a new release of SoundFile for a while.
Here is an example file, gzipped and base64ed:
H4sIAAAAAAACA0vzSXRmYGBQEmAQAFKCDGzi4gUsHxiY/BiUfKRUi1hP7hBiWKmeMlUwt4WBQUMB
qKYoNS21KDUvOVUhJzPJzcfRWcFQz1jPWMHIwNDSwMLABKiE4f+P0xoMb4UZmFns/6OC+f9HFnj4
f2SDf2oMbBz1aIL2IywQDo/wRPDHh4FHAD1h1I+wQGgf4YngR/0yULXA+IoBBnhVQQJMj+ECQdEg
AeYncIHnRSABlo9wgTfLQQKs3+ACkX0gAbb/cAG2DyAB9h9wgc03QQIcV+ECglEgAc5LcIElxSAB
rttwgd+8IAHuO3ABPxWQAM9JuIDrR5AA7zm4wIcbIAG+43CB9WDf8h+AC0j1gwQE5sIFspaCBARn
wQXu94AEhCbDBRo+gQSEp8AFTG+DBEQa4QJ2fCAB0Ta4QLc6SECsHy5wJRIkIN4BF0gsAAlILIUL
HP4MEpBcBBcouwUSkFoNF9BcAhKQXgMXmNMLEpDZCReYHgESkN0HF1AqBAnIbYcL1PKDBOQ3wAVO
qIEEFHjhAnPBsa/IBRfQAMe+EjNcoJwHJKDMAhc4BExB1RoqvP9nMjMwMYwCfIBxsLcU2BhYRmMJ
L2Ae7PU8DwPHaCzhBeyDvZY+wAsARLgU7hMOAAA=
I think this is a valid FLAC file, though I'm not sure. Running python3 -c 'import soundfile; soundfile.SoundFile("example.dat").read(78419)' should succeed.
- With python3-soundfile (and libsndfile) from Debian bookworm, it works.
- With libsndfile_x86_64.so from commit f5311e9 (md5 = 8e42bd39f38254cf9a5c8ad1bc975faa), it fails.
- With libsndfile_x86_64.so from commit 1ddbbd5 (md5 = 44c0cbf5b8f2a96d309d3e648718bdec), it fails.
- With libsndfile_x86_64.so from commit f1655ba (md5 = 1bd1cc5a1b3724c97ea26d007110e5f1), it works.
- With libsndfile_x86_64.so from commit 42c638d (md5 = 243f680f7a517539fe867731fc5fd5d0), it works.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with the embedded example.dat data and the documented SoundFile command, comparing the listed libsndfile_x86_64.so commits and Debian's libsndfile. Determine whether the defect is in libFLAC, libsndfile, SoundFile packaging, or compilation; done means the example FLAC reads successfully with the released package.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100