-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Open
Labels
musicbrainztriagedThe issue is understood, reproducible, and scoped; waiting on a PR.The issue is understood, reproducible, and scoped; waiting on a PR.
Description
I'm trying to import a bunch of songs to my library, using beet import -s .
Problem
Running this command in verbose (-vv) mode:
beet -vv import -s . Led to this problem:
user configuration: /home/soso/.config/beets/config.yaml
data directory: /home/soso/.config/beets
plugin paths: []
Loading plugins: musicbrainz
Sending event: pluginload
library database: /home/soso/.config/beets/library.db
library directory: /home/soso/Music
Sending event: library_opened
Sending event: import_begin
Sending event: import_task_created
Sending event: import_task_start
Looking up: /home/soso/Downloads/music/Agar Agar ~ Prettiest Virgin [Yp257b5APOg].opus
Item search terms: -
musicbrainz: Searching for MusicBrainz recordings with: {}
Sending event: import_task_created
Traceback (most recent call last):
File "/usr/bin/beet", line 8, in <module>
sys.exit(main())
~~~~^^
File "/usr/lib/python3.13/site-packages/beets/ui/__init__.py", line 1713, in main
_raw_main(args)
~~~~~~~~~^^^^^^
File "/usr/lib/python3.13/site-packages/beets/ui/__init__.py", line 1692, in _raw_main
subcommand.func(lib, suboptions, subargs)
~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/ui/commands.py", line 1378, in import_func
import_files(lib, byte_paths, query)
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/ui/commands.py", line 1322, in import_files
session.run()
~~~~~~~~~~~^^
File "/usr/lib/python3.13/site-packages/beets/importer/session.py", line 234, in run
pl.run_parallel(QUEUE_SIZE)
~~~~~~~~~~~~~~~^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/util/pipeline.py", line 468, in run_parallel
raise exc_info[1].with_traceback(exc_info[2])
File "/usr/lib/python3.13/site-packages/beets/util/pipeline.py", line 333, in run
out = self.coro.send(msg)
File "/usr/lib/python3.13/site-packages/beets/util/pipeline.py", line 216, in coro
func(*(args + (task,)))
~~~~^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/importer/stages.py", line 144, in lookup_candidates
task.lookup_candidates(session.config["search_ids"].as_str_seq())
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/importer/tasks.py", line 686, in lookup_candidates
self.candidates, self.rec = autotag.tag_item(
~~~~~~~~~~~~~~~~^
self.item, search_ids=search_ids
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/usr/lib/python3.13/site-packages/beets/autotag/match.py", line 373, in tag_item
for track_info in metadata_plugins.item_candidates(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
item, search_artist, search_title
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
):
^
File "/usr/lib/python3.13/site-packages/beets/plugins.py", line 473, in wrapper
for v in func(*args, **kwargs):
~~~~^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beets/metadata_plugins.py", line 69, in item_candidates
yield from plugin.item_candidates(*args, **kwargs)
File "/usr/lib/python3.13/site-packages/beetsplug/musicbrainz.py", line 837, in item_candidates
None, map(self.track_info, self._search_api("recording", criteria))
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/site-packages/beetsplug/musicbrainz.py", line 812, in _search_api
res = method(limit=self.config["search_limit"].get(), **filters)
File "/usr/lib/python3.13/site-packages/musicbrainzngs/musicbrainz.py", line 971, in search_recordings
return _do_mb_search('recording', query, fields, limit, offset, strict)
File "/usr/lib/python3.13/site-packages/musicbrainzngs/musicbrainz.py", line 773, in _do_mb_search
raise ValueError('at least one query term is required')
ValueError: at least one query term is required
There needs to be at least on music file in the directory where this is called. An empty opus file generated by ffmpeg is enough: ffmpeg -f lavfi -i anullsrc -ac 2 -ar 48000 -t 30 -c:a libopus file.opus
Setup
- OS: Arch Linux
- Python version: 3.13.7
- beets version: beets version 2.4.0
- Turning off plugins made problem go away (yes/no): yes (the only plugin I use is musicbrainz)
Config:
disabled_plugins: []
musicbrainz:
search_limit: 5
source_weight: 0.5
host: musicbrainz.org
https: no
ratelimit: 1
ratelimit_interval: 1
genres: no
external_ids:
discogs: no
bandcamp: no
spotify: no
deezer: no
tidal: no
extra_tags: []Metadata
Metadata
Assignees
Labels
musicbrainztriagedThe issue is understood, reproducible, and scoped; waiting on a PR.The issue is understood, reproducible, and scoped; waiting on a PR.