GoLang id3_set_tag

request it (231)
GoLang replacement for PHP's id3_set_tag [edit | history]

Do you know a GoLang replacement for PHP's id3_set_tag? Write it!

PHP id3_set_tag

PHP original manual for id3_set_tag [ show | php.net ]


(PECL id3 >= 0.1)

id3_set_tagUpdate information stored in an ID3 tag


bool id3_set_tag ( string $filename , array $tag [, int $version = ID3_V1_0 ] )

id3_set_tag() is used to change the information stored of an ID3 tag. If no tag has been present, it will be added to the file.



The path to the MP3 file

Instead of a filename you may also pass a valid stream resource


An associative array of tag keys and values

The following keys may be used in the associative array:

Keys in the associative array
key possible value available in version
title string with maximum of 30 characters v1.0, v1.1
artist string with maximum of 30 characters v1.0, v1.1
album string with maximum of 30 characters v1.0, v1.1
year 4 digits v1.0, v1.1
genre integer value between 0 and 147 v1.0, v1.1
comment string with maximum of 30 characters (28 in v1.1) v1.0, v1.1
track integer between 0 and 255 v1.1


Allows you to specify the version of the tag as MP3 files may contain both, version 1.x and version 2.x tags

Return Values

Returns TRUE on success or FALSE on failure.


Example #1 id3_set_tag() example

= array(
"title" => "Re:Start",
"artist" => "Re:\Legion",
"comment" => "A nice track"
$result id3_set_tag"path/to/example.mp3"$dataID3_V1_0 );
if (
$result === true) {
"Tag successfully updated\n";

If the file is writable, this will output:

Tag successfully updated


Note: Currently id3_set_tag() only supports version 1.0 and 1.1.

See Also