使用Mutagen将专辑封面嵌入MP4文件中 [英] Embedding album cover in MP4 file using Mutagen

查看:381
本文介绍了使用Mutagen将专辑封面嵌入MP4文件中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望能够使用诱变剂将专辑封面添加到文件中,但是当我将其添加为文件时,它会返回:

I'd like to be able to add album cover into the file using mutagen, however when I add it as a file it returns with:

File "D:\Download\pandora\renamingMETAEFF.pyw", line 71, in <module>
    meta['covr'] = image
File "C:\Users\AMD\AppData\Local\Programs\Python\Python35\lib\site-packages\mutagen\_file.py", line 67, in __setitem__
    self.tags[key] = value
File "C:\Users\AMD\AppData\Local\Programs\Python\Python35\lib\site-packages\mutagen\mp4\__init__.py", line 357, in __setitem__
    self._render(key, value)
File "C:\Users\AMD\AppData\Local\Programs\Python\Python35\lib\site-packages\mutagen\mp4\__init__.py", line 371, in _render
    return render_func(self, key, value)
File "C:\Users\AMD\AppData\Local\Programs\Python\Python35\lib\site-packages\mutagen\mp4\__init__.py", line 732, in __render_cover 
    b"data", struct.pack(">2I", imageformat, 0) + cover))

TypeError: can't concat bytes to str

相关的代码段是这样的:

The relevant piece of code is this:

from mutagen.mp4 import MP4

image = jpgname + '.jpg'
meta['\xa9nam'] = song
meta['\xa9ART'] = artist
meta['\xa9alb'] = album
meta = MP4(songPath)
meta['covr'] = image
meta.save()

其余的元数据可以很好地工作,但是图像部分完全破坏了整个代码.

The rest of the metadata works perfectly fine, however the image part completely breaks the whole code.

推荐答案

来自诱变文档:

MP4 meta'covr'–封面插图,MP4Cover对象列表(标记为strs).

MP4 meta 'covr' – cover artwork, list of MP4Cover objects (which are tagged strs).

MP4Cover图像格式–图像格式(FORMAT_JPEG或FORMAT_PNG)

MP4Cover imageformat – format of the image (either FORMAT_JPEG or FORMAT_PNG)

from mutagen.mp4 import MP4, MP4Cover

video = MP4("test.mp4")

video["\xa9nam"] = "Test1"
video["\xa9ART"] = "Test2"
video["\xa9alb"] = "Test3"

with open("cover.jpg", "rb") as f:
    video["covr"] = [
        MP4Cover(f.read(), imageformat=MP4Cover.FORMAT_JPEG)
    ]

video.save()

这篇关于使用Mutagen将专辑封面嵌入MP4文件中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆