只需要把mp3标签里面用gbk、gb18030、big5等编码存储的中文内容修改为Unicode编码,那么基本上所有Linux下的播放器都能正常识别mp3标签了。

关于mp3编码的转换,介绍一个工具----Mutagen,假如你安装了Quod Libet,那么这个包已经安装上去了。如果没有,执行下列命令就可以了。

sudo apt-get install python-mutagen

工具的使用方法

#转换mp3文件所在的目录下,执行:

mid3iconv -e gbk *.mp3

#转换当前目录下所有mp3文件(包括子目录)执行:

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

如果觉得每次都要输入命令很麻烦,也可以建立个shell脚本来批量转换:

新建文件,写入:

#!/bin/sh

IFS=""

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

然后把文件保存,拷贝到想要转换的目录下,执行就可以了(执行脚本的命令为 #sh filename)。

因为现在在网上下载的mp3绝大多数采用的都是gbk/gb18030编码,-e gbk

参数是代表把gbk编码的标签转换为Unicode编码,假如mp3标签本身是Unicode编码的就不转换。如果需要转换其他编码的文件可以自行修改

gbk参数,比如改为gb18030、big5。转换后为的mp3标签类型为ID3v2 2.4,编码格式为UTF-16。

到了这一步之后,在Linux下使用所有播放器估计都没有什么问题了。

下面我们回过头来看看,追溯一下根源,为什么这些mp3原来在Windows下用

Media

Player怎么都是显示正常的呢?难道是Linux不如Windows吗?其实这个道理很简单,Firefox同样也打不开很多IE轻松就能打开的页

面,能说明Firefox不如IE吗?知情的人一看就明白了。Windows为了它所谓的兼容性,完全无视规范,自定规则,貌似它的软件兼容性很好,其实

到头来,毁的还是用户,从众多的不符合W3C规范的网页和现在铺天盖地的mp3标签

再转一个更牛的

转换文件名由GBK为UTF8

sudo apt-get install convmv

convmv -r -f cp936 -t utf8 –notest –nosmart *

批量转换src目录下的所有文件内容由GBK到UTF8

find src -type d -exec mkdir -p utf8/{} ;

find src -type f -exec iconv -f GBK -t UTF-8 {} -o utf8/{} ;

mv utf8/* src

rm -fr utf8

转换文件内容由GBK到UTF8

iconv -f gbk -t utf8 $i > newfile

转换 mp3 标签编码

sudo apt-get install python-mutagen

find . -iname “*.mp3” -execdir mid3iconv -e GBK {} ;

linux mp3 乱码,linux下mp3乱码终极解决方案相关推荐

  1. linux+wine乱码,Ubuntu下Wine乱码解决方法与中文支持

    由于这段时间安装了Ubuntu 9.04 x64的系统,也碰到了很多问题,收集起来以便方便使用 安装 wine ubuntu 官方自带了 wine , 但是推荐用 winehq 官方提供的最新版本 w ...

  2. linux pstree乱码,pstree下显示乱码解决

    今天使用pstree想查看一下信息,结果发现: [[email protected] ~]# pstree init忖?atd 忖crond 忖events/0忖?aio/0 ?         忖k ...

  3. 【linux】ubuntu11.10下各种问题以及解决方案

    一,快捷键 显示桌面:Ctrl+Alt+D 最小化窗口:Alt+F9 最大化窗口:Alt+F10 关闭当前窗口:Alt+F4 二.Ubuntu NetBeans中文乱码解决办法 在$JAVA_HOME ...

  4. linux 连接wifi不稳定,rtl8188ce 无线网不稳定终极解决方案 - 哆啦比猫的技术瞎扯 - Arch Linux · ドラえもん · 实时绘制...

    先容我废话 据说 realtek 的无线网卡就这个系列问题多多.以前连接不太稳定,但不会频繁掉线就凑活用了.自从不知哪次升级以来,掉线越来越频繁,最后已经发展到 10秒必掉 了,以至于要上网就得拼命到 ...

  5. Linux自动亮度,ubuntu亮度无法自动调节终极解决方案

    关于ubuntu亮度无法自动调节的问题,纠结了我快两年,主要是自己懒,写了个脚本来调节亮度,不过还是稍显不便.近日兴起折腾了一番,终于找到问题根结了. There are many ways to c ...

  6. windows7 64位下安装tensorflow终极解决方案

    首先明确一个概念,pycharm中安装的包在cmd中不一定会生效 例如,pycharm中安装了pip是9.0的,在cmd中输入pip -V却显示8.0 安装这个机器学习框架需要注意如下事项: 一.wi ...

  7. PNG图在IE6下透明的终极解决方案

    现在做很多页面,比如阴影,或很多情况要用到透明图,GIF图一般会有很多锯齿, 用PNG图吧,效果到是还好.Firefox和IE7以上版本都 支持PNG透明,但IE6缺会显示灰白. 百度,google搜 ...

  8. oracle export utf-8,Linux操作系统下终端乱码的终极解决方案 export LANG=zh_CN.UTF-8 export LANG=en_US...

    在使用linux的终端工具SecureCRT的时候,每次提交SVN想输入中文日志的时候总是输不了中文. svn ci -m "" 这时候两个引号之间就是没有办法输入中文. 后来跟其 ...

  9. oracle export utf-8,Linux操作系统下终端乱码的终极解决方案 export LANG=zh_CN.UTF-8 export LANG=en...

    在使用linux的终端工具SecureCRT的时候,每次提交SVN想输入中文日志的时候总是输不了中文. svn ci -m "" 这时候两个引号之间就是没有办法输入中文. 后来跟其 ...

最新文章

  1. R 循环中将变量作为对象名
  2. [Ruby01]Class, Module, Object,Kernel的关系
  3. linux下Makefile中包含有shared library动态链接库文件时候的简单例子
  4. java宝典app_java宝典安卓版_手机java宝典V2.0下载(暂未上线)_预约_飞翔下载
  5. c#操作mysql 执行语句_c# 数据库编程(通过SqlCommand 执行DML语句)
  6. php如何识别快手广告预览,快手广告如何进行精准投放?快手官方广告位有哪些...
  7. 解决:'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
  8. [EMU8086]基于8086的汇编语言学习
  9. linux中波浪号代表什么_Linux有什么吸引力,在程序员中如此受欢迎?
  10. Linux进度条的实现
  11. python进程池和线程池_python自带的进程池及线程池
  12. golang中字符串常用的命令
  13. JavaScript 逻辑与() 与 逻辑或(||) 运算规则
  14. java中一行代码实现百分数计算
  15. 分治策略找第K小元素
  16. 通向财务自由之路-笔记总结
  17. 计算机 管理 mmc 注册表,我的注册表没有MMC文件
  18. DoNet学习-WebForm视频教程(30集)
  19. 项目实战:ASP.NET:B/S结构 个人空间相册、照片上传下载系统
  20. 移动端 简易的table表格

热门文章

  1. java.lang.NoSuchFieldError错误
  2. 抽奖活动设计 php,如何设计高并发下的抽奖?
  3. 口袋云台拆机微型防抖云台硬件结构解析拆机硬件结构开源云台svpwm控制simple云台storm防抖原理陀螺仪多旋翼吊舱飞控无刷电机FOC
  4. 画论38 董其昌《画禅室随笔》
  5. Qt模仿学习通网页部分页面
  6. 2022漏洞趋势报告及解决方案-新冠让程序员写bug变多了?
  7. RepRapPro赫胥黎的调试之一
  8. 资源管理器有共享磁盘但CAD等软件无法访问共享磁盘
  9. 基于AidLux平台的医院进出口人流量统计案例开发与测试
  10. Java中0xFF是什么意思?计算机的原码、补码和反码