使用getID3向mp3文件写入ID3v2标签
程序员文章站
2024-04-05 12:29:06
...
使用getID3向.mp3文件写入ID3v2标签
目录
- 使用getID3向mp3文件写入ID3v2标签
- 目录
- 简介
- ID3标签
- 说明
- 实现代码
- 操作成功后的信息读取
简介
最近有一个项目需要实现将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
';
if (!empty($tagwriter->warnings)) {
echo'There were some warnings:
' .implode('
', $tagwriter->warnings);
}
} else {
echo'Failed to write tags!
' . implode('
', $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));
操作成功后的信息读取
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });以上就介绍了使用getID3向mp3文件写入ID3v2标签,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。