转到 Linux 作为日常使用的操作系统之后遇到的一个意外的问题是电脑里存的那些 mp3 歌曲信息有很多在新的播放器如 Clementine、Amarok 中会显示为乱码。这里记录的是批量对 mp3 标签信息进行转码的操作。

参考 qiumh 的方法可以通过命令行操作批量对文件夹中 mp3 文件的标签进行转换。安装一个使用 Python 语言编写的软件包 mutagen,因为要用到其中的 mid3iconv 这个管理音乐文件元数据的工具。这个包已经包含在 openSUSE 的官方源里面了,直接安装即可,

zypper in python-mutagen

安装后直接使用 mid3iconv 操作 mp3 文件,指令格式如下,

mid3iconv -e gbk *.mp3

如果想转换当前目录及所有子目录下的所有 mp3,可以组合使用 Linux 的命令行指令,

find . -iname "*.mp3" -execdir mid3iconv -e gbk {} +

其中,-e gbk 参数意思是把 GBK 编码的标签转换为 Unicode 编码,本身是 Unicode 编码的就不转换。如果需要转换其他编码格式的文件就修改 gbk 为别的代号,如 Big5。应该绝大多数能找到的 mp3 标签都是以 GBK/GB18030 编码的,使用 -e gbk 来处理就可以了,当然你也可以使用 -e gb18030 来处理。

据说转换后的元数据为 2.4 版的 ID3v2,编码格式为 uft-16。不过它会同时用 Unicode 编码填满 D3v1, ID3v2, APEv2 标签,但是 ID3v1 又不支持中文的 Unicode 编码,所以转换后的 ID3v1 标签全是问号。所以最好加上 –remove-v1 参数,转换后删除 ID3v1 标签。

mid3iconv -e gbk --remove-v1 *.mp3

使用 openSUSE 内置文件管理器 Dolphin 打开存放音乐文件的文件夹,然后按 F4 键开启 Dolphin 内置的命令行工具,粘贴以下命令到其命令行运行,

find . -iname "*.mp3" -execdir mid3iconv -e gbk --remove-v1 {} +

就可以将该目录下所有的 mp3 文件的内置标签转换为 unicode 编码格式。转换速度还是挺快,我的电脑里的 8.2 GB 的数据处理了大约 10 分钟。当然并不是所有 mp3 文件都需要处理,这个时间仅仅是给个大略的参考。©

linux mp3 乱码,Linux 里 mp3 中文标签乱码的处理相关推荐

  1. dat文件打开乱码_5.2 实战1:解决在Linux下打开Windows汉字文本的乱码问题

    今天MK继续来分享linux的学习文章,今天讲的主要是实战部分. 1.实验环境:CentOS 7.5 现在系统默认使用的语言是汉语.(系统中必须安装好中文包). 2.在windows系统上编辑名字为& ...

  2. linux winscp 乱码,WinSCP无法登陆、乱码及关联Putty的设置

    无法登陆 WinSCP无法登陆linux,但却能ping通linux,多半是linux里没有安装或者开启SSH服务,请确保安装了ssh(apt-get instal ssh),然后确认ssh是否启动( ...

  3. linux tree显示乱码,Linux tree 命令乱码

    今天在执行Linux下的tree命令的时候,出现了乱码.上网查了一下说需要使用tree --charset ASCII,强制使用ASCII字符.这样确实可以输出正常了.但是我的环境里的LANG=US. ...

  4. 乱码 Linux,linux中文乱码【图文教程】

    虽然电脑已经很普遍了,但是一些年长的人对电脑的操作不是很熟悉,比如在使用win7系统时一旦遇到linux中文乱码 时就懵了,对于linux中文乱码 处理起来相对来说较简单,按照我们的步骤处理linux ...

  5. linux打开windows系统文本文档乱码解决方法

    标题linux打开windows系统文本文档乱码解决方法 vim新建一个文本文档,CTRL+C复制原文档所有字符,vim里插入模式CTRL+V解决.

  6. shell 调用securecrt_securecrt导入xshell 解决xshell、SecureCRT中文乱码 - Linux - 服务器之家...

    securecrt导入xshell 解决xshell.SecureCRT中文乱码 发布时间:2017-04-14 来源:服务器之家 一.解决xshell 中文乱码 在xshell命令行里面 输入: l ...

  7. linux mysql插入数据乱码_linux mysql数据库中文乱码

    mysql中文乱码 mysql是我们项目中非常常用的数据型数据库.但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况.下面就来介绍一下如何彻底解决数据库中文乱码情况. 1.中文乱码 1. ...

  8. linux u盘文件乱码,Linux系统下U盘汉字乱码的解决

    在Linux系统下发现U盘汉字乱码的解决方法如下: 一般用这条命令:mount -o iocharset=utf8 /dev/sdb /tmp/fat 如若不行可试如下命令:mount /dev/sd ...

  9. linux某些汉字乱码,Linux汉字乱码解决办法

    以下以fopen.fread和printf为参考,文件中包含汉字和字母(注意) 汉字   | Windows | Linux ----------------------- 1)ANSI   |  正 ...

  10. MySQL数据库乱码 - Linux下乱码问题解决

    前言 乱码问题是很让人抓狂的问题,下面我将记录一下Linux下MySQL乱码问题的解决方法. mysql在linux下乱码问题 一.操作 mysql默认字符集是latin1,但是我们大部分程序使用的字 ...

最新文章

  1. 使用elementui实现表单上传功能_elementUI实现自定义上传文件并携带参数
  2. WPF绘制自定义窗口
  3. MapReduce执行过程
  4. node 微信授权 获取openid
  5. Python爬虫实战(4):抓取淘宝MM照片
  6. 我月入过万,送着外卖写着诗
  7. R语言:ggplot2
  8. 由获取子元素的方法find和children所获
  9. 菜鸟入门Java语言学习六大要点
  10. 购物网站注册页面html,电商购物网站 - 实现注册
  11. docker查询镜像命令_Docker镜像相关命令
  12. 使用wmi显示rpc服务器不可用,详解WMI RPC 服务器不可用的解决方案
  13. 机器学习--支持向量机实战(三)完整版SMO算法实现
  14. 阶段1 语言基础+高级_1-3-Java语言高级_1-常用API_1_第7节 Arrays工具类_17_Arrays练习:字符串倒序...
  15. excel转word_excel怎么转word?常用方法合集,看你使用哪一种
  16. ESC/POS常用打印指令面向对象封装,PHP处理二维码定位,微信小程序蓝牙打印
  17. ESP32 系列之 ESP-IDF 官方构建方案
  18. Unity-点击屏幕进行移动
  19. 利用运放实现信号的平移
  20. 阿里云邮箱短信验证和阿里云手机短信发送

热门文章

  1. 在linux系统下更新火狐浏览器
  2. 集群部署时的分布式 Session 如何实现?
  3. 以下是MySQL增删改查的常用语句汇总
  4. java毕业生设计一中体育馆管理系统计算机源码+系统+mysql+调试部署+lw
  5. 【ES入门】使用 apifox 测试elastic search遇到的问题
  6. Docker腾讯云加速源配置+数据库配置
  7. ArcGIS打开ArcToolbox闪退解决方法
  8. 【小白的CFD之旅】07 CFD常识
  9. 导出地图 | EXCEL批量导出ShapeFile、GeoJSON、KLM等格式
  10. 我的C++实践(10-15)