zoukankan      html  css  js  c++  java
  • 给MP3音乐文件写ID3信息和专辑封面

    1.下载并引入ID3

    连接: https://files.cnblogs.com/xdoudou/ID3.rar

    2.代码示例

    string filename = "F:\\Sleep Away.mp3";
    
    string cover = "F:\\cover.jpg";
    
    // 加载MP3 ID3Info info = new ID3Info(filename, true);
    
     
    
     
    
    //重要如果ID3保存时引发 未引用对象到实例 异常 一定要加入下面两行代码
    
    //设置是否开启ID3标签 true为开启 info.ID3v2Info.HaveTag = true;
    
    //设置ID3版本,值有3和4  (ID3V2一般是3) info.ID3v2Info.SetMinorVersion(3);
    
    /////////////////////////////////////////////////////////////////////
    
     
    
    // 创建新封面 AttachedPictureFrame pic = new AttachedPictureFrame(    FrameFlags.FileAlterPreservation, "cover.jpg", TextEncodings.UTF_16, "",    AttachedPictureFrame.PictureTypes.Other,    new System.IO.MemoryStream(File.ReadAllBytes(cover)));
    
    //注意上面创建新封面的时候 第一个参数要填 FrameFlags.FileAlterPreservation  才能兼容大部分播放设备 例如WP7 如果填 FrameFlags.Compression 则不支持
    
    // 添加新封面到MP3中 info.ID3v2Info.AttchedPictureFrames.Add(pic);
    
     
    
    // 设置其它属性 info.ID3v2Info.SetTextFrame("TIT2", "歌曲标题");
    
    info.ID3v2Info.SetTextFrame("TPE1", "艺术家");
    
    info.ID3v2Info.SetTextFrame("TALB", "专辑");
    
    info.ID3v2Info.SetTextFrame("COMM", "备注");
    
    // 保存到MP3中info.Save();

    通过别人做好的类, 其实我们的工作已经非常简单, 有几点要说明一下:

    1. 在 XP 中 MP3 文件的属性是 ID3v1 的版本, 在 win 7 是 ID3v2 的版本;

    2. 更多的属性列表, 可以到 ID3 官方查看;

    3. 在读取 ID3 属性的时候应该先判断是否存在 ID3 属性;

    4. 专辑封面可以添加多张, 但播放器一般只会读取第一张, 所以要移除掉其它的;

    原文URL:http://www.cnblogs.com/anakin/archive/2011/10/26/2224647.html

  • 相关阅读:
    springBoot单元测试-模拟MVC测试
    springBoot单元测试-基础单元测试
    java使用HttpClient 发送get、pot请求
    定时任务框架-quartz 时间配置
    定时任务框架-quartz
    java接入极光推送
    实现自动解析properties文件并装配到Bean
    Redis-NoSql 概述,NoSql的优点
    springboot
    JAVA常见集合类
  • 原文地址:https://www.cnblogs.com/xdoudou/p/3059641.html
Copyright © 2011-2022 走看看