thomasvs / morituri

For those about to RIP - a Unix CD ripper preferring accuracy over speed
GNU General Public License v3.0
301 stars 42 forks source link

AttributeError: 'module' object has no attribute 'CDTEXT_FIELD_TITLE' #123

Open atcapollo opened 9 years ago

atcapollo commented 9 years ago

First use of morituri on Ubuntu 12.04 LTS. Pycdio installed, I get this error:

http://pastebin.com/2f0i0Fri

Is this a bug, how do I solve it?

johnnydvc commented 8 years ago

I'm having a similar problem: File "/usr/local/lib/python2.7/dist-packages/pycdio-0.20-py2.7-linux-x86_64.egg/pycdio.py", line 418, in <module> CDTEXT_FIELD_TITLE = _pycdio.CDTEXT_FIELD_TITLE AttributeError: 'module' object has no attribute 'CDTEXT_FIELD_TITLE' Any ideas?

antondd commented 8 years ago

Same problem here. The CD is not in the musicbrainz database, but the "-U" parameter didn't help.

JoeLametta commented 8 years ago

Many users with libcdio 0.83 have experienced problems with pycdio >=0.18. Either upgrade libcdio to 0.90 or downgrade pycdio to 0.17.

@atcapollo @johnnydvc @antondd Is this your case?

antondd commented 8 years ago

Just tried again a CD which I ripped successfully a few months ago, this gives now the same problem. So yes, should be not depending on the CD, but some problems after an update.

I am running Kubuntu 15.10, according to https://launchpad.net/ubuntu/+source/libcdio this would be indeed running 0.83 (even though I don't find the info on my computer). How would I update the package?

Thanks?

johnnydvc commented 8 years ago

My distro (Ubuntu 15.10) doesn't seem to provide libcdio in any other version. Also I cannot find pycdio. Is there another package providing it?

JoeLametta commented 8 years ago

@antondd @johnnydvc You can compile libcdio from source or install the Debian package from the experimental branch: LINK (I don't know if it works).

If you want to downgrade pycdio you can install the 0.17 version using pip:

sudo apt-get install python-pip
sudo apt-get install python-dev libcdio-dev libiso9660-dev swig pkg-config
sudo pip install pycdio==0.17
antondd commented 8 years ago

Tried first to install the experimental branch package libcdio in you link, same error message. Downgrading pycdio as described by you worked. Thanks!

antondd commented 8 years ago

Too early. Not sure if it is related or another issue. The CD was not in MusicBrainz, so I used the following command: rip cd rip -U --offset=102 --output-directory=output_path --track-template="%A (%y) %d/%t. %n" --disc-template="%A (%y) %d/%y - %d" --working-directory="/tmp/"

Seemed to be first fine, but in the end another error. Here's the full output: `Checking device /dev/sr0 CDDB disc id: 5312b219
MusicBrainz disc id 53EcWnYcsgLQ5y0odcFGCoh4x.U- MusicBrainz lookup URL http://mm.musicbrainz.org/bare/cdlookup.html?toc=1+25+359108+150+11049+26055+39804+52936+63512+76588+89385+103310+114659+129441+140904+154564+165009+176393+192608+210326+227925+247688+260963+278648+301476+308957+323456+344722&tracks=25&id=53EcWnYcsgLQ5y0odcFGCoh4x.U- Disc duration: 01:19:46.106, 25 audio tracks Error: NotFoundException(ResponseError(),) Continuing without metadata Submit this disc to MusicBrainz at the above URL.

Traceback (most recent call last):
File "/usr/bin/rip", line 41, in sys.exit(main.main(sys.argv[1:])) File "/usr/lib/python2.7/dist-packages/morituri/rip/main.py", line 45, in main ret = c.parse(argv) File "/usr/lib/python2.7/dist-packages/morituri/rip/main.py", line 123, in parse logcommand.LogCommand.parse(self, argv) File "/usr/lib/python2.7/dist-packages/morituri/extern/command/command.py", line 401, in parse return self.subCommands[command].parse(args[1:]) File "/usr/lib/python2.7/dist-packages/morituri/extern/command/command.py", line 401, in parse return self.subCommands[command].parse(args[1:]) File "/usr/lib/python2.7/dist-packages/morituri/extern/command/command.py", line 363, in parse ret = self.do(args) File "/usr/lib/python2.7/dist-packages/morituri/rip/cd.py", line 126, in do self.program.metadata.discid = self.ittoc.getMusicBrainzDiscId() AttributeError: 'NoneType' object has no attribute 'discid'`

JoeLametta commented 8 years ago

@antondd That's a different error (see #89): it was fixed upstream with thomasvs/morituri@01f07c5ad90563dc258eba4134a2544d192d0a49. It's likely that the morituri version packaged by Ubuntu still doesn't include the fix. If this is true, you can solve the issue building it from the source: LINK.

antondd commented 8 years ago

Thanks, just figured it out by myself, I entered the CD in MusicBrainz by myself, and it works. Will try to get the newer version.