C语言 解析MP3信息

这段C语言代码用于从MP3文件的末尾读取并打印歌曲的元信息,包括TAG、歌曲名、歌手、专辑、年份、备注、风格、音轨等。程序首先定义了一个结构体来存储这些信息,然后打开文件并使用fseek和fread函数从文件末尾读取最后128字节的数据。
摘要由CSDN通过智能技术生成

/*
MP3的基本歌曲信息存在了MP3文件的最后128个字节里
其结构是:
 1-3 TAG 标签)
 4-33 歌曲名(Take Me To Your Heart )
 34-63 歌手名(Michael Learns to Rock)
 64-93 专辑名(Take Me to Your Heart)
 94-97 年份(2004)
 98-125 备注()
 126 保留位,这时为0,则说明有音轨,下一位就是音轨
 127 保留位,为音轨(第几首歌)(OC)
 128    保留位 (风格)(66)
*/

#include<stdio.h>
#include<stdlib.h>

typedef struct  MUSIC_TITAL_INFO
{
 char ID3v1TAG[3];  //TAG
 char MUSIC_NAME[30]; //存储标题信息
 char Artist[30];   //存储歌手信息
 char Album[30];   //存储专辑信息
 char YEAR[4];   //存储年代信息
 char Comments[28];  //存储备注信息,28个字节(有时为30字节)
 char Genre;    //存储音乐风格信息,保留位,1个字节
 char Reserved;   //保留位,1个字节(有时没有意思
 char Track;    //音轨(曲号)保留位,1个字节(有时没有)
}MUSIC;

void main()
{
 MUSIC m;
 FILE *fp;
 char ch;
 if((fp=fopen(

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值