如何在Python中编辑视频ID3标签?
我最近在慢慢写一个小项目,想做一个可以编辑电影、电视剧和音乐的ID3标签的工具,这个工具可以批量处理我iTunes库里的文件。我在找到一些ID3标签编辑器后,开始用Python设计这个工具的界面,链接在这里:http://wiki.python.org/moin/UsefulModules#ID3Handling
不过,当我准备搭建真正的ID3标签编辑器时,我发现页面上的库,或者我找到的其他库,比如eyeD3,都无法处理实际的电影文件。我已经在这个Python应用上投入了很多精力,希望有人能告诉我以下三件事中的一件(如果没有,我就得转向Java了,之前的帖子说Java有一个处理mp4文件ID3标签的库):
有没有什么库或包可以用来编辑电影的ID3标签(我找到的绝大多数资料都是针对音频的)特别是MP4文件。我得说,eyeD3在处理mp3文件时真的很好用,而且非常简单,所以越像eyeD3的越好。
有没有一种类似文件读取器的库,可以让我读取整个文件,修改ID3标签,然后再写回去。我试着用notepad++打开MP4文件,发现文件的第一行是ID3标签,但我无法解码。如果你们知道怎么用Python手动编辑这些内容,那就太好了。
或者
- 有没有其他语言的脚本,我可以用Python来执行(不过我目前只会Java和Python),但这个脚本必须得非常简单,比如:edit_MP4_Tag(filename, title, artist, etc...),我怀疑这样的东西是否存在。
提前感谢任何帮助。
2 个回答
虽然这个问题已经过了很久,但如果你使用的是OSX系统,可以通过appscript来直接通过iTunes修改媒体文件的元数据,这个方法很简单,不过速度可能会慢一些。
这个方法的好处在于,它适用于任何类型的媒体文件,而且你还可以修改一些专门针对iTunes的元数据。
如果不想用这个方法,你也可以通过子进程或类似的方式使用Atomic Parsley。
首先,我对Python了解不多,所以我就简单说说我的看法,因为还没有人回答你。
其次,如果你知道字符串中id3的位置,那就可以开始了。你需要从头写代码,因为在Python中关于电影的id3处理的资料并不多。
这都和字符串和子字符串有关。你需要打开文件,提取你需要的子字符串,然后通过尝试和失败来修改它。一个很好的例子可以在这里找到,是Prashant Khandelwal做的。
祝你好运。