convert: Embed cover art from original files
- Dominant language
- Python
- Stars
- 15.7k
- Forks
- 2.1k
- Avg merge
- 4d 21h
- Merged PRs (30d)
- 31
Description
### Use case
I'm trying to use beets to sync/transcode my music library to my phone. I have a large music library with many FLAC files, which I'd like to transcode. The source files' tags are all clean, **album covers are embedded into the source files**.
### Solution
I'd like to use the convert plugin to transcode my music library to my phone. This is the config I am using:
```yaml
convert:
never_convert_lossy_files: yes
dest: /mnt/mtp/SD/Music
embed: yes
```
The issue is that `embed=yes` does not re-embed the cover art from the source files. So the transcoded files end up without embedded cover art, which is not very intuitive. It would be more logical if beets (the convert plugin) would embed the same cover art from the source file to the transcoded file, if no other cover art is present.
This has also been discussed here: https://discourse.beets.io/t/convert-plugin-artwork-not-embedded/1064
### Alternatives
For people who only keep their cover art in the tags there is no actual workaround. Especially not if beets is only used for transcoding.
Contributor guide
Research direction
Start by reading the convert plugin's handling of the embed option and how it obtains artwork for transcoded files. Reproduce the configuration with a source file whose cover art is embedded, then trace the conversion path. Done means the transcoded file retains the source artwork when no other artwork is supplied, with coverage for this behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100