LyricsTag
Contents
[
Hide
]
LyricsTag class
Represents Lyrics3 v2.00 metadata. Please find more information at http://id3.org/Lyrics3v2.
public sealed class LyricsTag : CustomPackage
Constructors
Name | Description |
---|---|
LyricsTag() | Initializes a new instance of the LyricsTag class. |
Properties
Name | Description |
---|---|
AdditionalInfo { get; set; } | Gets or sets the additional information. This value is represented by the INF field. |
Album { get; set; } | Gets or sets the album name. This value is represented by the EAL field. |
Artist { get; set; } | Gets or sets the artist name. This value is represented by the EAR field. |
Author { get; set; } | Gets or sets the author. This value is represented by the AUT field. |
Count { get; } | Gets the number of metadata properties. |
Item { get; } | Gets the MetadataProperty with the specified name. |
Keys { get; } | Gets a collection of the metadata property names. |
Lyrics { get; set; } | Gets or sets the lyrics. This value is represented by the LYR field. |
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. |
Track { get; set; } | Gets or sets the track title. This value is represented by the ETT field. |
Methods
Name | Description |
---|---|
virtual 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. |
Get(string) | Gets the value of the field with the specified id. |
GetEnumerator() | Returns an enumerator that iterates through the collection. |
Remove(string) | Removes the field with the specified id. |
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. |
Set(LyricsField) | Adds or replaces the specified Lyrics3 field. |
virtual 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. |
ToList() | Creates a list from the package. |
virtual 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
Lyrics3 v2.00 uses fields to represent information. The data in a field can consist of ASCII characters in the range 01 to 254 according to the standard. As the ASCII character map is only defined from 00 to 128 ISO-8859-1 might be assumed. Numerical fields are 5 or 6 characters long, depending on location, and are padded with zeroes.
Learn more
Examples
This code sample shows how to read the Lyrics tag from an MP3 file.
using (Metadata metadata = new Metadata(Constants.MP3WithLyrics))
{
var root = metadata.GetRootPackage<MP3RootPackage>();
if (root.Lyrics3V2 != null)
{
Console.WriteLine(root.Lyrics3V2.Lyrics);
Console.WriteLine(root.Lyrics3V2.Album);
Console.WriteLine(root.Lyrics3V2.Artist);
Console.WriteLine(root.Lyrics3V2.Track);
// ...
// Alternatively, you can loop through a full list of tag fields
foreach (var field in root.Lyrics3V2.ToList())
{
Console.WriteLine("{0} = {1}", field.ID, field.Data);
}
}
}
See Also
- class CustomPackage
- namespace GroupDocs.Metadata.Formats.Audio
- assembly GroupDocs.Metadata