Incorrect read size

Can anyone help me out with this error on tagging a song?

E: 17:43:23 Traceback (most recent call last):
File "picard\util\thread.pyo", line 46, in run
File "picard\file.pyo", line 210, in _save_and_rename
File "picard\formats\vorbis.pyo", line 158, in _save
File "mutagen_file.pyo", line 48, in init
File "mutagen_util.pyo", line 152, in wrapper
File "mutagen_util.pyo", line 123, in wrapper
File "mutagen\flac.pyo", line 790, in load
File "mutagen\flac.pyo", line 727, in __read_metadata_block
File "mutagen\flac.pyo", line 70, in read
error: file said 13272392 bytes, read 10211969 bytes

This looks like the metadata claims to be longer than what can actually be read from the file itself. Either the file itself is truncated or just the metadata block is broken (could be interesting to know what software wrote the metadata). Does the file play successfully and completely? If you can make the file available somehow I could take a look.

3 Likes

Never mind, I killed the file trying to fix it. I tried to open the metadata in various other programs and most wouldn’t even display it (eg tagscanner). The file does play and as far as I can tell looks complete. I put it into foobar and messed around with it and lots of errors kept coming up. Finally tried ‘convert’ and now the file wont play anymore, thanks for your response anyway I was hoping it was going to be easy to fix…

I’m having a similar error with files generated with Sound Juicer 3.24.0 on Ubuntu 17.10.

E: 21:45:28 Traceback (most recent call last):
File "/usr/lib/picard/picard/util/thread.py", line 46, in run
result = self.func()
File "/usr/lib/picard/picard/file.py", line 116, in _load_check
return self._load(filename)
File "/usr/lib/picard/picard/formats/vorbis.py", line 55, in _load
file = self._File(encode_filename(filename))
File "/usr/lib/python2.7/dist-packages/mutagen/_file.py", line 49, in init
self.load(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/mutagen/_util.py", line 158, in wrapper
return func(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/mutagen/_util.py", line 129, in wrapper
return func(self, h, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/mutagen/flac.py", line 790, in load
while self.__read_metadata_block(fileobj):
File "/usr/lib/python2.7/dist-packages/mutagen/flac.py", line 727, in __read_metadata_block
data = fileobj.read(size)
File "/usr/lib/python2.7/dist-packages/mutagen/flac.py", line 70, in read
size, len(data)))
error: file said 14066136 bytes, read 10345756 bytes

I tried again with the same disc with the same version of Sound Juicer, but on Ubuntu 18.04. I did not get the error mentioned earlier. I did not get the versions between Picard before and after upgrading though.