ID3V1Tag

ID3V1Tag class

Represents an ID3v1 tag. Please find more information at https://en.wikipedia.org/wiki/ID3#ID3v1.

public sealed class ID3V1Tag : ID3Tag

Constructors

Name Description
ID3V1Tag() Initializes a new instance of the ID3V1Tag class.

Properties

Name Description
Album { get; set; } Gets or sets the album. Maximum length is 30 characters.
Artist { get; set; } Gets or sets the artist. Maximum length is 30 characters.
Comment { get; set; } Gets or sets the comment. Maximum length is 30 characters.
Count { get; } Gets the number of metadata properties.
GenreValue { get; } Gets or sets the genre identifier.
Item { get; } Gets the MetadataProperty with the specified name.
Keys { get; } Gets a collection of the metadata property names.
MetadataType { get; } Gets the metadata type.
PropertyDescriptors { get; } Gets a collection of descriptors that contain information about properties accessible through the GroupDocs.Metadata search engine.
Title { get; set; } Gets or sets the title.
TrackNumber { get; set; } Gets or sets the track number. Presented in a ID3v1.1 tag only.
override Version { get; } Gets the ID3 version. It can be ID3 or ID3v1.1
Year { get; set; } Gets or sets the year. Maximum length is 4 characters.

Methods

Name Description
AddProperties(Func<MetadataProperty, bool>, PropertyValue) Adds known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.
Contains(string) Determines whether the package contains a metadata property with the specified name.
virtual FindProperties(Func<MetadataProperty, bool>) Finds the metadata properties satisfying the specified predicate. The search is recursive so it affects all nested packages as well.
GetEnumerator() Returns an enumerator that iterates through the collection.
virtual RemoveProperties(Func<MetadataProperty, bool>) Removes metadata properties satisfying the specified predicate.
virtual Sanitize() Removes writable metadata properties from the package. The operation is recursive so it affects all nested packages as well.
SetProperties(Func<MetadataProperty, bool>, PropertyValue) Sets known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well. This method is a combination of AddProperties and UpdateProperties. If an existing property satisfies the predicate its value is updated. If there is a known property missing in the package that satisfies the predicate it is added to the package.
UpdateProperties(Func<MetadataProperty, bool>, PropertyValue) Updates known metadata properties satisfying the specified predicate. The operation is recursive so it affects all nested packages as well.

Remarks

ID3(v1) tag is a small chunk of extra data at the end of MP3. Please find more information at http://id3.org/ID3v1.

Learn more

Examples

This code sample shows how to read the ID3v1 tag in an MP3 file.

using (Metadata metadata = new Metadata(Constants.MP3WithID3V1))
{
    var root = metadata.GetRootPackage<MP3RootPackage>();

    if (root.ID3V1 != null)
    {
        Console.WriteLine(root.ID3V1.Album);
        Console.WriteLine(root.ID3V1.Artist);
        Console.WriteLine(root.ID3V1.Title);
        Console.WriteLine(root.ID3V1.Version);
        Console.WriteLine(root.ID3V1.Comment);

        // ...
    }
}

See Also