使用getID3向.mp3文件写入ID3v2 TXXX标签

使用getID3向.mp3文件写入ID3v2 TXXX标签

目录

简介

最近有一个项目需要实现将canvas画板的笔迹记录写入在mp3的ID3v2的TXXX标签
- getID3官网
- ID3-Wikipedia


ID3标签

ID3,一般是位于一个mp3文件的开头或末尾的若干字节内,附加了关于该mp3的歌手,标题,专辑名称,年代,风格等信息,该信息就被称为ID3信息,ID3信息分为两个版本,v1和v2版。 其中:v1版的ID3在mp3文件的末尾128字节,以TAG三个字符开头,后面跟上歌曲信息。 v2版一般位于mp3的开头,可以存储歌词,该专辑的图片等大容量的信息。 —— [ 百度百科 ]

说明

> 笔迹数据为具有一定长度的字符串,而TXXX标签就是用来保存文本数据

实现代码

将笔迹数据写入.mp3文件:

require_once('./getid3/write.id3v2.php');
$tagwriter = new getid3_write_id3v2;
//文件路径
$tagwriter->filename = './test.mp3';
//标签内容
$TagData = array(
    'TXXX' => array(
        array(
            'encodingid' => 1,
            'description' => 'TXXX',
            'data' => '笔迹数据'))
            );
$tagwriter->tag_data = $TagData;
//使用WriteID3v2方法写入
if ($tagwriter->WriteID3v2()) {
    echo 'Successfully wrote tags<br>';
    if (!empty($tagwriter->warnings)) {
        echo 'There were some warnings:<br>' .implode('<br><br>', $tagwriter->warnings);
    }
} else {
    echo 'Failed to write tags!<br>' . implode('<br><br>', $tagwriter->errors);
}

读取.mp3文件TXXX标签:

require_once('./getid3/getid3.php');
$filename = './test.mp3';
$getID3 = new getID3;
$ThisFileInfo = $getID3->analyze($filename);

$map['filename']=$ThisFileInfo['filename'];
$map['TXXX']=$ThisFileInfo['id3v2']['TXXX'][0]['data'];

exit(json_encode($map));

操作成功后的信息读取

成功后的数据输出

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alex-Leung

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值