# "Bad Files" and "check" plugins

**URL:** <https://discourse.beets.io/t/bad-files-and-check-plugins/272>\
**Category:** Help\
**Created:** [January 22, 2018, 1:31am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272 "2018-01-22T01:31:36Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![firewater](https://avatars.discourse-cdn.com/v4/letter/f/e9a140/32.png) [@firewater](https://discourse.beets.io/u/firewater)\
**Post date:** [January 22, 2018, 1:31am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/1 "2018-01-22T01:31:36Z")

</div>

When it comes to checking for corrupted files, what would be the difference between these? Is there any benefit on using one over the other?

I tried “check” but I got:

```
C:\Users\REDACTED\Unorganized\Unorganized>beet import -C "M:/Media/Audio/Perfume/level"
** error loading plugin check:
Traceback (most recent call last):
  File "c:\users\REDACTED\appdata\local\programs\python\python36-32\lib\site-packages\beets\plugins.py", line 254, in load_plugins
    namespace = __import__ (modname, None, None)
ModuleNotFoundError: No module named 'beetsplug.check'
```

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [January 22, 2018, 1:44am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/2 "2018-01-22T01:44:54Z")

</div>

Is `check` an external plugin that doesn’t ship with beets? If so, you might consider asking the author who maintains it. (And that might also explain why you aren’t finding it installed on your system.)

---

<div class="post-metadata">

**Author:** ![firewater](https://avatars.discourse-cdn.com/v4/letter/f/e9a140/32.png) [@firewater](https://discourse.beets.io/u/firewater)\
**Post date:** [January 22, 2018, 1:52am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/3 "2018-01-22T01:52:27Z")

</div>

Ooooooh, that makes sense. I see now it was included under the section for plugins written by the community. I saw no instructions on how to add the plugin so I assumed it was included.

[If you could do a quick glance](https://github.com/geigerzaehler/beets-check), could you make any guessing on it being significantly different than the bad files plugin? Talking about the recognition process itself rather than the configurations available.

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [January 22, 2018, 2:07am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/4 "2018-01-22T02:07:43Z")

</div>

Hmm… I’m not an expert on this, but it looks like a primary difference may be that beets-check can store checksums in the database. This can help you detect when another tool, or even your hardware, corrupts your files. The `badfiles` plugin doesn’t do that; it just runs off-the-shelf validation tools

---

<div class="post-metadata">

**Author:** ![firewater](https://avatars.discourse-cdn.com/v4/letter/f/e9a140/32.png) [@firewater](https://discourse.beets.io/u/firewater)\
**Post date:** [January 22, 2018, 2:20am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/5 "2018-01-22T02:20:20Z")

</div>

Thanks for that. It’s not something I’m interested in so I I’ll try the badfiles plugin instead.

---

<div class="post-metadata">

**Author:** ![dorade](https://avatars.discourse-cdn.com/v4/letter/d/b3f665/32.png) [@dorade](https://discourse.beets.io/u/dorade)\
**Post date:** [January 22, 2018, 6:23pm UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/6 "2018-01-22T18:23:48Z")

</div>

Badfies is great. If only I could find a checker for AAC files!

---

<div class="post-metadata">

**Author:** ![firewater](https://avatars.discourse-cdn.com/v4/letter/f/e9a140/32.png) [@firewater](https://discourse.beets.io/u/firewater)\
**Post date:** [January 26, 2018, 8:17am UTC](https://discourse.beets.io/t/bad-files-and-check-plugins/272/7 "2018-01-26T08:17:38Z")

</div>

I finally got around trying and this, but I get:

`badfiles: command not found: mp3val when validating file: [redacted]`

I tried specifying the location like this:

```
badfiles:
    command: C:/Users/[redacted]/mp3val/mp3val.exe

```

But it resulted on the same message.

I see nothing on the guide about how to to install mp3val (on Windows), so any help would be appreciated.
